If you have selected Stripe as your payment processor and wish to accept recurring payments through the Donations app, you will first need to create a Product and a Pricing Plan through the control panel in your Stripe account. These will be used to create a new Subscription in Stripe for the recurring donation. You will need at least one Product and one Pricing Plan to process recurring donations through Stripe.
To do so:
- Login to Stripe
- Go to Products
- Click "Add product" button
- On the "Product information" page...
- For Name, enter a name for the product. We suggest something akin to "Online monthly donation".
- For Description, leave blank
- For "Pricing model", choose "Standard pricing"
- For "Price", enter "0.01"
- Select "Recurring" button
- For "Billing period" choose "Monthly"
- Click "Save product" button
- On the next screen, enter a Plan Nickname. You can enter the same text you used for the Product Name.
- Leave Id blank to allow Stripe to generate this
- For Pricing, keep Recurring Quantity selected
- For Price per Unit, enter "0.01"
- For Billing Interval, select "Monthly" or "Yearly", depending on the payment frequency you desire. It is important that the Billing Interval matches the
- Click Add Pricing Plan
- On the subsequent view, click the name of the pricing plan you created under the Pricing Plans section
- On the Pricing Plan detail view, locate and copy the Plan Id. This will start with "plan_".
Once you have created the a Product and a Pricing Plan, enter the Plan ID as the Default Plan in the Payment Processor Settings.
Recurring payments accepted through the Donations app will create a Customer in Stripe and a corresponding Subscription for that Customer.
While the Payment Processor Settings accepts a Default Plan, you may also enter a unique Plan for individual Donation app pages.
Ensuring Consistency in Payment Frequency between Soapbox and Stripe
It is important that Pricing Plan used by a Donation in Soapbox be set to the same payment frequency as the Recurring Payment Frequency field on the Donation form in Soapbox. In other words, if the Donation form has "Annual" selected as its Recurring Payment Frequency, the Stripe Plan used by that form must be set to "Yearly". If the Donation form has "Monthly" selected, the Stripe Plan used by the form must be set to "Monthly".
Receiving Notifications of Subsequent Payments in Soapbox
After this has been done, you can create a webhook endpoint in Stripe to ensure that it notifies Soapbox of successful recurring donation transactions.