import { Autumn } from 'autumn-js'
const autumn = new Autumn()
const result = await autumn.invoices.reissue({
invoiceId: "inv_2b3c4d5e6f7g8h",
invoiceTemplateId: "inv_tmpl_bank_transfer",
});from autumn_sdk import Autumn
autumn = Autumn(secret_key="am_sk_test...")
res = autumn.invoices.reissue(
invoice_id="inv_2b3c4d5e6f7g8h",
invoice_template_id="inv_tmpl_bank_transfer",
)curl --request POST \
--url https://api.useautumn.com/v1/invoices.reissue \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-api-version: <x-api-version>' \
--data '
{
"invoice_id": "inv_2b3c4d5e6f7g8h",
"invoice_template_id": "inv_tmpl_bank_transfer"
}
'{
"invoice": {
"id": "inv_3c4d5e6f7g8h9i",
"customer_id": "cus_123",
"entity_id": null,
"plan_ids": [
"pro_plan"
],
"stripe_id": "in_1A2B3C4D5E6F7G8H",
"processor_type": "stripe",
"status": "open",
"total": 29.99,
"amount_paid": 29.99,
"refunded_amount": 0,
"currency": "usd",
"created_at": 1759247877000,
"hosted_invoice_url": "https://invoice.stripe.com/i/acct_123/test_456",
"items": [
{
"id": "invoice_li_2b3c4d5e6f7g8h",
"description": "Pro plan",
"plan_id": "pro_plan",
"feature_id": null,
"feature_name": null,
"quantity": null,
"amount": 20,
"period_start": 1759247877000,
"period_end": 1761839877000,
"entities": []
},
{
"id": "invoice_li_3c4d5e6f7g8h9i",
"description": "AI credits",
"plan_id": "pro_plan",
"feature_id": "ai_credits",
"feature_name": "AI Credits",
"quantity": 4995,
"amount": 9.99,
"period_start": 1759247877000,
"period_end": 1761839877000,
"entities": [
{
"entity_id": "acme-docs-prod",
"quantity": 4995,
"amount": 9.99
}
]
}
]
},
"voided_invoice_id": "inv_2b3c4d5e6f7g8h",
"preview": {
"currency": "usd",
"lines": [],
"subtotal": 29.99,
"discount_total": 0,
"tax": null,
"total": 29.99,
"amount_due": 29.99,
"due_date": 1761839877000
}
}
Reissue Invoice
Voids an open send-invoice Stripe invoice and issues a replacement with the same line items. An invoice template can supply the replacement’s footer (e.g. bank details) and memo. The replacement keeps the original due date unless net_terms_days is passed, which is required once the original is past due. Pass update_customer_email to change the customer’s billing email first so the replacement is sent there. The replacement stays linked to the same subscription and fulfils the same pending plan when paid.
import { Autumn } from 'autumn-js'
const autumn = new Autumn()
const result = await autumn.invoices.reissue({
invoiceId: "inv_2b3c4d5e6f7g8h",
invoiceTemplateId: "inv_tmpl_bank_transfer",
});from autumn_sdk import Autumn
autumn = Autumn(secret_key="am_sk_test...")
res = autumn.invoices.reissue(
invoice_id="inv_2b3c4d5e6f7g8h",
invoice_template_id="inv_tmpl_bank_transfer",
)curl --request POST \
--url https://api.useautumn.com/v1/invoices.reissue \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-api-version: <x-api-version>' \
--data '
{
"invoice_id": "inv_2b3c4d5e6f7g8h",
"invoice_template_id": "inv_tmpl_bank_transfer"
}
'{
"invoice": {
"id": "inv_3c4d5e6f7g8h9i",
"customer_id": "cus_123",
"entity_id": null,
"plan_ids": [
"pro_plan"
],
"stripe_id": "in_1A2B3C4D5E6F7G8H",
"processor_type": "stripe",
"status": "open",
"total": 29.99,
"amount_paid": 29.99,
"refunded_amount": 0,
"currency": "usd",
"created_at": 1759247877000,
"hosted_invoice_url": "https://invoice.stripe.com/i/acct_123/test_456",
"items": [
{
"id": "invoice_li_2b3c4d5e6f7g8h",
"description": "Pro plan",
"plan_id": "pro_plan",
"feature_id": null,
"feature_name": null,
"quantity": null,
"amount": 20,
"period_start": 1759247877000,
"period_end": 1761839877000,
"entities": []
},
{
"id": "invoice_li_3c4d5e6f7g8h9i",
"description": "AI credits",
"plan_id": "pro_plan",
"feature_id": "ai_credits",
"feature_name": "AI Credits",
"quantity": 4995,
"amount": 9.99,
"period_start": 1759247877000,
"period_end": 1761839877000,
"entities": [
{
"entity_id": "acme-docs-prod",
"quantity": 4995,
"amount": 9.99
}
]
}
]
},
"voided_invoice_id": "inv_2b3c4d5e6f7g8h",
"preview": {
"currency": "usd",
"lines": [],
"subtotal": 29.99,
"discount_total": 0,
"tax": null,
"total": 29.99,
"amount_due": 29.99,
"due_date": 1761839877000
}
}
Body Parameters
Response
{
"invoice": {
"id": "inv_3c4d5e6f7g8h9i",
"customer_id": "cus_123",
"entity_id": null,
"plan_ids": [
"pro_plan"
],
"stripe_id": "in_1A2B3C4D5E6F7G8H",
"processor_type": "stripe",
"status": "open",
"total": 29.99,
"amount_paid": 29.99,
"refunded_amount": 0,
"currency": "usd",
"created_at": 1759247877000,
"hosted_invoice_url": "https://invoice.stripe.com/i/acct_123/test_456",
"items": [
{
"id": "invoice_li_2b3c4d5e6f7g8h",
"description": "Pro plan",
"plan_id": "pro_plan",
"feature_id": null,
"feature_name": null,
"quantity": null,
"amount": 20,
"period_start": 1759247877000,
"period_end": 1761839877000,
"entities": []
},
{
"id": "invoice_li_3c4d5e6f7g8h9i",
"description": "AI credits",
"plan_id": "pro_plan",
"feature_id": "ai_credits",
"feature_name": "AI Credits",
"quantity": 4995,
"amount": 9.99,
"period_start": 1759247877000,
"period_end": 1761839877000,
"entities": [
{
"entity_id": "acme-docs-prod",
"quantity": 4995,
"amount": 9.99
}
]
}
]
},
"voided_invoice_id": "inv_2b3c4d5e6f7g8h",
"preview": {
"currency": "usd",
"lines": [],
"subtotal": 29.99,
"discount_total": 0,
"tax": null,
"total": 29.99,
"amount_due": 29.99,
"due_date": 1761839877000
}
}
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Body
The Autumn invoice ID to void and replace.
ID of an invoice template (configured in billing settings) whose footer and memo are applied to the replacement invoice.
Number of days the customer has to pay the replacement invoice. Defaults to the original invoice's due date; required when that date has already passed. A card-charged invoice has no due date and its replacement is charged immediately; setting this makes the replacement a send-invoice one instead.
-9007199254740991 < x <= 9007199254740991If true, returns the replacement invoice's lines and totals without voiding anything or issuing it.
Updates the customer's billing email before the replacement is issued, so Stripe sends the new invoice to this address.
Changes that apply to the replacement invoice only.
Show child attributes
Show child attributes
Changes written to the customer, which the replacement snapshots and later invoices inherit.
Show child attributes
Show child attributes
Add, change or drop lines relative to the original.
Show child attributes
Show child attributes
Response
OK
The replacement invoice. Null when preview is true.
Show child attributes
Show child attributes
The Autumn ID of the original invoice, now void. Null when previewing, and when the original was paid and got a credit note instead.
The Stripe credit note issued against a paid original, whose amount lands on the customer's balance and covers the replacement. Null when the original was open and voided instead.
The replacement's lines and totals.
Show child attributes
Show child attributes