Skip to main content
A merchant is a seller on your platform. Create one per seller, then pass it on a platform calculation to give the calculation the seller’s context. Its default_address is the origin address for tax sourcing. Merchants are available from API version 2026-01-01. Send X-API-Version on every request.
Where merchants fit

The Merchant object

Attributes

string
The ID of the merchant, merch_….
string, value is "tax.merchant"
String representing the object’s type.
string
Your ID for this merchant. Unique among your merchants in the same mode (test or live). Can’t be changed after creation. See Your own merchant IDs.
string
The merchant’s business name.
string
The merchant’s email address.
object
The merchant’s business address. Used as the origin address in platform calculations unless the calculation overrides it. Some jurisdictions, like origin-based US states, use the seller’s location to set the rate.
string
string
Optional second address line.
string
string
ISO 3166-2 subdivision code.
string
string
ISO 3166-1 alpha-2 country code.
array of objects
The merchant’s tax IDs. They identify the selling entity for documentation and reporting. A platform calculation can override them with merchant.tax_ids.
string
Tax ID type, e.g. us_ein, eu_vat, or gb_vat. See tax IDs for every type.
string
The tax ID, 1–100 characters.
enum
active or deleted.
boolean
true if made with a test API key. Test and live merchants are separate: each is only visible with keys from its own mode.
timestamp
Unix seconds when the merchant was created. updated_at follows the same pattern.
object
Key-value pairs from the request.
The Merchant object

Your own merchant IDs

Send a reference_merchant_id when you create a merchant, and you can use it anywhere the merchant’s id works:
  • Retrieve, update, and delete it: /tax/merchants/my-seller-123.
  • Calculate with it: "merchant": { "merchant_id": "my-seller-123" }.
reference_merchant_id must be unique among your merchants in the same mode (test or live). You can’t change it after creation.
Merchants made with a test API key are only visible with test keys, and live merchants only with live keys. Using a merchant from the other mode returns MERCHANT_NOT_FOUND.
Using your own ID

Create a merchant

Creates a merchant. Every field is optional. Try it in the API reference.

Parameters

string
Your ID for this merchant. Must be unique among your merchants in the same mode (test or live).
string
The merchant’s business name.
string
The merchant’s email address.
object
The merchant’s business address, used as the origin address in platform calculations.
string
required
string
string
required
string
required
ISO 3166-2 subdivision code.
string
required
string
required
ISO 3166-1 alpha-2 country code.
array of objects
The merchant’s tax IDs.
string
required
Tax ID type, e.g. us_ein or eu_vat. See tax IDs.
string
required
The tax ID, 1–100 characters.
object
String key-value pairs. At most 50 keys. Keys and values up to 255 characters.

Returns

A Merchant object.
POST /tax/merchants
Response

Update a merchant

Updates a merchant. Send only the fields you want to change. Try it in the API reference.You can’t change reference_merchant_id.

Parameters

string
required
The merchant’s id or your reference_merchant_id.
string
The merchant’s business name.
string
The merchant’s email address.
object
The merchant’s business address. If you send it, send every required address field. Same fields as on create.
array of objects
Replaces all of the merchant’s existing tax IDs. Same fields as on create.
object
String key-value pairs.

Returns

The updated Merchant object.
POST /tax/merchants/:id
Response

Retrieve a merchant

Returns a merchant by its id or your reference_merchant_id. Try it in the API reference.
string
required
The merchant’s id (e.g. merch_1765503753979c37c5f24) or your reference_merchant_id (e.g. my-seller-123).

Returns

A Merchant object.
GET /tax/merchants/:id

List all merchants

Returns your merchants, one page at a time. Deleted merchants aren’t included. Try it in the API reference.
integer
default:"10"
Maximum number of merchants to return. Up to 100.
string
The last_merchant_id from the previous page.

Returns

An object with a merchants array of Merchant objects, has_more (whether there are more to fetch), and last_merchant_id (the cursor for the next page).
GET /tax/merchants
Response

Delete a merchant

Deletes a merchant. Try it in the API reference.
  • The merchant no longer appears in retrieve or list calls.
  • It can’t be used in new platform calculations. Its ID returns MERCHANT_NOT_FOUND.
  • Historical data is kept for reporting.
string
required
The merchant’s id or your reference_merchant_id.

Returns

The merchant’s id, object, deleted (always true), and deleted_at (Unix seconds).
DELETE /tax/merchants/:id
Response

Errors

Errors return code, type, and message. Handle them by type. Full list in Error Codes.
404