Set up a subscription with bank transfers
Learn how to create and charge for a subscription with bank transfers.
Use this guide to set up a subscription using bank transfers as a payment method.
Create a product and priceDashboardServer-side
Products and Prices are core resources for Subscriptions. Create a product and a recurring price by following the steps in the product and prices guide. Save the price ID—you’ll need it later in this guide.
Create or retrieve a customerServer-side
To start, create a customer with a valid email address, if one doesn’t already exist. The valid email address ensures that the customer can receive invoices you send to them. Funds from bank transfers are held in the customer’s cash balance, so you have to associate a Customer object with each bank transfer subscription.
Create the subscriptionServer-side
Create the subscription using the customer ID and price ID from the previous steps.
- Set collection_method to
send_
.invoice - Set days_until_due to configure how many days the customer has to pay the invoice.
An invoice is sent to the customer when the Subscription is due. The invoice is marked as paid if the customer has enough funds in their cash balance. Otherwise, it contains the necessary information needed for the customer to push funds from their bank account. This invoice also has a link to the Hosted Invoice Page. Subsequent invoices use the price you created in the first step.
Learn more about bank transfer invoices.
Test your integration
Use the Stripe Dashboard or CLI to simulate an inbound transfer of funds.
As soon as you receive a fund, Stripe performs automatic or manual reconciliation of the invoice.