POST /invoices/{invoice-id}/add_charge

Adds a one-time charge to a pending invoice. A one-time charge is a charge that is added ad hoc to the invoice and does not represent a predefined item price. It appears in the invoice as a line_item of entity_type adhoc.

Servers

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

Possible values:

  • "all-disabled"
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

Possible values:

  • "all-disabled"
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

Possible values:

  • "all-disabled"

Request body fields

Name Type Required Description
comment String No

An internal comment to be added for this operation, to the invoice. This comment is displayed on the Chargebee UI. It is not displayed on any customer-facing Hosted Page or any document such as the Invoice PDF.

description String Yes

Detailed description about this lineitem.

amount Integer Yes

The amount to be charged. The unit depends on the type of currency.

avalara_tax_code String No

This represents the Avalara tax code to which the one-time charge is mapped. Applicable only if you use Chargebee's AvaTax for Sales integration.

taxjar_product_code String No

This represents the TaxJar product code to which the one-time charge is mapped. Applicable only if you use Chargebee's TaxJar integration.

avalara_sale_type String No

Indicates the type of sale carried out. This is applicable only if you use Chargebee's AvaTax for Communications integration. * retail - Transaction is a sale to an end user * wholesale - Transaction is a sale to another company that will resell your product or service to another consumer * vendor_use - Transaction is for an item that is subject to vendor use tax * consumed - Transaction is for an item that is consumed directly

Possible values:

  • "consumed"
  • "retail"
  • "vendor_use"
  • "wholesale"
hsn_code String No

The HSN code to which the one-time charge is mapped for calculating the customer's tax in India. Applicable when both the conditions are true:

  • India has been enabled as a Tax Region. (An error is returned when this condition is not true.)
  • The AvaTax for Sales integration has been enabled in Chargebee. .
avalara_service_type Integer No

Indicates the type of service for the product to be taxed. Values for this field can be taken from Avalara. This is applicable only if you use Chargebee's AvaTax for Communications integration.

line_item Object No

Parameters for line_item

line_item.date_from Integer No

The time when the service period for the charge starts.

line_item.date_to Integer No

The time when the service period for the charge ends.

avalara_transaction_type Integer No

Indicates the type of product to be taxed. Values for this field can be taken from Avalara. This is applicable only if you use Chargebee's AvaTax for Communications integration.

subscription_id String No

Identifier of the subscription for which this charge needs to be created. Applicable for consolidated invoice.

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. 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.
  3. Click Test request to test run your request to the API and see the API's response.