- Handle Custom Stripe Webhook Events
- suredonation_export_secret_option_keys Filter Hook
- suredonation_import_batch_complete Action Hook
- suredonation_import_complete Action Hook
- suredonation_import_donation_inserted Action Hook
- suredonation_import_donor_inserted Action Hook
- suredonation_import_session_created Action Hook
- suredonation_import_givewp_batch_complete Action Hook
- suredonation_import_givewp_session_created Action Hook
- suredonation_privacy_data_exported Action Hook
- suredonation_enqueue_form_frontend_scripts Action Hook
- suredonation_after_form_duplicated Action Hook
- suredonation_email_sent Action Hook
- suredonation_donor_user_created Action Hook
- suredonation_donation_refunded Action Hook
- suredonation_donation_status_changed Action Hook
- suredonation_donation_completed Action Hook
- suredonation_new_donation Action Hook
- suredonation_donation_created Action Hook
- Validate Field Filter Hook
- Validatable Blocks Filter Hook
- Update donation data, Filter Hook
- OttoKit Integration: suredonation_suretriggers_integration_data_filter Filter Hook
- suredonation_show_setup_gateway_notice Filter Hook
- suredonation_show_review_notice_gateway Filter Hook
- suredonation_show_review_notice_donation Filter Hook
- suredonation_registered_payment_methods Filter Hook
- suredonation_register_additional_blocks Filter Hook
- suredonation_receipt_html Filter Hook
- Validatable Blocks Filter Hook
- Update donation data, Filter Hook
- OttoKit Integration: suredonation_suretriggers_integration_data_filter Filter Hook
- suredonation_show_setup_gateway_notice Filter Hook
- suredonation_show_review_notice_gateway Filter Hook
- suredonation_show_review_notice_donation Filter Hook
- suredonation_registered_payment_methods Filter Hook
- suredonation_register_additional_blocks Filter Hook
- suredonation_receipt_html Filter Hook
- suredonation_phone_geo_enabled Filter Hook
- suredonation_phone_geo_api_hourly_cap Filter Hook
- suredonation_paypal_webhook_handle_event Filter Hook
- suredonation_paypal_sdk_args Filter Hook
- suredonation_output_campaign_meta_tags Filter Hook
- suredonation_new_donor_user_data Filter Hook
- suredonation_integration_payload Filter Hook
- suredonation_import_phase_mappers Filter Hook
- suredonation_import_givewp_phases Filter Hook
- suredonation_import_givewp_phase_mappers Filter Hook
- suredonation_import_donation_row Filter Hook
- suredonation_import_campaigns_limit Filter Hook
- suredonation_field_block_config Filter Hook
- suredonation_export_secret_option_keys Filter Hook
- suredonation_export_one_time_only Filter Hook
- suredonation_export_campaigns_limit Filter Hook
- suredonation_email_smart_tags Filter Hook
- suredonation_email_smart_tag_groups Filter Hook
- suredonation_email_field_char_limits Filter Hook
- suredonation_disable_default_styles Filter Hook
- suredonation_default_validation_messages Filter Hook
- suredonation_default_email_notifications Filter Hook
- suredonation_create_donation_data Filter Hook
- suredonation_config_abilities Filter Hook
- suredonation_available_payment_methods Filter Hook
- suredonation_allowed_form_html Filter Hook
- suredonation_allowed_form_blocks Filter Hook
- suredonation_import_batch_complete Action Hook
- suredonation_import_complete Action Hook
- suredonation_import_donation_inserted Action Hook
- suredonation_import_donor_inserted Action Hook
- suredonation_import_session_created Action Hook
- suredonation_import_givewp_batch_complete Action Hook
- suredonation_import_givewp_session_created Action Hook
- suredonation_privacy_data_exported Action Hook
- suredonation_enqueue_form_frontend_scripts Action Hook
- suredonation_after_form_duplicated Action Hook
- suredonation_email_sent Action Hook
- suredonation_donor_user_created Action Hook
- suredonation_donation_refunded Action Hook
- suredonation_donation_status_changed Action Hook
- suredonation_donation_completed Action Hook
- suredonation_new_donation Action Hook
- suredonation_donation_created Action Hook
suredonation_donation_created Action Hook
Overview
The suredonation_donation_created action fires immediately after a new donation row has been successfully inserted into the database. It signals that a donation record now exists, regardless of its payment status — making it the right place to hook logging, syncing, or bookkeeping that should happen for every new donation.
Hook Signature
do_action( 'suredonation_donation_created', $donation_id, $payload );Parameters
$donation_id _(int)_ – The newly created donation’s ID.
$payload _(array)_ – A curated, integration-safe copy of the donation (built by Donations::get_integration_payload()). Internal/PII columns such as ip_address, user_agent, referer_url and the raw donation_data are deliberately excluded. Available keys:
id _(int)_, campaign_id _(int)_, form_id _(int)_, donor_id _(int)_
donor_name _(string)_, donor_email _(string)_, donor_phone _(string)_, donor_comment _(string)_
amount _(float)_, fees_covered _(float)_, refunded_amount _(float)_, currency _(string)_
gateway _(string)_, payment_status _(string)_, payment_mode _(string)_, donation_type _(string)_
transaction_id _(string)_, subscription_id _(string)_, subscription_status _(string)_
is_anonymous _(bool)_, created_at _(string)_, updated_at _(string)_
> When is_anonymous is truthy, donor_name, donor_email, donor_phone and donor_comment are returned as empty strings.
Usage
add_action( 'suredonation_donation_created', 'your_custom_function', 10, 2 );
function your_custom_function( $donation_id, $payload ) {
    // Your custom logic here.
}Example
add_action( 'suredonation_donation_created', 'mysite_log_new_donation', 10, 2 );
function mysite_log_new_donation( $donation_id, $payload ) {
    error_log( sprintf(
        'New SureDonation #%d: %s %.2f via %s (status: %s)',
        $donation_id,
        $payload['currency'],
        $payload['amount'],
        $payload['gateway'],
        $payload['payment_status']
    ) );
}Related Hooks
- suredonation_new_donation
- suredonation_donation_completed
- suredonation_donation_status_changed
We don't respond to the article feedback, we use it to improve our support content.