PUT
Set taxes of an item
Company space For: Manager, Accountant · Permission: variant_taxes.update, bundle_taxes.update Conditions
  • The permission depends on the type of item: variant_taxes.update or bundle_taxes.update.
  • At least one of tax_configuration_mode, is_taxable, vat_rate_id or tax_ids must be sent, and no other field is accepted.
  • In custom mode is_taxable must be known: sent now or already stored; it cannot be null.
  • In inherit mode tax_ids must be empty; listing taxes explicitly is refused.
  • vat_rate_id must be an active VAT rate of the organization’s tax profile; every tax in tax_ids must be active, of item scope, not of kind VAT and listed only once.
  • The change is refused when it would make a stored price of this item impossible to calculate, unless it was already impossible.
What else happens
  • Writes the item’s tax configuration for the current fiscal profile; the mode defaults to inherit when none exists. In inherit mode is_taxable and vat_rate_id are stored as null and the item follows its category.
  • Replaces the item’s explicit taxes with tax_ids, keeping the order sent; in inherit mode it deletes any explicit tax of the item.
  • Changes how stored prices of this item are taxed.
Part of Apply taxes to products and orders.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

stockable
string
required

Identifier of the sellable item (stockable): the stockable record of a product variant or of a bundle, not the variant or bundle identifier itself.

Query Parameters

response
enum<string>
default:none

Response mode. Default none; none answers 204 No Content.

Available options:
none,
resource
fields
string

Comma-separated JSON keys of the root resource (id is always rendered). Available: id, country_code, fiscal_status, kind, is_builtin, name, code, amount_type, rate, fixed_amount, default_stockable_price_inclusion_policy, default_order_calculation_base, application_scope, is_active, dependencies, created_at, updated_at.

include
string

Comma-separated include paths, each optionally followed by its fields in parentheses: units(id,sku),units.uomUnit(id,name). Max depth 6, max 40 paths. Available: .

Body

application/json
is_taxable
boolean

Whether the item is taxed, used in custom mode (required then, sent or already stored). Ignored and stored as null in inherit mode.

vat_rate_id
string | null

Identifier of an active VAT rate of the organization's tax profile, used in custom mode. null clears it; omitted keeps the stored value; stored as null in inherit mode.

Required string length: 27
tax_configuration_mode
enum<string>

inherit: the item follows its category and no explicit taxes are allowed (existing ones are deleted); custom: the item uses its own taxable flag, VAT rate and taxes. When omitted, the stored mode is kept, or inherit when none exists.

Available options:
inherit,
custom
tax_ids
string[]

Identifiers (27-character KSUID strings) of the item's additional taxes, in the order they apply. The list replaces the stored one. Must be empty in inherit mode; taxes must be active, of item scope, not of kind VAT, and listed once. At least one of the four fields is required.

Required string length: 27

Response

Resource (only with response=resource).

data
TaxResource · object[]
required

Items of this page.