Skip to main content
POST
/
shipping
/
duties-and-taxes
curl --request POST \
  --url https://panel.sendcloud.sc/api/v3/shipping/duties-and-taxes \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "from_address": {
    "country_code": "NL",
    "postal_code": "5611"
  },
  "to_address": {
    "country_code": "US",
    "postal_code": "90210"
  },
  "items": [
    {
      "description": "leather oxford shoes",
      "hs_code": "640359",
      "quantity": 2,
      "price": {
        "value": "49.99",
        "currency": "EUR"
      },
      "weight": {
        "value": "0.8",
        "unit": "kg"
      },
      "origin_country": "CN",
      "sku": "SHOE-001"
    }
  ],
  "shipping_cost": {
    "value": "14.99",
    "currency": "EUR"
  },
  "weight": {
    "value": "2.1",
    "unit": "kg"
  },
  "currency": "EUR"
}
'
{
  "data": {
    "items": [
      {
        "sku": "SHOE-001",
        "description": "leather oxford shoes",
        "hs_code": "640359",
        "hs_code_description": "Oxford shoes leather",
        "quantity": 2,
        "item_value": {
          "value": "99.98",
          "currency": "EUR"
        },
        "duty_rate": "27.50",
        "tax_rate": "10.50",
        "duty": {
          "value": "27.49",
          "currency": "EUR"
        },
        "tax": {
          "value": "13.38",
          "currency": "EUR"
        },
        "item_total": {
          "value": "140.85",
          "currency": "EUR"
        },
        "warnings": []
      }
    ],
    "totals": {
      "items_value": {
        "value": "99.98",
        "currency": "EUR"
      },
      "shipping_cost": {
        "value": "14.99",
        "currency": "EUR"
      },
      "total_duty": {
        "value": "27.49",
        "currency": "EUR"
      },
      "total_tax": {
        "value": "13.38",
        "currency": "EUR"
      },
      "total": {
        "value": "155.84",
        "currency": "EUR"
      }
    },
    "de_minimis": {
      "duty_threshold": {
        "value": "0",
        "currency": "EUR"
      },
      "tax_threshold": {
        "value": "0",
        "currency": "EUR"
      }
    },
    "calculated_at": "2026-04-29T14:39:12.687Z"
  }
}

Documentation Index

Fetch the complete documentation index at: https://sendcloud.dev/llms.txt

Use this file to discover all available pages before exploring further.

This endpoint is currently in beta and available to enterprise customers in a pilot program. Contact your Customer Success Manager to enable it for your account. While the core functionality is stable, some details or behavior may change as the API is finalized.

What this endpoint does

For a given shipment (from/to country, items with HS codes), this endpoint returns:
  • The customs duty payable on each item (a tariff charged on goods crossing a border)
  • The import tax (VAT/GST) payable on each item
  • The destination country’s de minimis thresholds (below which duty/tax is waived)
  • A shipment-level total including items, duty, tax, and shipping cost

Improving accuracy

The more information you provide, the more accurate the calculation:
  • hs_code — the 6-digit Harmonized System code is the most important input. Without it, classification falls back to the description and accuracy drops.
  • description — should be a plain product description (e.g. “leather oxford shoes”), not a marketing title (e.g. “Premium Italian Handcrafted Genuine Leather Dress Shoe — Free Shipping”). Vague terms like “gift”, “sample”, or “parts” reduce accuracy.
  • origin_country — affects duty rates. Goods from countries with trade agreements may have lower rates.
  • shipping_cost — some destinations (e.g. US) include shipping in the dutiable value.
  • weight — required for some destinations (e.g. Switzerland) and improves accuracy on heavy shipments.

Authentication

Use Sendcloud Basic Auth — your Public Key as username, Secret Key as password.

Authorizations

Authorization
string
header
required

Basic Authentication using API key and secrets is currently the main authentication mechanism.

Body

application/json

Shipment details for the duty/tax calculation.

from_address
Duties and Taxes Simplified Address · object
required

Sender address.

to_address
Duties and Taxes Simplified Address · object
required

Destination address.

items
Duties and Taxes Item · object[]
required

Items in the shipment. Each item is calculated individually based on its HS code, value, and origin country.

Required array length: 1 - 10 elements
shipping_cost
Price Object · object

Cost of shipping the consignment. Some destinations (e.g. US) include shipping in the dutiable value, so providing this improves accuracy of results.

weight
Weight · object

Gross weight of the shipment (all items + packaging). Improves accuracy for weight-based duty calculations and is required for some destinations like Switzerland.

currency
string
default:EUR

3-letter ISO 4217 currency code. All response values will be returned in this currency.

Example:

"EUR"

options
Duties and Taxes Options · object

Optional flags that affect the calculation.

Response

Duty and tax calculation result.

data
Duties and Taxes Result · object
required