Stripe Giving
Stripe Giving lets your church accept credit and debit card gifts directly on your Digital Church giving pages. Digital Church uses Stripe Connect for this integration, which means payments are created through the Digital Church platform and routed to your church’s connected Stripe account. This setup requires access to both your Digital Church dashboard and...
Stripe Giving lets your church accept credit and debit card gifts directly on your Digital Church giving pages. Digital Church uses Stripe Connect for this integration, which means payments are created through the Digital Church platform and routed to your church’s connected Stripe account.
This setup requires access to both your Digital Church dashboard and Stripe Dashboard. If Digital Church manages your Stripe Connect onboarding, ask support for the platform keys and connected account ID before you start.
What you need before you begin#
Before you turn on Stripe Giving, gather these values:
- Stripe mode: Test mode or Live mode.
- Platform publishable key: Starts with
pk_test_orpk_live_. - Platform secret key: Starts with
sk_test_orsk_live_. - Connected account ID: Starts with
acct_. - Webhook signing secret: Starts with
whsec_.
The connected account ID tells Stripe which church account should receive the funds. Do not use a customer ID, payment ID, or price ID in this field.
Add your Stripe settings in Digital Church#
- Sign in to your Digital Church dashboard.
- Go to Admin → Integrations.
- Open Stripe Giving.
- Turn on Enable Stripe Giving.
- Choose Test mode while you are setting things up.
- Enter the platform publishable key.
- Enter the platform secret key.
- Enter the connected account ID for the church Stripe account.
- Save the integration.
After the integration is saved, the Giving provider list can use Stripe as the direct Credit/Debit option. If you also use the older Gravity Forms Stripe option, Digital Church labels that older option as Form so the two options are easier to tell apart.
Set up the Stripe webhook#
The webhook lets Stripe tell Digital Church when a payment succeeds. This is important because a donor’s browser might close or lose connection after Stripe completes the payment.
Use this webhook endpoint URL:
https://your-domain.com/wp-json/dc/v1/giving/stripe/webhook
Replace your-domain.com with your church website domain.
To create the webhook in Stripe:
- Open your Stripe Dashboard.
- Make sure you are in the same mode you selected in Digital Church: Test mode or Live mode.
- Go to Developers → Webhooks.
- Click Add endpoint.
- If Stripe asks which account should send events, choose Your account or Account events. Digital Church creates the payment on the platform account and routes the funds to the connected church account.
- Paste the endpoint URL from above.
- Select the event
payment_intent.succeeded. - Save the endpoint.
- Open the new webhook endpoint and reveal the Signing secret.
- Copy the
whsec_...value. - Go back to Admin → Integrations → Stripe Giving in Digital Church.
- Paste the signing secret into Webhook Signing Secret.
- Save the integration again.
Test mode and live mode have different keys and different webhook signing secrets. If you switch modes, update the publishable key, secret key, connected account ID, and webhook signing secret for that mode.
Test the integration#
Before accepting real gifts, test the full flow.
- Keep Stripe Giving in Test mode.
- Open a Campaign or giving page that uses the Stripe Credit/Debit provider.
- Enter a small gift amount, such as
$1.00. - Use Stripe’s test card number:
4242 4242 4242 4242
Use any future expiration date, any three-digit CVC, and any ZIP code.
After the test payment succeeds, check two places:
- In Digital Church, confirm the Campaign gift or Giving transaction appears as confirmed.
- In Stripe, confirm the PaymentIntent succeeded and the funds are routed to the connected account.
Go live#
When the test flow works:
- Switch Stripe Mode to Live mode.
- Replace the test publishable key with the live publishable key.
- Replace the test secret key with the live secret key.
- Confirm the connected account ID is correct for live payments.
- Create or update the live-mode webhook endpoint in Stripe.
- Paste the live webhook signing secret into Digital Church.
- Save the integration.
- Run one small live gift and confirm it appears in both Digital Church and Stripe.
Do not reuse test keys or a test webhook signing secret in live mode. Stripe treats test and live mode as separate environments.
Troubleshooting#
“Cookie check failed”#
This means the giving form request was rejected by WordPress before it reached the Stripe Giving endpoint. Refresh the giving page and try again. If the problem continues, make sure your site has the latest Digital Church Stripe Giving update installed.
“Stripe Giving is not configured”#
At least one required setting is missing. Check that Stripe Giving is enabled and that the platform publishable key, platform secret key, and connected account ID are saved.
The gift succeeds in Stripe but does not appear in Digital Church#
Check the webhook setup. The endpoint should use this URL:
https://your-domain.com/wp-json/dc/v1/giving/stripe/webhook
It should listen for payment_intent.succeeded, and the signing secret in Digital Church should match the webhook endpoint’s whsec_... value.
If Stripe asks for the event source, use Your account or Account events for this integration. Choosing connected-account events can prevent Digital Church from seeing the PaymentIntent created by the giving form.
The connected account does not receive the funds#
Check the connected account ID. It should begin with acct_. If you are not sure which account ID to use, contact Digital Church support before accepting live gifts.