How it works
Two fields on the landedCostCalculateWorkflow input control this behavior:
taxIdNumber– Your own EU IOSS number. When provided, it is surfaced on the responseremittancelines so you can reconcile what you owe. (taxNumberis a deprecated alias.)taxRemittanceCalculation– Whether Zonos calculates remittance. AcceptsREMITTANCEorNO_REMITTANCE.
When NO_REMITTANCE is honored
NO_REMITTANCE is applied only when you pass your own IOSS number. The number you pass determines the result:
| IOSS number passed↕ | Result↕ |
|---|---|
| None | NO_REMITTANCE is ignored. Zonos calculates remittance as usual. |
| Your own IOSS number | NO_REMITTANCE is honored. You self-remit and the remittance array is empty. |
| Zonos's IOSS number | NO_REMITTANCE is ignored. Zonos calculates and remits as usual. |
REMITTANCE always calculates remittance, regardless of the IOSS number you pass.
Calculate with your IOSS number
Pass taxIdNumber with the behavior you want. For the same EU low-value shipment (goods ≤ €150), taxRemittanceCalculation changes the result.
REMITTANCE — Zonos calculates remittance
Zonos calculates the EU VAT and populates the remittance line, with your IOSS number surfaced for reconciliation.
mutation { landedCostCalculateWorkflow( input: { endUse: NOT_FOR_RESALE method: DDP tariffRate: ZONOS_PREFERRED taxIdNumber: "IM1234567890" taxRemittanceCalculation: REMITTANCE } ) { id taxIdNumber amountSubtotals { duties taxes fees landedCostTotal } taxes { amount description currency } remittance { amount description note taxIdNumber } }}NO_REMITTANCE — you remit under your own IOSS
When you pass your own IOSS number with NO_REMITTANCE on a qualifying EU low-value shipment (ship-to in the EU, arriving on or after 1 July 2026, goods total ≤ €150), Zonos hands VAT off to you: the remittance array is empty and Zonos calculates no VAT on goods, shipping, or duty — you collect and remit it under your own IOSS registration. Outside that low-value window, NO_REMITTANCE only empties the remittance array and the tax totals are unchanged.
mutation { landedCostCalculateWorkflow( input: { endUse: NOT_FOR_RESALE method: DDP tariffRate: ZONOS_PREFERRED taxIdNumber: "IM1234567890" taxRemittanceCalculation: NO_REMITTANCE } ) { id taxIdNumber amountSubtotals { duties taxes fees landedCostTotal } taxes { amount description currency } remittance { amount description note taxIdNumber } }}
Remit EU VAT with your own IOSS number
Pass your own EU IOSS number and control whether Zonos calculates VAT remittance or you remit it yourself.
GraphQL
If you hold your own Import One-Stop Shop (IOSS) registration for the European Union, you can pass your IOSS number on the landed cost calculation and control whether Zonos calculates the VAT remittance. Use this when you collect and remit EU import VAT yourself under your own IOSS registration, rather than remitting through Zonos. Zonos still returns a guaranteed landed cost.