Skip to content

Getting Started

Duty Pro enables logistics companies and merchants to manage customs duties, tariffs, and ancillary fees for cross-border shipments. The platform calculates fees, communicates charges to end-customers (consignees), collects payments securely, and relays status data back to your systems.

  1. You submit a shipment via the API with item details, origin, destination, and consignee contact information.
  2. Duty Pro resolves HS codes, calculates duties and taxes using Exelot’s tariff database, and applies your configured additional fees.
  3. The consignee receives an email and/or SMS with a payment link.
  4. The consignee pays on a branded payment page.
  5. Duty Pro relays status updates back to your systems via webhook or SFTP.
TermDefinition
BrandA customer-facing identity under your organization. Each brand has its own visual identity, fee schedule, payment configuration, and communication preferences. You can have multiple brands.
ShipmentA cross-border package submitted via API for fee calculation. Belongs to a brand.
ConsigneeThe individual receiving a shipment and paying customs fees via the payment page.
HS CodeHarmonized System code used internationally to classify traded products for customs purposes. If you don’t provide one, Duty Pro classifies the item automatically.

Log in to the Duty Pro dashboard and navigate to Settings > API Keys. Generate a test key (dp_test_...) to start experimenting without real charges or notifications.

Terminal window
curl -X POST https://api.dutypro.exelot.com/api/shipments/ \
-H "Content-Type: application/json" \
-H "X-API-Key: dp_test_YOUR_KEY_HERE" \
-d '{
"brand_id": "my-brand",
"currency": "USD",
"items": [
{
"description": "Leather handbag",
"declared_value": 150.00,
"currency": "USD",
"country_of_origin": "CN",
"quantity": 1
}
],
"reference": "ORD-2026-00123",
"consignee_name": "Jane Smith",
"consignee_email": "jane@example.com",
"consignee_city": "London",
"consignee_zip": "SW1A 2AA",
"consignee_country": "GB",
"sender_name": "Acme Corp",
"sender_city": "New York",
"sender_zip": "10001",
"sender_country": "US"
}'

The API returns a 201 Created response with the full fee breakdown, resolved HS codes, and a payment link for the consignee.

{
"id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"brand_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"brand_slug": "my-brand",
"reference": "ORD-2026-00123",
"is_test": true,
"currency": "USD",
"total_duties": 22.50,
"total_taxes": 30.00,
"total_additional_fees": 5.00,
"total_amount": 57.50,
"payment_status": "PENDING",
"created": "2026-04-09T12:00:00Z",
"items": [
{
"description": "Leather handbag",
"description_resolved": "Handbags with outer surface of leather",
"hs_code": null,
"hs_code_resolved": "4202.21",
"hs_code_resolved_import": "4202.21.6000",
"hs_code_resolved_export": "4202.21",
"country_of_origin": "CN",
"declared_value": 150.00,
"currency": "USD",
"quantity": 1,
"total_value": 150.00,
"duty_amount": 22.50,
"tax_amount": 30.00
}
],
"fees": [
{
"fee_type": "CONSTANT",
"display_name": "Processing Fee",
"amount": 5.00,
"original_amount": 5.00,
"original_currency": "USD",
"is_visible": true
}
],
"payment_link": "https://pay.dutypro.exelot.com/abc123def456/pay"
}