Project

General

Profile

Actions

{{last_updated_at}} by {{last_updated_by}}

CiviCRM Launch Checklist

  • Megaphone Monitoring extension is installed.
  • AuthX is disabled for basic auth with cv api4 Setting.set '{"values":{"authx_header_cred":""}}' (see #7804).
  • Enable advanced logging if desired
  • Database tables are all collated with UTF8MB4 (especially inherited sites)
  • Checksum expiration has been discussed with the client, and ideally set to 90 days if applicable.
  • (Classic Authorize.net, not using the authnet extension): Authorize.Net postback URL is set (if recurring contributions are enabled)
  • (Classic Authorize.net, not using the authnet extension): Ensure Auth.Net isn't sending its own receipt (unless desired): https://support.authorize.net/authkb/index?page=content&id=A54&actp=LIST
  • Certain scheduled jobs are turned on. Always enable the following, and others on a component-by-component basis:
    • Clean-up Temporary Data and Files
    • Check bounces
    • Disable expired relationships
    • Rebuild Smart Group Cache
  • Final payment processor is enabled on all contribution/event pages, dummy processor is disabled
  • Bounce address is set and tested
  • If the bounce address is GMail, filters to avoid bounces being classified as spam are added (see here)
  • SPF records are added/tested (Unnecessary with Amazon SES: See here)
  • PTR record exists
  • Default organization name/address is filled in
  • "View public CiviMail content" permission is turned on for anonymous users.
  • Geocoding is turned on
  • Geocoding scheduled job has parameters set (if enabled): geocoding = 1, optionally parse = 1, throttle = 1
  • Outbound mail settings are tested
  • Ensure that all donation pages notify a person on staff when a donation is made (or confirm this isn't wanted). You can either CC the receipt, or set notifications at the profile level.
  • Households are disabled if unused
  • Mailing header and footer are disabled (assuming the required tokens are in the mailing template)
  • Check Drupal permissions to ensure that administrator role has all permissions - especially if non-default modules (CiviCampaign, CiviPledge, CiviGrant) were enabled, or an upgrade happened between the start of the project and launch.
  • domain is set on the loopback, 127.0.0.1, if possible. This might affect the CiviCRM News dashlet.
  • Determine that there's an adequate backup regimen (esp. for inherited sites)
  • Ensure the PHP and MySQL timestamps match. With Wordpress, do NOT use this. Instead set: wp option set timezone_string America/New_York. Note that this must be done per-site on multi-site: wp --url=http://example.org/site2 option set timezone_string America/New_York.
  • Also: This does NOT fix wp-cli, so use wget for cron, or better yet, use the patched civicrm.php that I have in the wp-cli git package.
  • Set the "canonical site" value for the test/dev sites in crm.megaphonetech.com.
  • Maintenance/support contracts in place if needed

Updated by Jon Goldberg 7 months ago · 10 revisions