Enhancement: Faster dashboard and reports on sites with many donations
Enhancement: New developer hooks fire when imports, exports, and cleanup operations complete, and clearing the activity log now leaves an audit entry
Enhancement: Clearer error messages when cancelling, pausing, resuming, or updating subscriptions
Fix: Ending a campaign now cancels or redirects all of its active recurring donations, no matter how many there are
Fix: Restored the donate button’s filled/outline styles and the campaign image block’s border, shadow, and duotone settings
Fix: Restored donor card rendering on the donor wall
Fix: Improved PHP 8.0 compatibility by aligning all plugin code and bundled dependencies with Mission’s minimum supported PHP version
Fix: Weekly recurring donations now show as recurring in admin donation lists and are accepted by the REST API frequency filter
Tweak: Added save_silent() and recompute_aggregates() model methods for developers
Tweak: REST API not-found errors now use entity-specific error codes (e.g. campaign_not_found)
Tweak: The subscriptions and donor wall list endpoints now validate page and per_page ranges like all other endpoints
1.3.0
New: One-click migration from GiveWP, bringing over donors, donations, campaigns, and subscriptions with a pre-flight scan, live progress, and a full undo (Tools > Migration)
New: Outgoing webhooks. Notify external services when donations, subscriptions, donors, or campaigns change, with signed payloads, automatic retries, and a delivery log (Tools > Webhooks)
New: Choose the URL slug used for campaign pages (Settings > General). Fresh installs automatically avoid clashing with an existing “campaigns” page
Enhancement: The donation form shortcode now inherits the campaign’s configured form settings when campaign_id is set
Fix: Mission now works on SQLite-based WordPress installs (WordPress Playground, WP Studio) by removing MySQL-only SQL from campaign, subscription, reporting, cleanup, and activity log queries
Fix: The “delete test data” tools now also remove the meta rows belonging to deleted test transactions, donors, and subscriptions (the cleanup previously referenced the wrong meta column and silently skipped them)
Tweak: Renamed all developer hooks (actions and filters) from missiondp_ to mission_. If you have custom code hooking into Mission, update the hook names. Scheduled task hooks, options, and database tables are unchanged.
Tweak: REST API parameters that declare allowed values or numeric ranges now reject invalid input with a clear 400 error instead of silently accepting it
1.2.0
New: Added a data import tool for donors, transactions, campaigns, subscriptions, and dedications, with CSV and JSON support
New: Preview and validate your file before importing, with per-row warnings and the choice to skip or update existing records
New: Large imports run in the background so they don’t time out
New: Mission is now fully translatable and ships with a complete Spanish (es_ES) translation
New: Every block now has a shortcode equivalent, so Mission can be used with page builders like Elementor and Bricks and in the Classic Editor
Enhancement: Improved support for international currencies, with correct amounts, fees, and decimals for currencies like the Japanese yen and Kuwaiti dinar
Enhancement: Donation minimums now follow Stripe’s per-currency minimums, with clearer messages when an amount is too low
Enhancement: The Dedications export now includes a Charge ID column so dedications can be matched back to their transactions when re-imported
Enhancement: The activity log now shows who ran an import and how many records were imported or updated
Enhancement: Improved the donation form layout on small screens and in narrow spaces like sidebars
Tweak: Updated the currency list to match the currencies Stripe currently supports
Tweak: Internal code quality and maintainability improvements
1.1.7
New: Connect multiple Stripe accounts, mark one as the default, and choose per donation form which account receives donations
New: Added an “Edit Campaign” link to the admin bar when viewing a campaign on the frontend
Enhancement: Tools > Status now lists every connected Stripe account instead of only the default one
1.1.6
Enhancement: Expanded the country dropdown to the full ISO 3166-1 list so any country is selectable
Fix: Fixed the plugin update entry in the activity log to show the correct new version
The full changelog for earlier releases is available on GitHub.