Stripe Billing Integration with PaymentIntents

Question

Why do Invoices create PaymentIntents instead of directly creating Charges? What are PaymentIntents? How do they affect my Billing integration?

Answer

Stripe’s new payments API, PaymentIntents, manages payment lifecycles more effectively and can trigger additional authentication steps when required by regulatory mandates such as Strong Customer Authentication (SCA). To learn more about PaymentIntents, visit the Docs.

Stripe Billing has already integrated with PaymentIntents for you, so you get these new benefits with no additional work. Invoices now create PaymentIntents in addition to Charges, and you will receive PaymentIntents as part of subscription creation. This change is backwards compatible: Charges will still be available since they are stored on the PaymentIntent. To learn more, visit our updated signup and payment flow guide.

There will be some minor changes to your Dashboard workflows. Retry attempts for failed payments are now grouped together on a single PaymentIntent page. This change makes it easier to understand an invoice’s payment history.

Older invoices which created Charges will be unchanged. If one of these older invoices had multiple payment attempts, they will still be displayed as separate Charges.

If you email invoices to customers, these invoices will now create a PaymentIntent when they are finalized to represent your intent to collect payment. These PaymentIntents will be labeled as incomplete in your Dashboard until your customer attempts to pay their invoice. If you choose to void or mark an invoice as paid, the PaymentIntent will be canceled automatically.