tax.cartTaxes
This method is used to calculate the Cart taxes.
Version
v2
Arguments
This method has the path /catalog/<version>/tax.cartTaxes and
follows the MicroBase API calling conventions.
| Argument | Required | Type | Example | Description |
|---|---|---|---|---|
| gateway | yes | String | avalara | The taxes gateway to use. |
| cart | yes | Object | The cart to calculate |
cart
| Argument | Required | Type | Example | Description |
|---|---|---|---|---|
| cartId | yes | String | default | Identifier to be used as a reference. |
| items | yes | Object List | - | The list of entries in the Cart. |
Items
| Argument | Required | Type | Example | Description |
|---|---|---|---|---|
| id | yes | String | HyR1hMmc | Entry id. |
| productId | yes | String | By2ZWfAPnV | The Product Id. |
| taxCode | yes | String | default | The Product tax code |
| isNetPrice | yes | Boolean | false | The Product price type |
| quantity | No | Number | 1 | The quantity of product in the entry. |
| price | yes | Object | {"amount": 10000, "currency": "EUR", "precision": 2} | The total price of this item (Not the single Product price). |
Price
| Argument | Required | Type | Example | Description |
|---|---|---|---|---|
| amount | yes | Numeric | 10000 | The amount. In minimum units (cents for precision 2) |
| currency | yes | String | EUR | The currency code (ISO 4217) |
| precision | yes | Numeric | 2 | Currency dependant precision (USD=2, JPY=0, JOD=3) |
Response
Returns a Tax object:
{
"ok": true,
"cart": {
"items": [{
"id": "HJyElmm9",
"productId": "By2ZWfAPnV",
"taxCode": "default",
"isNetPrice": false,
"quantity": 1,
"price": { "amount": 10000, "currency": "EUR", "precision": 2},
"taxes": [
{
"beforeTax": { "amount": 10000, "currency": "EUR", "precision": 2},
"tax": { "amount": 700, "currency": "EUR", "precision": 2 },
"taxDetail": "VAT 7%"
}
]
}]
}
}Errors
Expected errors that this method could return. Some errors return additional data.
| Error | Data | Description |
|---|---|---|
| validation_error | The data causing the error | Some validation error |
Example
curl --request POST \
--url http://localhost:3000/services/catalog/v1/tax.cartTaxes \
--header 'authorization: Bearer xxxxx...' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{
"cart": {
"cartId": 'H19PRsec', \
"items": \
[ { "id": "HJyElmm9", \
"productId": 'By2ZWfAPnV', \
"taxCode": "default",
"isNetPrice": false,
"quantity": 1, \
"price": { "amount": 10000, "currency": "EUR", "precision": 2 } ] \
} \
}' 