Formulaire douanier Limites d'articles

Les limites du nombre d'articles que vous pouvez spécifier dans le formulaire de douane varient selon le transporteur. Bien qu'il ne couvre pas tous les transporteurs, vous trouverez ici ces détails, ainsi que des références API et des exemples de code pour plusieurs grands transporteurs.

Limites des postes douaniers par transporteur API et service

Ce tableau fournit une comparaison de haut niveau du nombre maximum d'articles douaniers autorisés par les principaux transporteurs maritimes pour leurs principales solutions d'expédition électronique. Ces limites sont essentielles pour les entreprises qui expédient des marchandises à l'échelle internationale sur la base de factures commerciales détaillées.

Limites des postes douaniers de l'USPS

Ce tableau ne mentionne pas les spécificités de USPS , mais USPS limite à 30 le nombre d'articles dans un formulaire de douane.

Transporteur

API / Service

Nombre maximal de postes

Nom de l'objet API

UPS

API d'expédition (REST/JSON)

50

Produit

FedEx

API REST

99

produits de base

FedEx

Services Web (SOAP/XML)

99

Produits de base

GlobalPost

(via Auctane/ShipStation API)

255

customsItems

DHL

solutions de commerce électronique API (pour l'Europe)

99

articles

DHL

eCommerce Solutions Americas API (pour les Etats-Unis)

99

produits de base

DHL

API Express (API MyDHL)

999

exportLineItems

Principaux enseignements:

  • DHL Express offre la plus grande capacité, et de loin, en prenant en charge jusqu'à 999 articles, ce qui en fait la solution idéale pour les expéditions B2B complexes et de grande envergure.

  • GlobalPost offre une limite généreuse de 255 articles, ce qui permet d'accommoder les inventaires de commerce électronique les plus divers.

  • FedEx et les deux API régionales DHL eCommerce (Amériques et Europe) partagent une limite standard de 99 articles.

  • UPS a la limite la plus restrictive à 50 articles, ce qui devrait être une considération importante pour les expéditeurs ayant une grande diversité de marchandises par colis.

UPS

L'API UPS Shipping autorise un maximum de 50 postes douaniers par envoi.

Ces postes sont appelés objets Produits dans la section InternationalForms d'une demande d'envoi. Ils sont utilisés pour générer la facture commerciale pour le dédouanement, souvent dans le cadre du service de facture dématérialisée d'UPS.

Référence API

La source définitive de ces informations est le portail officiel des développeurs UPS pour l'API d'expédition. La limitation est définie dans la spécification du tableau Product dans l'objet ShipmentRequest .

  • Documentation principale: Référence API UPS Shipping

  • Emplacement spécifique: Dans la documentation de l'API, naviguez dans la structure du corps de la demande jusqu'à ShipmentRequest > Shipment > InternationalForms > Product. La documentation relative au tableau Product indiquera le nombre maximal d'occurrences ("maxItems : 50").

Exemple de requête JSON

Vous trouverez ci-dessous un exemple d'extrait JSON montrant comment structurer une demande comportant plusieurs postes douaniers (Product). Il ne s'agit pas d'une demande complète, mais d'un extrait de la section InternationalForms .

JSON

{ "ShipmentRequest" : { "Shipment" : { "Description" : "Composants électroniques assortis", "Expéditeur" : { /* ... Détails de l'expéditeur ... */ }, "ShipTo" : { /* ... Détails de l'expéditeur ... / }, "ShipTo" : { /* ... Détails du destinataire ... */ }, "PaymentDetails" : { /* ... Détails du paiement ... */ }, "Service" : { "Code" : "08", "Description" : "UPS Expedited" }, "Package" : [ { "Packaging" : { "Code" : "02", "Description" : "Customer Supplied Package" }, "PackageWeight" : { "UnitOfMeasurement" : { "Code" : "KGS" }, "Poids" : "2.5" } } ], "InternationalForms" : { "FormType" : "01", "InvoiceNumber" : "INV123456789", "InvoiceDate" : "20250915", "ReasonForExport" : "SALE", "CurrencyCode" : "USD", "InvoiceLineTotal" : {"MonetaryValue" : "350.00" }, "Product" : [ // Il s'agit du tableau de vos articles de douane (max 50). { "Description" : "16GB DDR5 RAM Module", "CommodityCode" : "847330", "OriginCountryCode" : "TW", "Unit" : {"Number" : "10", "UnitOfMeasurement" : { "Code" : "PCS" }, "Valeur" : "25.00" }, "ProductWeight" : { "UnitOfMeasurement" : { "Code" : "KGS" }, "Poids" : "0.1" } }, { "Description" : "2TB NVMe SSD", "CommodityCode" : "852351", "OriginCountryCode" : "KR", "Unit" : {"Number" : "2", "UnitOfMeasurement" : { "Code" : "PCS" }, "Valeur" : "50.00" }, "ProductWeight" : { "UnitOfMeasurement" : { "Code" : "KGS" }, "Poids" : "0.2" } ] } }, "LabelSpecification" : { /* ... Détails de l'étiquette ... */ } } }

Champs clés de l'objet Product

  • Description: Une description détaillée de l'article.

  • CommodityCode: Le code du tarif douanier harmonisé (HTS) pour le produit.

  • OriginCountryCode: Code à deux lettres du pays où l'article a été fabriqué.

  • Unité: Un objet contenant la quantité (Nombre), la valeur par unité (Valeur) et l'unité de mesure (Code, par exemple, "PCS" pour les pièces).

  • ProductWeight: Le poids d'une seule unité du produit.

FedEx

Pour FedEx, la limite est la même pour la nouvelle API REST et l'ancienne API de services Web (SOAP).

Le nombre maximum d'articles douaniers (appelés Commodities dans l'API FedEx) autorisé par envoi est de 99.

FedEx REST API (Nouveau)

Les API REST modernes de FedEx sont basées sur JSON et constituent la voie d'intégration recommandée pour les nouveaux développements.

  • Nombre maximal de postes: 99

  • Objet API: Les articles sont fournis dans le tableau des marchandises, qui fait partie de l'objet customsClearanceDetail

Référence API

La documentation officielle et les spécifications de l'API sont disponibles sur le portail des développeurs de FedEx.

  • Documentation principale: Documentation FedEx Ship API

  • Emplacement spécifique: Dans la référence API pour le point de terminaison "Create Shipment", naviguez dans le schéma du corps de la demande jusqu'à : requestedShipment > customsClearanceDetail > commodities. La documentation spécifie un maximum de 99 items pour ce tableau.

Exemple de requête JSON

Il s'agit d'une charge utile JSON partielle qui se concentre sur la section customsClearanceDetail afin d'illustrer la manière de structurer plusieurs marchandises.

JSON

{"requestedShipment" : { "shipper" : { /* ... Détails de l'expéditeur ... */ }, "recipients" : [ { /* ... Détails du destinataire ... */ } ], "shipDatestamp" : "2025-09-16", "serviceType" : "INTERNATIONAL_PRIORITY", "packagingType" : "YOUR_PACKAGING", "pickupType" : "USE_SCHEDULED_PICKUP", "blockInsightVisibility" : false, "shippingChargesPayment" : { "paymentType" : "SENDER" }, "customsClearanceDetail" : { "dutiesPayment" : { "paymentType" : "SENDER" }, "isDocumentOnly" : false, "commodities" : [ // Il s'agit du tableau de vos articles de douane (max 99). { "description" : "T-shirt en coton pour homme", "countryOfManufacture" : "VN", "quantity" : 50, "quantityUnits" : "EA", "unitPrice" : {"amount" : 15, "currency" : "USD" }, "customsValue" : { "montant" : 750, "devise" : "USD" }, "harmonizedCode" : "610910", "weight" : {"unités" : "KG", "valeur" : 10 } }, {"description" : "Ceinture en cuir", "countryOfManufacture" : "IT", "quantity" : 20, "quantityUnits" : "EA", "unitPrice" : {"amount" : 40, "currency" : "USD" }, "customsValue" : { "montant" : 800, "devise" : "USD" }, "harmonizedCode" : "420330", "weight" : {"unités" : "KG", "valeur" : 4 } } ] }, "requestedPackageLineItems" : [ { "weight" : { "units" : "KG", "value" : 14 } } ] }, "labelResponseOptions" : "URL_ONLY", "accountNumber" : { "value" : "YourAccountNumber" } }

FedEx Web Services / SOAP API (ancien)

Il s'agit de l'ancienne API basée sur XML. Bien qu'elle soit encore fonctionnelle, FedEx encourage les utilisateurs à migrer vers l'API REST .

  • Nombre maximal de postes: 99

  • Objet API: Les postes sont définis en répétant l'élément Commodity dans le bloc CustomsClearanceDetail .

Référence API

La documentation relative aux anciennes API se trouve souvent dans des guides du développeur téléchargeables au format PDF.

  • Documentation principale: FedEx Web Services Documentation (recherchez le WSDL du service de transport et le guide du développeur correspondant).

  • Specific Location: Dans le WSDL ProcessShipmentRequest , l'élément CustomsClearanceDetail contient un élément Commodities avec un attribut maxOccurs de "99".

Exemple de demande XML

Il s'agit d'un extrait partiel de requête SOAP/XML portant sur la section CustomsClearanceDetail . Notez la verbosité par rapport à JSON.

XML


    
        
            SENDER
            
        NON_DOCUMENTS
        
            USD
            1550.00
                 

        
            T-Shirt coton homme
            50
            T-Shirt coton homme
            VN
            
                KG
                10.0
            
            50
            EA
            
                USD
                15.00
            
            
                USD
                750.00
            
            910
        
        
            Ceinture en cuir
            20
            Ceinture en cuir
            IT
            
                KG
                4.0
            
            20
            EA
            
                USD
                40.00
            
            
                USD
                800.00
            
            420330
        
    
    

GlobalPost

L'API GlobalPost autorise un maximum de 255 postes douaniers par envoi.

Les fonctionnalités de l'API GlobalPost sont accessibles via nos plateformes (Auctane). Les articles sont généralement envoyés dans un tableau customs_items dans la requête JSON.

Référence API

La documentation pour GlobalPost est intégrée dans le portail développeur de notre documentation API ShipStation :

  • Documentation principale: Documentation API ShipStation

  • Emplacement spécifique: Dans la documentation de l'API relative à la création ou à la mise à jour d'une commande, recherchez le tableau customsItems . La description du champ indique le nombre maximum d'articles autorisés.

Exemple de requête JSON

JSON

{"carrierCode" : "globalpost", "serviceCode" : "globalpost_economy_intl", "packageCode" : "package", "confirmation" : "delivery", "shipDate" : "2025-09-15", "weight" : {"value" : 3.0, "units" : "pounds" }, "dimensions" : { "units" : "inches", "length" : 10.0, "width" : 8.0, "height" : 4.0 }, "shipFrom" : { /* ... Détails de l'adresse de livraison ... */ }, "shipTo" : { /* ... Détails de l'adresse d'expédition ... */ }, "customs" : { "contents" : "merchandise", "nonDelivery" : "return_to_sender", "customsItems" : [ // Il s'agit du tableau de vos articles de douane (max 255). { "description" : "T-shirt en tissu synthétique pour homme", "quantity" : 5, "value" : 12.00, "harmonizedTariffCode" : "610990", "countryOfOrigin" : "CN", "weight" : {"value" : 0.5, "units" : "pounds" } }, { "description" : "Tasse à café en céramique", "quantity" : 2, "value" : 8.50, "harmonizedTariffCode" : "691200", "countryOfOrigin" : "DE", "weight" : {"value" : 1.1, "units" : "pounds" } }, { "description" : "Hardcover Novel", "quantity" : 1, "valeur" : 15.00, "harmonizedTariffCode" : "490199", "countryOfOrigin" : "US", "weight" : {"value" : 1.4, "units" : "pounds" } ] } }

DHL

Voici les limites des postes douaniers pour les API d'expédition DHL spécifiées.

DHL Express

L'API DHL Express, également connue sous le nom d'API MyDHL, autorise un maximum de 999 postes douaniers par envoi.

Ces éléments sont appelés exportLineItems dans l'objet content d'une demande d'envoi. Cette limite élevée est conçue pour les envois commerciaux complexes et de grande taille.

Référence API

La documentation officielle de l'API est disponible sur le portail des développeurs de DHL Express.

  • Documentation principale: DHL Express - Documentation de l'API MyDHL

  • Emplacement spécifique: Dans la référence API "Shipments", examinez le corps de la requête pour le point d'extrémité POST /shipments . La contrainte est définie dans le tableau content/exportLineItems .

Exemple de requête JSON

Il s'agit d'une charge utile JSON partielle qui se concentre sur l'objet contenu pour montrer comment structurer plusieurs éléments de ligne.

JSON

{ "customerDetails" : { /* ... Détails du client ... */ }, "accounts" : [ { "typeCode" : "shipper", "number" : "YourAccountNumber" } ], "productCode" : "P", "plannedShippingDateAndTime" : "2025-09-16T11:00:00 GMT+01:00", "pickup" : { "isRequested" : false }, "ship" : { /* ... Détails de l'expéditeur et du destinataire ... */ }, "packages" : [ { /* ... Détails du colis ... */ } ], "content" : {"isCustomsDeclarable" : true, "incoterm" : "DAP", "unitOfMeasurement" : "metric", "exportDeclaration" : {"invoice" : { "number" : "INV-2025-12345", "date" : "2025-09-15" } }, "exportLineItems" : [ // Il s'agit du tableau de vos articles de douane (max. 999). { "number" : 1, "quantity" : {"value" : 10, "unitOfMeasurement" : "BOX" }, "description" : "Grade A Circuit Boards", "value" : 500.00, "commodityCode" : "8473.30.11", "countryOfOrigin" : "KR", "grossWeight" : {"valeur" : 5.5 }, "netWeight" : {"valeur" : 5 }, "poids net" : {"valeur" : 0 } : 5.0 } }, { "number" : 2, "quantity" : { "valeur" : 100, "unitOfMeasurement" : "PCS" }, "description" : "Power Supply Units", "value" : 1500.00, "commodityCode" : "8504.40.95", "countryOfOrigin" : "CN", "grossWeight" : {"valeur" : 20.5 }, "netWeight" : {"valeur" : 18.0 } } ] } }

DHL eCommerce Solutions (EU)

L'API DHL eCommerce Solutions (également connue sous le nom de Business Customer Shipping API en Europe) autorise un maximum de 99 postes douaniers par envoi.

Ces éléments sont désignés par les termes items ou positions dans l'objet customsDetails de la demande de transport.

Référence API

La documentation se trouve sur le portail des développeurs de DHL, mais dans les sections Post & Parcel Germany ou eCommerce Solutions , qui utilisent une API différente de celle de DHL Express.

  • Documentation principale: DHL Business Customer Shipping API v3

  • Emplacement spécifique: Dans l'opération POST /shipments , naviguez dans le schéma du corps de la requête jusqu'à shipments/details/customsDetails. La limite est spécifiée pour le tableau items dans cet objet.

Exemple de requête JSON

Cet exemple montre la structure d'un envoi avec des détails douaniers pour DHL eCommerce.

JSON

{ "profile" : "STANDARD_GRUPPENPROFIL", "shipments" : [ { "product" : "V55WPAK", "billingNumber" : "YourBillingNumber", "refNo" : "Customer-Ref-123", "shipper" : { /* ... Adresse de l'expéditeur ... */ }, "receiver" : { /* ... Adresse du destinataire ... */ }, "details" : { "dim" : { "uom" : "cm", "length" : 20, "width" : 15, "height" : 10 }, "weight" : { "uom" : "kg", "value" : 2.5 }, "customsDetails" : { "exportType" : "OTHER", "placeOfCommital" : "Hamburg", "additionalInfo" : "Articles cadeaux", "exportTypeDescription" : "SALE_OF_GOODS", "invoiceNo" : "INV-2025-12345", "items" : [ // Il s'agit du tableau de vos articles de douane (max 99).
            { "itemDescription" : "Foulard en laine", "packagedQuantity" : 2, "countryOfOrigin" : "GB", "hsCode" : "611710", "itemValue" : 25.00, "itemWeight" : 0.4 }, {"itemDescription" : "Gants en cuir", "packagedQuantity" : 1, "countryOfOrigin" : "IT", "hsCode" : "420321", "itemValue" : 60.00, "itemWeight" : 0.3 } ] } } } ] }

DHL eCommerce Solutions Americas API (US)

L'API de DHL eCommerce Solutions Americas autorise un maximum de 99 postes de douane par envoi.

Ces lignes sont appelées commodities et sont placées dans le tableau commodities à l'intérieur de l'objet customs d'une demande de transport.

Référence API

La documentation officielle de cette API spécifique se trouve sur le portail des développeurs de DHL eCommerce Solutions Americas. Il est essentiel d'utiliser ce portail et non le portail européen pour les expéditions basées aux États-Unis.

Exemple de requête JSON

Vous trouverez ci-dessous un exemple de charge utile JSON pour la création d'un envoi. Il met en évidence l'objet customs et la structure du tableau commodities dans lequel vous listerez vos articles.

JSON

{ "shipper" : { /* ... Détails de l'expéditeur ... */ }, "consignee" : { /* ... Détails sur le destinataire ... */ }, "packages" : [ { "packageId" : "YourPackageID123", "weight" : 2.5, "weightUom" : "lb", "dimensions" : { "length" : 10, "width" : 8, "height" : 4, "dimUom" : "in" }, "customs" : { "currency" : "USD", "customsValue" : 125.00, "customsContentType" : "MERCHANDISE", "commodities" : [ // Il s'agit du tableau de vos articles de douane (max 99). { "description" : "Polo en coton pour homme", "quantity" : 3, "value" : 25.00, "hsCode" : "610510", "countryOfOrigin" : "VN" }, {"description" : "Sac à main en cuir pour femme", "quantity" : 1, "valeur" : 50.00, "hsCode" : "420221", "countryOfOrigin" : "MX" } ] 
     } } ], "labelOptions" : {"format" : "PDF", "resolution" : 300 }, "billing" : { "shipperAccountNumber" : "YourAccountNumber", "billingAccountNumber" : "YourAccountNumber" }, "serviceType" : "plg" }

Vous ne trouvez pas ce que vous recherchez ?

Contactez notre équipe d'assistance technique.
Contactez-nous
Cet article vous a-t-il été utile ?
Utilisateurs qui ont trouvé cela utile : 0 sur 0