> This page is for Developer.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.bigcommerce.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.bigcommerce.com/_mcp/server.

# Adjust Tax Quote

POST https://your_app.example.com/adjust
Content-Type: application/json

Replace the persisted tax quote (identified by the given unique ID) with the provided quote request (represented by the **AdjustRequest**).

Relevant for returns, partial refunds, and other Order modifications where there have been changes to the tax liabilities.

The returned **Tax Quote** response is expected to be the same to a response returned by an equivalent response to **estimate** or **commit** methods.

> Server URL
> - For supporting tax providers, the server URL contains the tax providerʼs profile field; for example, `your_profile.example.com`.
> - The Try it feature is not currently supported for this endpoint.

Reference: https://docs.bigcommerce.com/developer/api-reference/rest/integrations/tax-provider/adjust-tax-quote

## Authentication

- `Authorization` header (basic auth, required) — The [HTTP Basic Authentication](https://developer.mozilla.org/en-US/docs/Web/HTTP/Authentication) (developer.mozilla.org) credentials used to authenticate each API request to the tax provider from the associated store; set and update `username`, `password`, and optionally `profile`, using the [Update a Connection](/developer/api-reference/rest/integrations/tax-provider/tax-provider-connection/update-tax-provider-connection) request. `profile` is an optional field and will be used with supporting providers only. For more, see [developer-configured authentication](/developer/docs/overview/api-fundamentals/api-accounts#developer-configured-authentication) for Provider APIs.

## Request

### Query parameters

- `id` (string, required) — Unique ID identifying the existing, persisted tax quote that will be adjusted.

### Headers

- `X-Bc-Store-Hash` (string, required) — BigCommerce will send through the store hash as part of all tax provider operations. Each BigCommerce store on the platform has a unique store hash value for the store’s lifetime. This value can assist in account verification or profile matching responsibilities.

### Body (application/json)

This endpoint expects a request-adjust.

- `id` (string, required) — Unique ID of the taxable document (order, cart, quote, etc) this tax quote request is being generated for. Will remain consistent for the lifetime of the entity being estimated.
- `currency_code` (string, required) — ISO 4217 3 character currency code that all prices on this request are in.
- `customer` (RequestAdjustCustomer, required) — If the shopper is a registered customer in the merchant’s store, basic details for that customer.
- `transaction_date` (datetime, required) — ISO 8601 formatted date the shopper placed this order. Tax quotes are expected to reflect taxes applicable on this date. Dates will be provided in UTC.
- `documents` (list of request-document, required) — One or more consignments containing items being purchased by the shopper, including shipping and handling fees that are charged for each consignment. Most orders will contain a single consignment (to a single shipping address), however the BigCommerce platform also supports "Multi-address orders" which allow shoppers to place a single order with items shipped to different addresses.
- `adjust_description` (string, optional) — Specifies the reason for the adjustment operation, for auditing purposes. May be a custom, user-entered description.

## Response

### 200

Returned Tax Quote response matches the updated QuoteRequest provided to the service method.

- `id` (string, required) — The unique identifier of the tax quote that was requested. This value must either match the ID of the requested quote or be an external ID on the tax provider’s system. This value will be used for future adjust and void operations.
- `documents` (list of response-document, required) — Represents an order quote or part of an order quote of tax-relevant items fulfilled from a single origin address to a single destination address, including arrays of shipping and handling fee objects for each item. Most order quotes contain a single document; however, BigCommerce supports "multi-address orders", which may come from or go to distinct sets of addresses and thus require multiple documents per quote.

## Errors

### 400 Bad Request Error

General response that points to an issue with the incoming request that means a valid response is unable to be returned.

- `any`

### 401 Unauthorized Error

Response to indicate that the merchant’s authentication credentials are invalid. The merchant will receive an update in their Store Logs.

- `any`

### 500 Internal Server Error

General response that points to an error on the tax provider side. These types of errors should be promptly resolved by the tax provider.

- `id` (string, required) — The unique identifier of the tax quote that was requested. This value must either match the ID of the requested quote or be an external ID on the tax provider’s system. This value will be used for future adjust and void operations.
- `documents` (list of response-document, required) — Represents an order quote or part of an order quote of tax-relevant items fulfilled from a single origin address to a single destination address, including arrays of shipping and handling fee objects for each item. Most order quotes contain a single document; however, BigCommerce supports "multi-address orders", which may come from or go to distinct sets of addresses and thus require multiple documents per quote.

## Types

### RequestAdjustCustomer

If the shopper is a registered customer in the merchant’s store, basic details for that customer.

- `customer_id` (string, required) — The ID of the shoppers customer account in BigCommerce. May be provided as a UUID.
- `customer_group_id` (string, required, default: 0) — The BigCommerce customer group ID assigned to this customer. The default value will be provided if the customer has no group assigned. May be provided as a UUID.
- `taxability_code` (string, optional) — If applicable, the tax exemption code of the shopper’s customer account. A taxability code is intended to apply to multiple customers. This code should match the exemption codes provided by the third-party integration.
- `tax_properties` (list of request-item-tax-property, optional) — Any tax property values that have been associated with this customer. See [Tax Properties API](/developer/api-reference/rest/admin/management/tax/tax-properties) for more information on configuring tax properties.

### request-document

Each **DocumentRequest** represents an order or part of an order of items fulfilled from a single origin address to a single destination address. In addition to shipping and billing details, a document request includes the collection of items in the shipment, with tax-relevant information for each item. Multi-address orders, in which items ship to or from multiple addresses, require at least one **DocumentRequest** per combination of sender-recipient addresses. These are similar to "consignments" or "shipments" in other BigCommerce APIs.

- `id` (string, required) — A unique identifier for this consignment. This value can be expected to be unique within an individual quote request but may be duplicated within subsequent quote requests. A digital consignment will see a prefix **DigitalDelivery_** followed by the Order ID.
- `destination_address` (Address, required) — Requests may have partial Address data. For example, the BigCommerce Cart page has the "Estimate Shipping & Tax" feature which is only expected to supply Country, Region and Postal Code.
- `origin_address` (Address, required) — Requests may have partial Address data. For example, the BigCommerce Cart page has the "Estimate Shipping & Tax" feature which is only expected to supply Country, Region and Postal Code.
- `shipping` (RequestDocumentShipping, required) — Shipping line item present in each document request.
- `handling` (RequestDocumentHandling, required) — Handling line item present in each document request.
- `items` (list of RequestDocumentItemsItems, required) — Collection of one or more items contained within this consignment that need to be assessed for tax liabilities. An item may or may not have gift wrapping.
- `delivery_type` (enum, required) — The method by which the items in this consignment are delivered to the shopper. Digital consignments are always `digital`; physical consignments use the fulfillment method selected at checkout.
  - Allowed values: `digital`, `pickup`, `courier`, `postal`
- `billing_address` (Address, optional) — Requests may have partial Address data. For example, the BigCommerce Cart page has the "Estimate Shipping & Tax" feature which is only expected to supply Country, Region and Postal Code.

### response-document

- `id` (string, required) — A unique identifier for this consignment. Must match the ID of the corresponding Document Request.
- `items` (list of ResponseDocumentItemsItems, required) — Collection of items contained within this consignment that have had tax liabilities calculated. An item may or may not have gift wrapping.
- `shipping` (ResponseDocumentShipping, required) — Shipping line item present in each document request.
- `handling` (ResponseDocumentHandling, required) — Handling line item present in each document request.
- `external_id` (string, optional) — An optional unique identifier for the document stored in the external provider’s system. Currently not used in any end-to-end operation, but may be logged by BigCommerce and thus be helpful when resolving issues.

### request-item-tax-property

A simple key value pairing allowing merchants to provide an additional input into a tax providerʼs tax calculation.

- `code` (string, required) — Used by tax providers to programmatically identify a specific calculation input.
- `value` (string, required) — The value that will be factored into the tax providerʼs tax calculation rules, where supported.

### Address

Requests may have partial Address data. For example, the BigCommerce Cart page has the "Estimate Shipping & Tax" feature which is only expected to supply Country, Region and Postal Code.

- `line1` (string, optional) — Primary street address.
- `line2` (string, optional) — Apartment, unit, suite, building, floor, etc.
- `city` (string, optional) — City, suburb, township, etc.
- `region_name` (string, optional) — State, province, territory, etc.
- `region_code` (string, optional) — If available, the short code/acronym for the region. For example, "CA" for "California" or "NSW" for "New South Wales".
- `country_name` (string, optional) — The human-readable country name.
- `country_code` (string, optional) — ISO 3166-1 alpha-2 format country code.
- `postal_code` (string, optional) — Postcode, ZIP, etc. Optional.
- `type` (enum, optional)
  - Allowed values: `RESIDENTIAL`, `COMMERCIAL`
- `company_name` (string, optional, deprecated) — If this is a commercial address, the associated company’s name.

### RequestDocumentShipping

Shipping line item present in each document request.

- `id` (string, required) — A unique identifier for this item used to map responses back to the corresponding item on the order.
- `price` (RequestDocumentShippingPrice, required) — The final sale price (after discounts, bulk pricing, price lists, etc.) prior to having taxes calculated. If the merchant lists prices inclusive of tax, this price will already be tax inclusive, and so the tax provider will instead calculate the amount of tax that was already included in this price. For multiple quantities, this price includes that multiplication.
- `quantity` (integer, required)
- `type` (enum, required) — The type of item for the line item in the document.
  - Allowed values: `shipping`
- `item_code` (string, optional) — The UPC or SKU of the item. The UPC is used when both UPC and SKU values are available on the item. Empty string if both UPC and SKU are not available.
- `item_reference` (string, optional) — The SKU of the item. Empty string if SKU is not available.
- `name` (string, optional) — A display name for this item.
- `tax_class` (TaxClass, optional)
- `tax_exempt` (boolean, optional, default: false) — Flag whether or not this item is always tax-exempt. For example, gift certificate purchases and order-level refunds are tax-exempt. Tax-exempt items are included in the request for auditing purposes. Tax-exempt items must have a tax amount of zero within the tax quote response.
- `tax_properties` (list of request-item-tax-property, optional) — Merchants may opt to include additional properties that a tax provider can choose to support, factoring these values into tax calculation. See [Tax Properties API](/developer/api-reference/rest/admin/management/tax/tax-properties) for more information on configuring tax properties.

### RequestDocumentHandling

Handling line item present in each document request.

- `id` (string, required) — A unique identifier for this item used to map responses back to the corresponding item on the order.
- `price` (RequestDocumentHandlingPrice, required) — The final sale price (after discounts, bulk pricing, price lists, etc.) prior to having taxes calculated. If the merchant lists prices inclusive of tax, this price will already be tax inclusive, and so the tax provider will instead calculate the amount of tax that was already included in this price. For multiple quantities, this price includes that multiplication.
- `quantity` (integer, required)
- `type` (enum, required) — The type of item for the line item in the document.
  - Allowed values: `handling`
- `item_code` (string, optional) — The UPC or SKU of the item. The UPC is used when both UPC and SKU values are available on the item. Empty string if both UPC and SKU are not available.
- `item_reference` (string, optional) — The SKU of the item. Empty string if SKU is not available.
- `name` (string, optional) — A display name for this item.
- `tax_class` (TaxClass, optional)
- `tax_exempt` (boolean, optional, default: false) — Flag whether or not this item is always tax-exempt. For example, gift certificate purchases and order-level refunds are tax-exempt. Tax-exempt items are included in the request for auditing purposes. Tax-exempt items must have a tax amount of zero within the tax quote response.
- `tax_properties` (list of request-item-tax-property, optional) — Merchants may opt to include additional properties that a tax provider can choose to support, factoring these values into tax calculation. See [Tax Properties API](/developer/api-reference/rest/admin/management/tax/tax-properties) for more information on configuring tax properties.

### RequestDocumentItemsItems

An **ItemRequest** represents required information relating to completing tax calculations for a specific line item.

- `id` (string, required) — A unique identifier for this item used to map responses back to the corresponding item on the order.
- `price` (RequestDocumentItemsItemsPrice, required) — The final sale price (after discounts, bulk pricing, price lists, etc.) prior to having taxes calculated. If the merchant lists prices inclusive of tax, this price will already be tax inclusive, and so the tax provider will instead calculate the amount of tax that was already included in this price. For multiple quantities, this price includes that multiplication.
- `quantity` (integer, required)
- `type` (enum, required) — The type of item for the line item in the document. Tax estimate requests for order-level refunds have an additional line item with the type `refund`.
  - Allowed values: `item`, `refund`, `fee`
- `item_code` (string, optional) — The UPC or SKU of the item. The UPC is used when both UPC and SKU values are available on the item. Empty string if both UPC and SKU are not available.
- `item_reference` (string, optional) — The SKU of the item. Empty string if SKU is not available.
- `name` (string, optional) — A display name for this item.
- `tax_class` (TaxClass, optional)
- `tax_exempt` (boolean, optional, default: false) — Flag whether or not this item is always tax-exempt. For example, gift certificate purchases and order-level refunds are tax-exempt. Tax-exempt items are included in the request for auditing purposes. Tax-exempt items must have a tax amount of zero within the tax quote response.
- `tax_properties` (list of request-item-tax-property, optional) — Merchants may opt to include additional properties that a tax provider can choose to support, factoring these values into tax calculation. See [Tax Properties API](/developer/api-reference/rest/admin/management/tax/tax-properties) for more information on configuring tax properties.
- `wrapping` (RequestDocumentItemsItemsWrapping, optional) — Optional gift wrapping for items in the consignment.

### ResponseDocumentItemsItems

The tax liabilities calculated for a specific item. Note: Tax liabilities should be calculated with **quantity** accounted for.

- `id` (string, required) — A unique identifier for the line item these tax liabilities are calculated for. Must match the corresponding request line item ID.
- `price` (response-taxprice, required)
- `type` (enum, required) — The type of item for the line item in the document. Tax estimate requests for order-level refunds have an additional line item with the type `refund`.
  - Allowed values: `item`, `refund`, `fee`
- `wrapping` (ResponseDocumentItemsItemsWrapping, optional) — Optional gift wrapping for items in the consignment.

### ResponseDocumentShipping

Shipping line item present in each document request.

- `id` (string, required) — A unique identifier for the line item these tax liabilities are calculated for. Must match the corresponding request line item ID.
- `price` (response-taxprice, required)
- `type` (enum, required) — The type of item for the line item in the document.
  - Allowed values: `shipping`

### ResponseDocumentHandling

Handling line item present in each document request.

- `id` (string, required) — A unique identifier for the line item these tax liabilities are calculated for. Must match the corresponding request line item ID.
- `price` (response-taxprice, required)
- `type` (enum, required) — The type of item for the line item in the document.
  - Allowed values: `handling`

### RequestDocumentShippingPrice

The final sale price (after discounts, bulk pricing, price lists, etc.) prior to having taxes calculated. If the merchant lists prices inclusive of tax, this price will already be tax inclusive, and so the tax provider will instead calculate the amount of tax that was already included in this price. For multiple quantities, this price includes that multiplication.

- `amount` (double, required) — Note: This amount will be **negative** for order-level refunds and may be **zero** for line item refunds.
- `tax_inclusive` (boolean, required, default: false) — Note: **Tax Inclusive** and **Tax Exclusive** prices cannot be added together.

### TaxClass

- `code` (string, required) — The provider-specific tax code for this item. Items can be classified with tax codes relevant to each tax provider, configured by the merchant, and assigned to their products within BigCommerce. A tax code is intended to apply to multiple products. This code should match the tax codes provided by the third-party integration.
- `class_id` (string, required) — The ID of the tax class defined in the merchant’s BigCommerce store. May have a UUID value.
- `name` (string, required) — The human-readable name of this tax class in the merchant’s BigCommerce store.

### RequestDocumentHandlingPrice

The final sale price (after discounts, bulk pricing, price lists, etc.) prior to having taxes calculated. If the merchant lists prices inclusive of tax, this price will already be tax inclusive, and so the tax provider will instead calculate the amount of tax that was already included in this price. For multiple quantities, this price includes that multiplication.

- `amount` (double, required) — Note: This amount will be **negative** for order-level refunds and may be **zero** for line item refunds.
- `tax_inclusive` (boolean, required, default: false) — Note: **Tax Inclusive** and **Tax Exclusive** prices cannot be added together.

### RequestDocumentItemsItemsPrice

The final sale price (after discounts, bulk pricing, price lists, etc.) prior to having taxes calculated. If the merchant lists prices inclusive of tax, this price will already be tax inclusive, and so the tax provider will instead calculate the amount of tax that was already included in this price. For multiple quantities, this price includes that multiplication.

- `amount` (double, required) — Note: This amount will be **negative** for order-level refunds and may be **zero** for line item refunds.
- `tax_inclusive` (boolean, required, default: false) — Note: **Tax Inclusive** and **Tax Exclusive** prices cannot be added together.

### RequestDocumentItemsItemsWrapping

Optional gift wrapping for items in the consignment.

- `id` (string, required) — A unique identifier for this item used to map responses back to the corresponding item on the order.
- `price` (RequestDocumentItemsItemsWrappingPrice, required) — The final sale price (after discounts, bulk pricing, price lists, etc.) prior to having taxes calculated. If the merchant lists prices inclusive of tax, this price will already be tax inclusive, and so the tax provider will instead calculate the amount of tax that was already included in this price. For multiple quantities, this price includes that multiplication.
- `quantity` (integer, required)
- `type` (enum, required) — The type of item for the line item in the document.
  - Allowed values: `wrapping`
- `item_code` (string, optional) — The UPC or SKU of the item. The UPC is used when both UPC and SKU values are available on the item. Empty string if both UPC and SKU are not available.
- `item_reference` (string, optional) — The SKU of the item. Empty string if SKU is not available.
- `name` (string, optional) — A display name for this item.
- `tax_class` (TaxClass, optional)
- `tax_exempt` (boolean, optional, default: false) — Flag whether or not this item is always tax-exempt. For example, gift certificate purchases and order-level refunds are tax-exempt. Tax-exempt items are included in the request for auditing purposes. Tax-exempt items must have a tax amount of zero within the tax quote response.
- `tax_properties` (list of request-item-tax-property, optional) — Merchants may opt to include additional properties that a tax provider can choose to support, factoring these values into tax calculation. See [Tax Properties API](/developer/api-reference/rest/admin/management/tax/tax-properties) for more information on configuring tax properties.

### response-taxprice

- `amount_inclusive` (double, required) — The price of this line item inclusive of tax. Must be equal to **amount_exclusive** + **total_tax**. Although the primary type is `double`, this field also accepts a numeric string (for example, `"675.00"`).
- `amount_exclusive` (double, required) — The price of this line item exclusive of tax. Must be equal to **amount_inclusive** - **total_tax**. Although the primary type is `double`, this field also accepts a numeric string (for example, `"450.00"`).
- `total_tax` (double, required) — The total amount of tax that applied to this line item. Must be equal to **amount_inclusive** - **amount_exclusive**. Although the primary type is `double`, this field also accepts a numeric string (for example, `"225.00"`).
- `tax_rate` (double, required) — The total tax rate that applied to this item. This is the aggregated rate of the individual rates in **sales_tax_summary**.
- `sales_tax_summary` (list of SalesTax, required) — Breakdown of the sales taxes that applied to this item.

### ResponseDocumentItemsItemsWrapping

Optional gift wrapping for items in the consignment.

- `id` (string, required) — A unique identifier for the line item these tax liabilities are calculated for. Must match the corresponding request line item ID.
- `price` (response-taxprice, required)
- `type` (enum, required) — The type of item for the line item in the document.
  - Allowed values: `wrapping`

### RequestDocumentItemsItemsWrappingPrice

The final sale price (after discounts, bulk pricing, price lists, etc.) prior to having taxes calculated. If the merchant lists prices inclusive of tax, this price will already be tax inclusive, and so the tax provider will instead calculate the amount of tax that was already included in this price. For multiple quantities, this price includes that multiplication.

- `amount` (double, required) — Note: This amount will be **negative** for order-level refunds and may be **zero** for line item refunds.
- `tax_inclusive` (boolean, required, default: false) — Note: **Tax Inclusive** and **Tax Exclusive** prices cannot be added together.

### SalesTax

- `name` (string, required) — The human-readable name of this tax. Used for reporting. Depending on store configuration, may also be visible in the itemization of taxes at checkout, on invoices, and in the control panel. May not be empty.
- `rate` (double, required) — Decimal tax rate applied by this component tax rate. Tax rates support up to four decimal places. For example "0.1" for 10% and "0.0125" for 1.25%.
- `amount` (double, required) — The absolute amount of tax applied to the item this SalesTax component is attached to, for this component rate. For example, if an item was $10 and this was a 5% component tax rate, the amount would be 0.50 (50 cents)
- `tax_class` (TaxClass, optional)
- `id` (string, optional) — Optional unique identifier for this sales tax, describing the relevant tax classification rule on the tax provider platform. Supplying an identifier allows BigCommerce to group related taxes together from all items in the order. This identifier is persisted by BigCommerce and may be desirable for auditing purposes between BigCommerce and the tax provider. Currently supports persisting integer values only (the string type indicates we may support UUID values in the future).

## Examples

**Request**

```json
{
  "id": "string",
  "currency_code": "string",
  "customer": {
    "customer_id": "string",
    "customer_group_id": "0"
  },
  "transaction_date": "2024-01-15T09:30:00Z",
  "documents": [
    {
      "id": "string",
      "destination_address": {},
      "origin_address": {},
      "shipping": {
        "id": "string",
        "price": {
          "amount": 1.5,
          "tax_inclusive": false
        },
        "quantity": 1,
        "type": "shipping"
      },
      "handling": {
        "id": "string",
        "price": {
          "amount": 1.5,
          "tax_inclusive": false
        },
        "quantity": 1,
        "type": "handling"
      },
      "items": [
        {
          "id": "string",
          "price": {
            "amount": 1.5,
            "tax_inclusive": false
          },
          "quantity": 1,
          "type": "item"
        }
      ],
      "delivery_type": "courier"
    }
  ]
}
```

**Response**

```json
{
  "id": "3f0c857e-2c55-443e-a89b-c3c4d8a29605",
  "documents": [
    {
      "id": "5d522b889d3d9",
      "items": [
        {
          "id": "088c7465-e5b8-4624-a220-0d9faa82e7cb",
          "price": {
            "amount_inclusive": 675,
            "amount_exclusive": 450,
            "total_tax": 225,
            "tax_rate": 0.5,
            "sales_tax_summary": [
              {
                "name": "Brutal Tax",
                "rate": 0.5,
                "amount": 225,
                "tax_class": {
                  "code": "US",
                  "class_id": "0",
                  "name": "Brutal Tax"
                },
                "id": "Brutal Tax"
              }
            ]
          },
          "type": "item",
          "wrapping": {
            "id": "d2675662-6326-4a23-9107-ab71fa6a21a1",
            "price": {
              "amount_inclusive": 7.5,
              "amount_exclusive": 5,
              "total_tax": 2.5,
              "tax_rate": 0.5,
              "sales_tax_summary": [
                {
                  "name": "BRUTAL TAX",
                  "rate": 0.5,
                  "amount": 2.5,
                  "tax_class": {
                    "code": "US",
                    "class_id": "6",
                    "name": "Wrapping"
                  },
                  "id": "1"
                }
              ]
            },
            "type": "wrapping"
          }
        },
        {
          "id": "d2675662-6326-4a23-9107-ab71fa6a21a1",
          "price": {
            "amount_inclusive": 300,
            "amount_exclusive": 200,
            "total_tax": 100,
            "tax_rate": 0.5,
            "sales_tax_summary": [
              {
                "name": "Brutal Tax",
                "rate": 0.5,
                "amount": 100,
                "tax_class": {
                  "code": "US",
                  "class_id": "0",
                  "name": "Brutal Tax"
                },
                "id": "Brutal Tax"
              }
            ]
          },
          "type": "item",
          "wrapping": {
            "id": "d2675662-6326-4a23-9107-ab71fa6a21a1",
            "price": {
              "amount_inclusive": 7.5,
              "amount_exclusive": 5,
              "total_tax": 2.5,
              "tax_rate": 0.5,
              "sales_tax_summary": [
                {
                  "name": "BRUTAL TAX",
                  "rate": 0.5,
                  "amount": 2.5,
                  "tax_class": {
                    "code": "US",
                    "class_id": "6",
                    "name": "Wrapping"
                  },
                  "id": "1"
                }
              ]
            },
            "type": "wrapping"
          }
        }
      ],
      "shipping": {
        "id": "5d522b889d3d9",
        "price": {
          "amount_inclusive": 15,
          "amount_exclusive": 10,
          "total_tax": 5,
          "tax_rate": 0.5,
          "sales_tax_summary": [
            {
              "name": "Brutal Tax",
              "rate": 0.5,
              "amount": 5,
              "tax_class": {
                "code": "US",
                "class_id": "0",
                "name": "Brutal Tax"
              },
              "id": "Brutal Tax"
            }
          ]
        },
        "type": "shipping"
      },
      "handling": {
        "id": "5d522b889d3d9",
        "price": {
          "amount_inclusive": 0,
          "amount_exclusive": 0,
          "total_tax": 0,
          "tax_rate": 0.5,
          "sales_tax_summary": [
            {
              "name": "Brutal Tax",
              "rate": 0.5,
              "amount": 0,
              "tax_class": {
                "code": "US",
                "class_id": "0",
                "name": "Brutal Tax"
              },
              "id": "Brutal Tax"
            }
          ]
        },
        "type": "handling"
      }
    }
  ]
}
```

**SDK Code**

```python response
import requests

url = "https://your_app.example.com/adjust"

querystring = {"id":"id"}

payload = {
    "id": "string",
    "currency_code": "string",
    "customer": {
        "customer_id": "string",
        "customer_group_id": "0"
    },
    "transaction_date": "2024-01-15T09:30:00Z",
    "documents": [
        {
            "id": "string",
            "destination_address": {},
            "origin_address": {},
            "shipping": {
                "id": "string",
                "price": {
                    "amount": 1.5,
                    "tax_inclusive": False
                },
                "quantity": 1,
                "type": "shipping"
            },
            "handling": {
                "id": "string",
                "price": {
                    "amount": 1.5,
                    "tax_inclusive": False
                },
                "quantity": 1,
                "type": "handling"
            },
            "items": [
                {
                    "id": "string",
                    "price": {
                        "amount": 1.5,
                        "tax_inclusive": False
                    },
                    "quantity": 1,
                    "type": "item"
                }
            ],
            "delivery_type": "courier"
        }
    ]
}
headers = {
    "X-Bc-Store-Hash": "X-Bc-Store-Hash"
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers, params=querystring, auth=("<username>", "<password>"))

print(response.json())
```

```javascript response
const url = 'https://your_app.example.com/adjust?id=id';
const credentials = btoa("<username>:<password>");

const options = {
  method: 'POST',
  headers: {
    'X-Bc-Store-Hash': 'X-Bc-Store-Hash',
    Authorization: `Basic ${credentials}`,
    'Content-Type': 'application/json'
  },
  body: '{"id":"string","currency_code":"string","customer":{"customer_id":"string","customer_group_id":"0"},"transaction_date":"2024-01-15T09:30:00Z","documents":[{"id":"string","destination_address":{},"origin_address":{},"shipping":{"id":"string","price":{"amount":1.5,"tax_inclusive":false},"quantity":1,"type":"shipping"},"handling":{"id":"string","price":{"amount":1.5,"tax_inclusive":false},"quantity":1,"type":"handling"},"items":[{"id":"string","price":{"amount":1.5,"tax_inclusive":false},"quantity":1,"type":"item"}],"delivery_type":"courier"}]}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go response
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://your_app.example.com/adjust?id=id"

	payload := strings.NewReader("{\n  \"id\": \"string\",\n  \"currency_code\": \"string\",\n  \"customer\": {\n    \"customer_id\": \"string\",\n    \"customer_group_id\": \"0\"\n  },\n  \"transaction_date\": \"2024-01-15T09:30:00Z\",\n  \"documents\": [\n    {\n      \"id\": \"string\",\n      \"destination_address\": {},\n      \"origin_address\": {},\n      \"shipping\": {\n        \"id\": \"string\",\n        \"price\": {\n          \"amount\": 1.5,\n          \"tax_inclusive\": false\n        },\n        \"quantity\": 1,\n        \"type\": \"shipping\"\n      },\n      \"handling\": {\n        \"id\": \"string\",\n        \"price\": {\n          \"amount\": 1.5,\n          \"tax_inclusive\": false\n        },\n        \"quantity\": 1,\n        \"type\": \"handling\"\n      },\n      \"items\": [\n        {\n          \"id\": \"string\",\n          \"price\": {\n            \"amount\": 1.5,\n            \"tax_inclusive\": false\n          },\n          \"quantity\": 1,\n          \"type\": \"item\"\n        }\n      ],\n      \"delivery_type\": \"courier\"\n    }\n  ]\n}")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("X-Bc-Store-Hash", "X-Bc-Store-Hash")
	req.SetBasicAuth("<username>", "<password>")
	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby response
require 'uri'
require 'net/http'

url = URI("https://your_app.example.com/adjust?id=id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["X-Bc-Store-Hash"] = 'X-Bc-Store-Hash'
request.basic_auth("<username>", "<password>")
request["Content-Type"] = 'application/json'
request.body = "{\n  \"id\": \"string\",\n  \"currency_code\": \"string\",\n  \"customer\": {\n    \"customer_id\": \"string\",\n    \"customer_group_id\": \"0\"\n  },\n  \"transaction_date\": \"2024-01-15T09:30:00Z\",\n  \"documents\": [\n    {\n      \"id\": \"string\",\n      \"destination_address\": {},\n      \"origin_address\": {},\n      \"shipping\": {\n        \"id\": \"string\",\n        \"price\": {\n          \"amount\": 1.5,\n          \"tax_inclusive\": false\n        },\n        \"quantity\": 1,\n        \"type\": \"shipping\"\n      },\n      \"handling\": {\n        \"id\": \"string\",\n        \"price\": {\n          \"amount\": 1.5,\n          \"tax_inclusive\": false\n        },\n        \"quantity\": 1,\n        \"type\": \"handling\"\n      },\n      \"items\": [\n        {\n          \"id\": \"string\",\n          \"price\": {\n            \"amount\": 1.5,\n            \"tax_inclusive\": false\n          },\n          \"quantity\": 1,\n          \"type\": \"item\"\n        }\n      ],\n      \"delivery_type\": \"courier\"\n    }\n  ]\n}"

response = http.request(request)
puts response.read_body
```

```java response
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.post("https://your_app.example.com/adjust?id=id")
  .header("X-Bc-Store-Hash", "X-Bc-Store-Hash")
  .basicAuth("<username>", "<password>")
  .header("Content-Type", "application/json")
  .body("{\n  \"id\": \"string\",\n  \"currency_code\": \"string\",\n  \"customer\": {\n    \"customer_id\": \"string\",\n    \"customer_group_id\": \"0\"\n  },\n  \"transaction_date\": \"2024-01-15T09:30:00Z\",\n  \"documents\": [\n    {\n      \"id\": \"string\",\n      \"destination_address\": {},\n      \"origin_address\": {},\n      \"shipping\": {\n        \"id\": \"string\",\n        \"price\": {\n          \"amount\": 1.5,\n          \"tax_inclusive\": false\n        },\n        \"quantity\": 1,\n        \"type\": \"shipping\"\n      },\n      \"handling\": {\n        \"id\": \"string\",\n        \"price\": {\n          \"amount\": 1.5,\n          \"tax_inclusive\": false\n        },\n        \"quantity\": 1,\n        \"type\": \"handling\"\n      },\n      \"items\": [\n        {\n          \"id\": \"string\",\n          \"price\": {\n            \"amount\": 1.5,\n            \"tax_inclusive\": false\n          },\n          \"quantity\": 1,\n          \"type\": \"item\"\n        }\n      ],\n      \"delivery_type\": \"courier\"\n    }\n  ]\n}")
  .asString();
```

```php response
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('POST', 'https://your_app.example.com/adjust?id=id', [
  'body' => '{
  "id": "string",
  "currency_code": "string",
  "customer": {
    "customer_id": "string",
    "customer_group_id": "0"
  },
  "transaction_date": "2024-01-15T09:30:00Z",
  "documents": [
    {
      "id": "string",
      "destination_address": {},
      "origin_address": {},
      "shipping": {
        "id": "string",
        "price": {
          "amount": 1.5,
          "tax_inclusive": false
        },
        "quantity": 1,
        "type": "shipping"
      },
      "handling": {
        "id": "string",
        "price": {
          "amount": 1.5,
          "tax_inclusive": false
        },
        "quantity": 1,
        "type": "handling"
      },
      "items": [
        {
          "id": "string",
          "price": {
            "amount": 1.5,
            "tax_inclusive": false
          },
          "quantity": 1,
          "type": "item"
        }
      ],
      "delivery_type": "courier"
    }
  ]
}',
  'headers' => [
    'Content-Type' => 'application/json',
    'X-Bc-Store-Hash' => 'X-Bc-Store-Hash',
  ],
    'auth' => ['<username>', '<password>'],
]);

echo $response->getBody();
```

```csharp response
using RestSharp;
using RestSharp.Authenticators;

var client = new RestClient("https://your_app.example.com/adjust?id=id");
client.Authenticator = new HttpBasicAuthenticator("<username>", "<password>");
var request = new RestRequest(Method.POST);
request.AddHeader("X-Bc-Store-Hash", "X-Bc-Store-Hash");

request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{\n  \"id\": \"string\",\n  \"currency_code\": \"string\",\n  \"customer\": {\n    \"customer_id\": \"string\",\n    \"customer_group_id\": \"0\"\n  },\n  \"transaction_date\": \"2024-01-15T09:30:00Z\",\n  \"documents\": [\n    {\n      \"id\": \"string\",\n      \"destination_address\": {},\n      \"origin_address\": {},\n      \"shipping\": {\n        \"id\": \"string\",\n        \"price\": {\n          \"amount\": 1.5,\n          \"tax_inclusive\": false\n        },\n        \"quantity\": 1,\n        \"type\": \"shipping\"\n      },\n      \"handling\": {\n        \"id\": \"string\",\n        \"price\": {\n          \"amount\": 1.5,\n          \"tax_inclusive\": false\n        },\n        \"quantity\": 1,\n        \"type\": \"handling\"\n      },\n      \"items\": [\n        {\n          \"id\": \"string\",\n          \"price\": {\n            \"amount\": 1.5,\n            \"tax_inclusive\": false\n          },\n          \"quantity\": 1,\n          \"type\": \"item\"\n        }\n      ],\n      \"delivery_type\": \"courier\"\n    }\n  ]\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift response
import Foundation

let credentials = Data("<username>:<password>".utf8).base64EncodedString()

let headers = [
  "X-Bc-Store-Hash": "X-Bc-Store-Hash",
  "Authorization": "Basic \(credentials)",
  "Content-Type": "application/json"
]
let parameters = [
  "id": "string",
  "currency_code": "string",
  "customer": [
    "customer_id": "string",
    "customer_group_id": "0"
  ],
  "transaction_date": "2024-01-15T09:30:00Z",
  "documents": [
    [
      "id": "string",
      "destination_address": [],
      "origin_address": [],
      "shipping": [
        "id": "string",
        "price": [
          "amount": 1.5,
          "tax_inclusive": false
        ],
        "quantity": 1,
        "type": "shipping"
      ],
      "handling": [
        "id": "string",
        "price": [
          "amount": 1.5,
          "tax_inclusive": false
        ],
        "quantity": 1,
        "type": "handling"
      ],
      "items": [
        [
          "id": "string",
          "price": [
            "amount": 1.5,
            "tax_inclusive": false
          ],
          "quantity": 1,
          "type": "item"
        ]
      ],
      "delivery_type": "courier"
    ]
  ]
] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "https://your_app.example.com/adjust?id=id")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```