Adds support for multiple (partial) payments on invoicesBreaking changes
What’s new
We’re introducing support for multiple (partial) payments on invoices and credit notes. Invoices also track over-payments and can track out of band payments now. In addition, we’re adding a confirmation_
field on the Invoice object to enhance support for using the Payment Element.
Why is this a breaking change?
- Removed the
payment_
,intent charge
,paid
, andpaid_
fields from theout_ of_ band Invoice
object. - Removed the
invoice
field from the Payment Intent and Charge objects. - Deprecated the
refund
field on the Credit Note object and replaced it with arefunds
array. - The
amount_
field on thepaid Invoice
object now reflects out of band payments.
Impact
We introduced the Invoice Payment object to represent the connection between payments and invoices and removed previous invoice and payment pointers on relevant objects. Make sure that you update your integration to no longer assume that a single invoice must be paid by a single payment, and use the new Invoice Payment object to understand the connection between payments and invoices.
Inspect the invoice. payments
array for payment information
You can inspect invoice.
when interacting with the Invoice object by expanding the payments
property:
The invoice.
array provides a list of all the payments associated with the invoice and their respective allocation and payment status.
Use the new Invoice Payment endpoints for payments and invoice connection
To understand the connection between a Payment Intent and Invoice object, you can use the List Invoice Payment endpoint:
Use confirmation_ secret
for Payment Element integrations
For Payment Element integrations, especially Subscription integrations, that previously relied on expanding invoice.
or latest_
, you can now use the new invoice.
field on the Invoice object by expanding confirmation_
:
Changes
Upgrade
Related changes
- Replaces top-level price fields with improved price modeling on Invoice Items and Invoice Line Items
- Replaces top-level tax-related properties with improved tax modeling on Invoices, Invoice Line Items, and Credit Note Line Items
- Adds jurisdiction level and taxability reason to manual tax amounts on invoices