Merchant Management Overview

Provision tax compliance for your customers with two models — self-managed merchants and TaxCloud-connected merchants.

Available onProEnterprise

Merchant Management lets platforms and SaaS businesses provision tax compliance for their own customers. You create a merchant for each seller on your platform, then manage that merchant’s compliance through Ziptax instead of asking every customer to set up tax tooling on their own.

Every merchant uses one of two compliance models. You choose the model at creation time with the merchantType field on POST /merchant/create, and you can move a merchant to the other model later with setMerchantType on POST /merchant/update.

Two compliance models

Self-managed (merchantType: "self-managed"): the merchant is active the moment you create it, with no TaxCloud invite. Your platform tracks the merchant’s nexus footprint on Ziptax — physical locations and economic thresholds — while the merchant remains responsible for their own registration, filing, and remittance.

TaxCloud-connected (merchantType: "taxcloud", the API default): creation kicks off the TaxCloud invite process. The merchant sets up their own TaxCloud account and connects it, and TaxCloud handles compliance end to end — registration, filing, and remittance — in the merchant’s own account, synced to your platform.

Self-managedTaxCloud-connected
API valuemerchantType: "self-managed"merchantType: "taxcloud" (default)
Plan availabilityPro and EnterpriseEnterprise
ActivationActive immediately after creation; no invite sentTaxCloud invite sent to contactEmail; active once the merchant connects
Status on readsexternal_compliancetaxcloud_invitedtaxcloud_connected (or taxcloud_disconnected)
Registration, filing, remittanceThe merchant handles their ownTaxCloud handles all three in the merchant’s account
Nexus trackingYour platform, on Ziptax (Nexus Management)The merchant’s TaxCloud account
Cart tax calculationCalculated by Ziptax, statelessCalculated by TaxCloud, can become an order
Other Merchant Transactions endpointsNot available (403)Available once connected with credentials on file
Switching modelssetMerchantType: "taxcloud" sends the invite and converts to connectedsetMerchantType: "self-managed" disconnects TaxCloud and converts to self-managed

Which model fits?

Start with self-managed if your merchants handle their own compliance, or aren’t ready for a full-service filing relationship. You get merchant records and nexus tracking on Ziptax without any onboarding step for the merchant, plus cart tax calculation at checkout, and you can invite a self-managed merchant to TaxCloud later. The choice is not permanent: either model can be switched to the other with setMerchantType.

Choose TaxCloud-connected to offer full-service compliance — TaxCloud registers, files, and remits on the merchant’s behalf — and to record orders, exemption certificates, and refunds through the full Merchant Transactions set. This model requires the Enterprise plan.

Merchant statuses

merchantType is not returned by POST /merchant/get or GET /merchant/list. The status field is how you tell the two models apart on reads, including after a setMerchantType change:

StatusModelMeaning
external_complianceSelf-managedCompliance is managed outside TaxCloud — what every self-managed merchant reports
taxcloud_invitedTaxCloud-connectedTaxCloud invite sent, not yet accepted
taxcloud_connectedTaxCloud-connectedTaxCloud credentials set and active
taxcloud_disconnectedTaxCloud-connectedPreviously connected, credentials removed

Available resources