Charitable Documentation

Learn how to make the most of Charitable with clear, step-by-step instructions.

Automation Connect 2.0

Automation Connect turns every donation, campaign event, or form submission into a real-time trigger that sends data to any app or service via webhooks. Connect Charitable with Zapier, Make.com, Slack, HubSpot, Mailchimp, n8n, Pabbly Connect, and thousands of other platforms – no developer required.

Requirements: Pro/Elite plan and Charitable Pro 1.8.13+.

Note: If you are using Charitable Automation 1.x, we have the documentation available here.


Key Features (vs 1.x version)

  • Trigger webhooks on 17 donation, campaign, and recurring-donation events
  • Filter deliveries with conditional logic across 11 criteria fields (donor, donation, campaign, form data)
  • Customize the payload with 80+ available data fields covering donor, campaign, donation, and gateway details
  • Sign every outgoing request with HMAC-SHA256 for endpoint security
  • Send test payloads and inspect delivery responses directly from the editor
  • Start quickly with 8 pre-built platform templates (Zapier, Make.com, Slack, HubSpot, Mailchimp, n8n, Pabbly Connect, and a blank canvas)
  • Retry failed deliveries automatically via WordPress Action Scheduler
  • Manage all subscriptions from a central dashboard in the Charitable admin

Why Use Automation Connect?

Charitable Automation Connect replaces manual data entry and one-off custom integrations with a single, flexible webhook system. Instead of writing custom code every time you want to sync donor records, notify a Slack channel, or add contacts to a CRM, you configure a subscription once and it runs automatically on every matching event.


See It In Action


Requirements

  • Charitable Pro 1.8.13 or later
  • Active Charitable Pro license (Pro plan or higher)
  • WordPress 6.2 or later
  • PHP 7.4 or later

Getting Started

Installation and Activation

  1. Log in to your WordPress dashboard and go to Charitable > Extensions.
  2. Locate Automation Connect and click Activate.
  3. Once active, a new Automation item appears in the Charitable admin menu.

Creating Your First Subscription

  1. Go to Charitable > Automation in wp-admin.
  2. Click + Add New Subscription.
  3. Select a platform template or choose Start from scratch.
  4. Configure the subscription in the editor (see Usage below).
  5. Click Save to activate the subscription.

Usage

Subscription Editor

Each subscription is configured across four tabs:

Basic Tab

Set the subscription name, the target webhook URL, and the trigger event.

Available Events — Donations

EventDescription
donation_createdA new donation is submitted
donation_completedA donation reaches Completed status
donation_cancelledA donation is cancelled
donation_failedA donation payment fails
donation_refundedA donation is refunded
donation_pendingA donation is set to Pending
donation_preapprovedA donation is pre-approved

Available Events — Campaigns

EventDescription
campaign_createdA new campaign is published
campaign_updatedAn existing campaign is updated
campaign_endedA campaign reaches its end date
campaign_goal_achievedA campaign hits its fundraising goal

Available Events — Recurring Donations

EventDescription
recurring_createdA new recurring plan is created
recurring_completedA recurring payment completes
recurring_cancelledA recurring plan is cancelled
recurring_failedA recurring payment fails
recurring_pausedA recurring plan is paused
recurring_resumedA paused plan resumes

Conditions Tab

Add rules to control when the webhook fires. All rules within a group use AND logic; multiple groups use OR logic.

Available Condition Fields

FieldOperators
donation_amountis, isnot, greaterthan, less_than
donation_statusis, is_not
campaign_idis, is_not
campaign_categoryis, is_not
payment_gatewayis, is_not
donor_countryis, is_not
donor_emailis, is_not, contains
newsletter_optinis (yes/no)
donation_typeis (one-time, recurring)
recurring_periodis, is_not
custom_fieldis, is_not, contains

Payload Tab

Choose exactly which fields to include in the outgoing JSON payload. Uncheck fields you don’t need to keep payloads lean.

Donor Fields (sample)

donor_iddonor_namedonor_first_namedonor_last_namedonor_emaildonor_phonedonor_addressdonor_citydonor_statedonor_postcodedonor_countrydonor_total_donateddonor_donation_count

Donation Fields (sample)

donation_iddonation_amountdonation_statusdonation_datedonation_timedonation_currencydonation_gatewaydonation_gateway_transaction_iddonation_notesdonation_typecampaign_idscampaign_names

Campaign Fields (sample)

campaign_idcampaign_titlecampaign_urlcampaign_goalcampaign_donatedcampaign_percent_raisedcampaign_donor_countcampaign_start_datecampaign_end_datecampaign_categories

Recurring Fields (sample)

recurring_idrecurring_amountrecurring_periodrecurring_frequencyrecurring_start_daterecurring_status

Site/Meta Fields (sample)

site_urlsite_nameevent_typedelivery_timestampwebhook_id

Test / Debug Tab

