Stripe logo

Set up a monthly donor for recurring giving

A monthly pledge creates the Stripe customer and starts a recurring subscription at the amount the donor committed to.

When this happens

New submission on your "Become a monthly supporter" form

Do this

Find or create the customer and create a recurring subscription in Stripe

One-directional. A submission triggers the action — nothing is written back into your form.

Monthly giving lives or dies on how easy it is to set up. A pledge form collects the commitment; someone still has to turn that into recurring billing.

Small fundraising teams rely on this so the second half happens on its own. The pledge finds or creates the Stripe customer and opens a subscription at the amount promised, which keeps donor records and billing in the same place instead of split between a spreadsheet and whoever answered the email.

Setting it up

  1. 1

    Publish the pledge form and use conditional logic so Pledged Amount (USD, if monetary) only appears for monetary gifts. An in-kind pledge that reaches the billing steps produces a subscription for nothing.

  2. 2

    In Stripe, create one recurring price of 1.00 per month. Donors pledge arbitrary figures, so the subscription carries that price with a quantity equal to the pledge rather than needing a price per amount.

  3. 3

    In Zapier, add the formformform trigger on New Submission, select the pledge form, and load a sample where the amount and the pledge period are both filled in.

  4. 4

    Add a filter that continues only when Type of Contribution is monetary and the pledge commitment has been agreed, so nothing becomes recurring billing without an explicit yes on the form.

  5. 5

    Add Find or Create Customer in Stripe searching on Email Address, mapping Donor Full Name to Name, Phone Number to Phone and Mailing Address to Address Line 1 — the address is what makes a receipt usable at year end.

  6. 6

    Add a Formatter step turning Pledged Amount (USD, if monetary) into a whole number, since Stripe subscription quantities cannot carry decimals. Round or reject part-currency pledges; do not let them through unhandled.

  7. 7

    Add Create Subscription with the 1.00 recurring price, the quantity from the Formatter, and collection method set to send invoice — no card details pass through the form, so Stripe has nothing saved to charge.

  8. 8

    Map Specific Program or Fund to Designate (if any) into subscription metadata, test one pledge end to end, check the amount in the Subscriptions list, then switch the Zap on.

What maps where

Using the Charitable Contribution Commitment Form as the starting point. These are its real fields — swap in your own and the mapping works the same way.

Form fieldStripe
Email AddressSearch key for Find or Create Customer in Stripe
Donor Full NameName on the Stripe customer
Mailing AddressAddress Line 1 of the customer's billing address, used on receipts
Pledged Amount (USD, if monetary)Quantity on the subscription, against a 1.00 recurring price
Pledge PeriodChooses the monthly or annual recurring price
Specific Program or Fund to Designate (if any)Subscription metadata for fund reporting

Variations worth knowing

Let donors give monthly or annually

Create a second recurring price of 1.00 per year and use a Formatter lookup on Pledge Period to pick between the two. The quantity logic does not change, so a donor pledging 25 a month and one pledging 300 a year run through the same Zap with different price IDs.

Mark anonymous gifts before they reach reporting

Map "Would you like this contribution to be anonymous?" into customer metadata. Exports for the annual report and the supporter wall can then filter on it in Stripe, which means the donor's answer travels with the billing record rather than living in a separate note somebody has to remember.

If something isn't arriving

The subscription quantity comes through as zero or the step errors.

"$25 a month" is text, and quantity must be a whole number. Check the Formatter is extracting the digits and dropping the symbol. A pledge of 12.50 also fails, since fractional quantities are rejected — use a price of 0.01 and multiply the pledge by 100 if part-currency amounts are common.

Donors are subscribed but nothing is ever collected.

Stripe cannot charge a customer with no payment method on file, and none is captured on the form. With send-invoice collection Stripe emails an invoice each period; alternatively, email new donors a billing portal link so they can add a card once.

Frequently asked questions

Can donors enter card details on the pledge form?

Yes. Add products and priced options to the form, then collect payment through secure hosted checkout with Stripe, PayPal, or Square. Payment status is tracked alongside the response.

What happens when a donor raises their pledge?

Submitting the form again creates a second subscription on the same customer rather than editing the first, so both would bill. Cancel the original in Stripe when you see the new one, or handle increases by editing the quantity in Stripe directly.

Is the donor's address needed for the subscription?

Stripe will create the subscription without it, but the address is what makes an invoice or year-end receipt usable to a donor claiming tax relief. Mapping Mailing Address at signup costs nothing and saves chasing hundreds of people later.

Related automations

Build the form first

The automation needs somewhere to fire from. Publish a form, connect it once, and every submission from then on runs this flow.

Start free