Patch Invoice
Partially update an invoice. Currently the inline note only.
Invoices otherwise have no update endpoint — they are created, then moved through finalize / void / mark-uncollectible — because their financial content is immutable once finalized. A note is an annotation ABOUT the invoice, not content OF it, so it stays editable in any state; a paid or voided invoice is often exactly the one someone needs to annotate.
Scoped to note deliberately, so this cannot become a back door for editing
amounts on a finalized invoice.
Authentication
Bearer authentication of the form Bearer <token>, where token is your auth token.
Path parameters
Request
Free-text note for this invoice. Omit to leave any existing note untouched; send null or an empty string to delete it.
Response
Custom field values. Only included when expand=custom_fields is specified.
Free-text note attached to this invoice, from the notes side-table. Merchant-private — unlike description, it never appears on the invoice PDF or any customer-facing surface.
Why an invoice exists. Re-exported from invoices_schemas for
backwards compatibility — new code should import it from here.
Lives in this dependency-free module, rather than in invoices_schemas,
because the payments side needs it too: payment_intents snapshots the
producing invoice’s reason (see PaymentIntentEntity.invoice_billing_reason)
and importing invoices_schemas from intents_model would drag half of
billing into the payments import graph. Same reasoning that moved the
PaymentIntent enums into intents_enums.