Send a test payload using real or sample data and inspect the HTTP response code, response body, and delivery time. This lets you verify your endpoint is receiving data before going live.


Platform Templates

When creating a new subscription, you can start from one of eight pre-built templates. Each template pre-fills the event trigger and, where applicable, adds sensible default conditions.

TemplateDefault EventNotes
Zapierdonation_createdPre-configured for Webhooks by Zapier Catch Hook
Make.comdonation_createdPre-configured for Custom Webhook module
n8ndonation_createdPre-configured for n8n Webhook node
Pabbly Connectdonation_createdPre-configured for Pabbly webhook trigger
HubSpotdonation_createdPre-configured for HubSpot workflow webhook
Mailchimpdonation_createdAdds newsletter opt-in condition by default
Slackdonation_createdPre-configured for Slack Incoming Webhooks
Start from scratch(none)Full control over all settings

Webhook Delivery

Request Format

Webhooks are delivered as HTTP POST requests with a JSON body and the following headers:

HeaderValue
Content-Typeapplication/json
X-WP-Webhook-SignatureHMAC-SHA256 signature
X-WP-Webhook-EventEvent slug (e.g., donation_created)
X-WP-Webhook-IDSubscription post ID

Signature Verification

Every request includes an X-WP-Webhook-Signature header. The signature is a lowercase hex HMAC-SHA256 of the raw JSON payload body, keyed with the subscription’s secret key.

To verify in PHP:

$signature = hash_hmac( 'sha256', $raw_body, $secret_key );
$is_valid   = hash_equals( $signature, $received_signature );

Retry Behavior

Failed deliveries (non-2xx responses or connection errors) are retried automatically using WordPress Action Scheduler. The retry schedule uses exponential backoff. After the maximum number of retries, the delivery is marked as permanently failed and logged.


Customization

CSS

The Automation Connect admin UI inherits standard Charitable and WordPress admin styles. No frontend CSS is output.

Template Overrides

Automation Connect has no public-facing templates. All output is JSON payloads delivered server-side.


Troubleshooting

Webhook is not being delivered

Check the following in order: 1. Confirm the subscription is saved and the event type matches what you expect (e.g., donation_completed, not donation_created). 2. Verify the webhook URL is publicly accessible — local localhost URLs will not work from a live server. 3. Check Charitable > Tools > Logs for delivery errors, filtering by source charitable-automation-connect.

The test payload sent successfully but live events are not triggering

Conditions may be filtering out live events. Open the Conditions tab and review each rule. Temporarily disable all conditions to confirm the webhook fires, then re-add conditions one at a time.

Payload fields are missing from the JSON

Uncheck and re-check the relevant fields in the Payload tab, then save. Fields added to Charitable via third-party plugins may need to be registered using the charitable_automation_connect_payload_fields filter (see Developer Resources).

License notice is appearing in the admin

Automation Connect 2.0 requires an active Charitable Pro license at the Pro plan level or above. If you see a license notice, verify your license is active at Charitable > Settings > Licenses and that your plan is Pro or higher.


Developer Resources

Hooks and Filters

Payload

  • charitable_automation_connect_payload_fields — Filter the list of available payload fields. Use this to add custom fields from your plugin or theme.
  • charitable_automation_connect_payload — Filter the payload array before delivery. Receives $payload$subscription_id$event.

Events

  • charitable_automation_connect_events — Filter the list of available trigger events. Add or remove event definitions.
  • charitable_automation_connect_before_deliver — Fires before a webhook is dispatched. Receives $subscription_id$event$payload.
  • charitable_automation_connect_after_deliver — Fires after a webhook is dispatched. Receives $subscription_id$response$payload.

Conditions

  • charitable_automation_connect_condition_fields — Filter available condition fields. Use this to register custom condition criteria.

Templates

  • charitable_automation_connect_templates — Filter the list of platform templates shown in the template picker. Add custom pre-configured templates.

License / Delivery

  • charitable_automation_connect_delivery_blocked — Filter whether delivery is blocked. Return false to allow delivery regardless of license state (useful for testing).

Useful Functions

  • charitable_automation_connect() — Returns the main plugin instance.
  • charitable_automation_connect()->get( 'subscriptions' ) — Returns the SubscriptionsRepositoryinstance for querying active subscriptions.

Adding Custom Payload Fields

add_filter( 'charitable_automation_connect_payload_fields', function( $fields ) {
    $fields['my_custom_field'] = array(
        'label'   => __( 'My Custom Field', 'my-plugin' ),
        'group'   => 'donor',
        'resolve' => function( $event_data ) {
            return get_user_meta( $event_data['donor_user_id'], 'my_meta_key', true );
        },
    );
    return $fields;
} );

Adding Custom Events

