POST /invoices/{invoice-id}/delete
Deletes the specified invoice.
Void the invoice
If the invoice was generated incorrectly, void it instead of deleting it. Voiding preserves the audit trail and allows for future reference and compliance without removing the original record.
Regenerate or import an invoice
- If the invoice is for the current term of a subscription, you may regenerate it using the Regenerate an invoice API.
- If the invoice is not for the current term of a subscription, you may import it using the Import an invoice API or the UI bulk import action.
Prerequisites & Constraints
- The invoice should not have any
linked_paymentswithtxn_statusassuccessorin_progress. - The
amount_adjustedon the invoice should be zero. - The invoice should not have any
applied_creditswithcn_statusasrefundedorrefund_due. - The invoice should not have any
issued_credit_noteswithcn_statusasrefundedorrefund_due. - The invoice should not have any
linked_taxes_withheld. - The invoice must not belong to a gift subscription.
Impacts
Invoices
- The invoice is marked as
deleted=trueand can only be retrieved using the List invoices API by using the parameterinclude_deleted=true. - If the invoice is the first invoice for a subscription or customer (
invoice.first_invoice=true), the next invoice generated for the subscription or customer is marked as the first invoice.
Subscription
- If the invoice is for the current term of a subscription and the subscription is changed later with proration enabled, no prorated credits are issued.
Usages
- Deleting an invoice permanently deletes all associated usages. To regenerate the data, add or bulk import usages and then regenerate the invoice.
Usage Events
- Deleting an invoice does not delete the associated
usage_eventresources.
Integrations
- Verify the impacts of deleting an invoice on your accounting integrations.
Implementation Notes
Before calling this API, ensure the following:
- Remove any
linked_paymentswithtxn_statusassuccessorin_progress. - Remove the following credits:
- any
applied_creditswithcn_statusasrefundedorrefund_due - any
issued_credit_noteswithcn_statusasrefundedorrefund_due - any
adjustment_credit_noteswithcn_statusasadjusted
- any
- Remove any
linked_taxes_withheld.
Servers
- {protocol}://{site}.{environment}:{port}/api/v2
- {protocol}://{site}-test.{environment}:{port}/api/v2
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
invoice-id |
String | Yes |
Request headers
| Name | Type | Required | Description |
|---|---|---|---|
chargebee-request-origin-device |
String | No |
The device from which the customer has made the request |
Content-Type |
String | Yes |
The media type of the request body.
Default value: "application/x-www-form-urlencoded" |
chargebee-event-webhook |
String | No |
skip only webhooks Valid values:
|
chargebee-business-entity-id |
String | No |
If the site has multiple business entities, you can use this custom HTTP header to specify the business entity for which Chargebee should perform the operation. |
chargebee-event-actions |
String | No |
skip all actions to be done on the events Valid values:
|
chargebee-request-origin-user |
String | No |
The email address of your customer/user. Use this when the email address has only ASCII characters. |
chargebee-request-origin-ip |
String | No |
The IP address of the customer where the request originated |
chargebee-request-origin-user-encoded |
String | No |
The Base64-encoded email address of your customer/user. Use this if the email address has UTF-8 characters. When this header is provided, the header chargebee-request-origin-user is ignored. |
chargebee-event-email |
String | No |
skip only emails Valid values:
|
Request body fields
| Name | Type | Required | Description |
|---|---|---|---|
comment |
String | No |
Reason for deleting the invoice. This comment will be added to the subscription entity if the invoice belongs to a subscription. It is added to the customer entity if the invoice is associated only with a customer. |
claim_credits |
Boolean | No |
Indicates whether to put prorated credits back to the subscription or ignore while deleting the invoice. Default value: false |
How to start integrating
- Add HTTP Task to your workflow definition.
- Search for the API you want to integrate with and click on the name.
- This loads the API reference documentation and prepares the Http request settings.
- Click Test request to test run your request to the API and see the API's response.