Quatre points d'accès, une clé API. Classez un article, un lot de 1 à 100 articles, ou un même article vers plusieurs pays parmi l'UE, le Royaume-Uni, les États-Unis, la Norvège et le Canada. Chaque réponse contient un code final justifié ou la question précise qui manque. Une clé de test gratuite vous permet de valider l'intégration avant la production.
POST https://bxrocmhthszinptwduze.supabase.co/functions/v1/classify-api
Content-Type: application/json X-API-Key: VOTRE_CLE_API
{
"reference": "SKU-ROBE-001",
"description": "Robe pour femme en tissu de soie (chaîne et trame), 100 % soie, sans doublure",
"materials": "100 % soie",
"origin": "CN",
"jurisdiction": "EU-FR"
}Juridictions : EU-FR, UK, US, NO, CA (UE, TARIC), UK, US, NO, CA. Le code EU est accepté et appliqué comme EU-FR ; la réponse indique le code reçu et le code appliqué. La référence est obligatoire : c'est la clé de l'article (une même référence met à jour l'article existant, par pays). Sans référence, ou avec une référence vide, la requête est refusée avec une erreur 400 missing_reference, avant tout débit de crédit.
curl -X POST https://bxrocmhthszinptwduze.supabase.co/functions/v1/classify-api \
-H "Content-Type: application/json" \
-H "X-API-Key: VOTRE_CLE_API" \
-d '{
"reference": "SKU-ROBE-001",
"description": "Robe pour femme en tissu de soie (chaîne et trame), 100 % soie, sans doublure",
"materials": "100 % soie",
"origin": "CN",
"jurisdiction": "EU-FR"
}'{
"success": true,
"data": {
"reference": "SKU-ROBE-001",
"status": "code",
"hs_code": "6204491000",
"question": null,
"cited_text": null,
"codes_in_play": [],
"explanation": "Robe pour femmes, autre qu'en bonneterie : position 6204. Sous-position 6204.49 (d'autres matières textiles), puis 6204.49.10 « de soie ou de déchets de soie ».",
"jurisdiction": "EU-FR",
"jurisdiction_input": { "received": "EU-FR", "applied": "EU-FR", "normalized": false },
"citations": ["RGI 1", "RGI 6"],
"requires_review": false,
"missing_info": null,
"image_analysis": null,
"inherited_hs6_from": null
}
}{
"success": true,
"data": {
"reference": "SKU-ROBE-002",
"status": "open_question",
"hs_code": null,
"question": "Le tissu de votre robe est-il en soie (chaîne et trame) ou en fibres synthétiques ?",
"cited_text": "6204.4 — Robes : 6204.43 de fibres synthétiques ; 6204.49 d'autres matières textiles",
"codes_in_play": [
{ "code": "6204430000", "description": "de fibres synthétiques" },
{ "code": "6204491000", "description": "de soie ou de déchets de soie" }
],
"explanation": "La matière du tissu n'est pas déclarée : elle seule départage les sous-positions.",
"jurisdiction": "EU-FR",
"jurisdiction_input": { "received": "EU-FR", "applied": "EU-FR", "normalized": false },
"citations": ["RGI 1", "RGI 6"],
"requires_review": true,
"missing_info": { "question": "Le tissu de votre robe est-il en soie (chaîne et trame) ou en fibres synthétiques ?" },
"image_analysis": null,
"inherited_hs6_from": null
}
}{
"sandbox": true,
"warning": "⚠️ MODE BAC À SABLE — Les codes douaniers retournés sont FACTICES et générés à des fins de test technique uniquement (même description = même code). Ne JAMAIS utiliser ces codes pour une déclaration douanière réelle.",
"success": true,
"data": {
"reference": "SKU-ROBE-001",
"status": "code",
"hs_code": "8472.48.46.16",
"question": null,
"cited_text": null,
"codes_in_play": [],
"explanation": "CODE FACTICE généré par le bac à sable CrossbordIA. Ne pas utiliser pour une déclaration douanière réelle.",
"jurisdiction": "EU-FR",
"jurisdiction_input": { "received": "EU-FR", "applied": "EU-FR", "normalized": false },
"citations": ["SANDBOX — citation factice"],
"requires_review": false,
"missing_info": null,
"image_analysis": null,
"sandbox_fake_code": true
}
}Des réponses que votre code peut traiter sans interprétation : un code final justifié, ou une question précise avec les codes en jeu.
Unitaire synchrone, masse de 1 à 100 articles, multi-pays, masse multi-pays. Même authentification, mêmes champs article.
La clé complète n'est affichée qu'une fois ; seule son empreinte SHA-256 est conservée. Désactivez ou supprimez une clé depuis votre espace.
Classez un article vers EU-FR (TARIC), UK (UK Global Tariff), US (HTS), NO (Tolltariffen) et CA (Tarif des douanes). Les 6 premiers chiffres (SH) sont repris tels quels d'un pays à l'autre ; seuls les chiffres nationaux sont classés.
Joignez une photo à un classement unitaire ou multi-pays. Elle ne sert qu'aux propriétés visibles et n'établit jamais la matière, le poids ou l'usage. Une photo qui contredit la description déclenche une question.
S'il manque un fait (poids, matière, usage…), la réponse s'arrête au rang atteint et contient la question à poser, la règle qui la motive et les codes en jeu.
Codes HTTP standard et code d'erreur stable (missing_reference, unknown_jurisdiction, rate_limit_exceeded, insufficient_credits, FEATURE_NOT_INCLUDED…), avec retry_after en cas de dépassement.
Gratuit : 10 requêtes/min et 100/jour. Premium : 60/min et 5 000/jour. Pro : 120/min et 20 000/jour. Clés de test : 20/min et 100/jour. L'API n'est pas incluse dans l'offre Standard.
Les lots (1 à 100 articles, ou 1 à 50 articles vers plusieurs pays) renvoient un identifiant de suivi. Le résultat peut être poussé vers votre adresse webhook_url, signé (HMAC), avec 3 tentatives.
De la création du compte à votre première réponse justifiée.
L'API est incluse dans l'offre Gratuit et dans les offres Premium et Pro (pas dans Standard).
Une clé de test (codes factices, sans crédit) pour intégrer, puis une clé de production.
Un POST avec la référence, la description, les attributs déclarés et le pays visé.
Un code final justifié, ou la question précise qui manque, avec les codes en jeu.
Pour vos développeurs : une API REST documentée, une clé de test sans crédit et des erreurs explicites. Pour vos décideurs : un code justifié par les textes officiels pour chaque article, une question quand un fait manque, et 1 crédit par article et par pays, rien en cas d'erreur.
Documentation complète · Clé de test gratuite · 10 crédits offerts à l'essai