add_filter( 'charitable_automation_connect_events', function( $events ) {
    $events['my_custom_event'] = array(
        'label'       => __( 'My Custom Event', 'my-plugin' ),
        'group'       => 'donations',
        'description' => __( 'Fires when my custom condition occurs.', 'my-plugin' ),
    );
    return $events;
} );

Additional Resources

Still have questions? We’re here to help!

Last Modified:

What's New In Charitable

View The Latest Updates
🔔 Subscribe to get our latest updates
📧 Subscribe to Emails

Email Subscription

Join our Newsletter

We won’t spam you. We only send an email when we think it will genuinely help you. Unsubscribe at any time!

donation form Feature New

📝 Donation Form Block: Embed a Working Donation Form Anywhere

With the new Donation Form Block for Charitable Pro, you can drop a fully working donation form directly onto any page or post in the WordPress block editor. No redirects, no page reloads, and zero friction between reading your story and making a contribution.

📝 Drop Forms Anywhere: Place a working form directly onto your homepage, inside a story-driven blog post, on a dedicated landing page, or within a campaign announcement.

🎯 Dynamic Campaign Binding: Easily choose a specific campaign from the block sidebar or set it to automatically bind to whichever campaign is currently being viewed.

📐 Full vs. Minimal Form Views: Switch between a full layout or a compact minimal view to perfectly fit sidebars, narrow columns, or wide landing pages.

🎨 Scoped No-Code Styling: Customize typography, container spacing, border radius, amount buttons, and accent colors independently for every form instance without touching a line of CSS.

Learn more here.

ambassadors New

👤 Creator Profiles: Put a Face to Every Peer-to-Peer Campaign

Ambassadors 3.3.0 now provies Creator Profiles — giving your supporters a permanent, shareable public home that turns one-time fundraisers into ongoing relationships.

👤 Public Creator Pages: Give every fundraiser an instant, clean landing page at /creator/their-name/ to showcase their custom avatar, bio, and a browsable grid of their campaigns.

📊 Proof of Impact: Boost donor trust by displaying site-wide milestones on the profile—like total funds raised and total donor counts.

💳 Interactive Hover Cards: When donors hover over a creator’s name on a campaign page, a compact card expands with their bio and social handles right at the moment of decision.

📍 Responsible Location Sharing: Allow creators to safely show local supporters where they are based using only city, state, and country details.

🛠️ Self-Serve Customization: Fundraisers can update their own profiles and link up to six social networks directly from the My Campaigns hub, saving you admin time.

Ready to empower your advocates? Update to Ambassadors 3.3.0 and turn on “Enable Public Creator Page” today!

Improvement Payments

📱 Turn Mobile Scrollers Into Donors: Meet Charitable’s Mollie Upgrade

Losing mobile supporters because they hate typing out long card numbers on their phones? Charitable’s updated Mollie integration features:

⚡ One-Tap Wallet Checkout: Enable donors to complete their gifts instantly using Apple Pay or Google Pay with a simple face scan, fingerprint, or tap.

💰 No Extra PCI Burden: Skip complex domain verification and security compliance since all wallet transactions run safely through Mollie’s hosted checkout.

🛠️ Custom Cancel Routing: Keep the experience predictable by automatically sending donors who back out to your cancellation page, or use developer filters to route them to a custom page.

Visit this page to learn more.

ambassadors improved New

Moderation and Directory Screens In Ambassadors 3.0

Ambassadors 3.0 has new features: moderation and directory screens… now easily see those who are earning donations on your peer to peer network – including campaign creators that might need to be verified – all in one place. Generate reports, email ambassadors and campaign creators directly and more.

🚀 See when campaign creators and ambassadors have updated their campaigns, what donors/donation they have brought in and more.

🎉 Manually add ambassadors and campaign creators, and approve them in one-click!

Visit this page to learn more.

New Payments

⚡ Unlock India-Based Donations: Meet Charitable’s Native Razorpay Integration

Trying to collect donations in India? Charitable’s native Razorpay integration features:

⚡ Instant UPI Integration: Accept fast, local donations directly inside your form via apps like PhonePe, Google Pay, Paytm, and BHIM without sending donors away from your site.

📲 Auto-Generated Campaign QRs: Instantly render scannable QR codes encoding a UPI deep link directly on your public campaign pages and sidebars for an effortless “scan-to-give” experience.

💰 Dual Local & Global Reach: Headline your campaigns in INR while seamlessly accepting major international currencies like USD, EUR, GBP, and CAD to maximize global support.

🔁 Seamless Recurring Giving: Fully integrates with the Charitable Recurring addon to manage automatic monthly subscriptions directly through Razorpay without extra code.

↩️ Automatic Two-Way Sync: Keep your books perfectly clean with two-way refund syncing—issue a refund inside WordPress or your Razorpay dashboard and both sides update automatically.

🔒 Webhook-Verified Security: Automatically protect your donation records using HMAC-signed webhook verification to ensure every status update represents real money cleared on the rails.

Visit this page to learn more.