Chiffre de contrôle GTIN-14
Saisissez les 13 chiffres 1001234567890 et obtenez le chiffre de contrôle 2, soit le code carton complet 10012345678902. Servez-vous-en pour compléter le GTIN-14 d'un carton ou vérifier un code de 14 chiffres avant son arrivée dans le système de l'entrepôt. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Nombre
- 1001234567890
- Mode de calcul
- Compute
- Entrée
- 1001234567890
- Chiffre de contrôle
- 2
- Avec chiffre de contrôle
- 10012345678902
Les articles commerciaux qui circulent en cartons, packs ou unités logistiques s’identifient par un Global Trade Item Number à quatorze chiffres : le GTIN-14. Le premier chiffre est un indicateur d’emballage qui distingue l’unité du GTIN de consommation ; les chiffres du milieu portent le préfixe d’entreprise et la référence d’article ; le dernier est un chiffre de contrôle GS1 qui détecte les erreurs d’un seul chiffre à la saisie ou au scan avant que le code n’atteigne un entrepôt ou une place de marché. Cette capacité applique la règle standard mod-10 sur une charge utile de treize chiffres — poids comptés depuis la droite, positions impaires multipliées par trois, paires par un — et renvoie le chiffre de contrôle plus la chaîne complète de quatorze chiffres, ou valide un code de quatorze chiffres avec un indicateur valid explicite et le chiffre attendu.
Comment se calcule le chiffre de contrôle GTIN-14
Un GTIN-14 compte toujours quatorze chiffres. Le premier est l’indicateur (souvent de zéro à huit pour la hiérarchie d’emballage, neuf pour la mesure variable dans certains schémas) ; les chiffres deux à treize forment le numéro de base de l’article commercial, fréquemment un GTIN-13 complété de zéros sans son propre chiffre de contrôle ou un préfixe d’entreprise plus référence d’article équivalent ; le quatorzième chiffre est le contrôle.
Pour le calculer, prenez les treize chiffres de charge utile et parcourez-les de droite à gauche : multipliez le chiffre le plus à droite par trois, le suivant par un, en alternant, puis formez le chiffre de contrôle comme dix moins cette somme pondérée modulo dix, modulo dix à nouveau pour qu’un reste zéro donne un chiffre de contrôle zéro.
De façon équivalente, la chaîne complète de quatorze chiffres y compris le contrôle doit avoir une somme pondérée GS1 multiple de dix lorsque les mêmes poids de droite à gauche s’appliquent sur les quatorze positions. C’est la même famille de règles mod-10 utilisée pour GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13) et GTIN-14 ; seules la longueur fixe et la présence de l’indicateur rendent le GTIN-14 spécifique. L’algorithme est déterministe et local : pas de consultation de catalogue GS1, pas d’appel réseau, pas d’horloge.
Cet outil n’attribue pas d’indicateurs d’emballage, n’étend pas la symbologie ITF-14 et n’affirme pas qu’un checksum valide signifie un produit enregistré auprès de GS1 — il prouve seulement que la chaîne de chiffres est bien formée selon la règle du chiffre de contrôle GTIN-14. Face aux validateurs multi-symbologies, l’intention de recherche est étroite : ceux qui ont besoin d’une calculatrice de chiffre de contrôle GTIN-14 pour des charges de treize chiffres, non un vérificateur général UPC ou ISBN.
Où les chiffres de contrôle GTIN-14 s’insèrent dans les flux réels
Les équipes entrepôt et logistique reçoivent des numéros internes de carton à treize chiffres — indicateur plus corps du GTIN de consommation sans contrôle — et doivent ajouter le chiffre de contrôle GTIN-14 officiel avant d’imprimer des étiquettes ITF-14 ou GS1-128 pour palettes et cartons extérieurs. Les applications de réception valident des codes de quatorze chiffres au quai pour qu’une seule transposition ne crée pas un SKU de carton fantôme ni un écart de stock face à l’ASN.
Les jobs de qualité de données parcourent chaque colonne GTIN-14 d’un catalogue ou d’un export EDI, appellent le mode validate et mettent en quarantaine les lignes où valid est false — capturant éditions humaines et bugs de générateurs qui ont mal complété un GTIN-13. Ne traitez pas un GTIN-14 qui passe le contrôle comme preuve de propriété de marque, de hiérarchie d’emballage correcte ou d’enregistrement GS1 ; il prouve seulement que le chiffre mod-10 est cohérent avec la charge de treize chiffres sous les poids GS1 standard.
Cas d’usage
Auditer les colonnes GTIN-14 dans catalogues et exports EDI
Validez par lots chaque GTIN logistique de quatorze chiffres dans un PIM ou un fichier partenaire et mettez en quarantaine les lignes dont le chiffre de contrôle ne correspond plus à la valeur attendue recalculée.
Questions fréquentes
Qu’est-ce qu’un chiffre de contrôle GTIN-14 ?
C’est le quatorzième chiffre d’un code GTIN-14, calculé par une somme pondérée GS1 mod-10 afin que les erreurs d’un chiffre à la saisie ou au scan soient en général détectées avant le stockage ou l’impression du code de carton ou de pack.
Que se passe-t-il avec une mauvaise longueur, des lettres ou des tirets ?
Les tâches de validation en échec ne sont pas facturées.
L’outil de chiffre de contrôle GTIN-14 est-il gratuit ?
L’outil navigateur est gratuit et s’exécute en local.
Que signifie le premier chiffre d'un GTIN-14 ?
C'est l'indicateur d'emballage : il distingue le carton ou le lot de l'unité vendue au consommateur. Il va souvent de 0 à 8 selon le niveau d'emballage, et dans certains schémas le 9 désigne les articles à mesure variable.
Comment passer d'un EAN-13 à un GTIN-14 ?
Retirez le dernier chiffre de l'EAN-13, placez devant l'indicateur d'emballage, puis calculez ici un nouveau chiffre de contrôle sur ces 13 chiffres. Le chiffre de contrôle de l'EAN-13 d'origine n'est pas repris.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/enc/gtin14 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"number":"1001234567890"}'const res = await fetch("https://api.kit.forhosting.com/enc/gtin14", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"number": "1001234567890"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/gtin14",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"number": "1001234567890"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/gtin14", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"number":"1001234567890"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"number":"1001234567890"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/gtin14", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"number": "1001234567890"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.gtin14",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Les entrées non numériques et les mauvaises longueurs échouent avec invalid_input au lieu d’un nettoyage silencieux, afin que vous ne stockiez jamais un code de carton à demi nettoyé. La même arithmétique pure s’exécute gratuitement dans le navigateur et au prix API publié pour l’automatisation.
Contrat d’entrée, modes et comportement d’erreur
Envoyez un champ number ne contenant que les caractères de zéro à neuf. Une mauvaise longueur est une erreur explicite qui nomme le mode et la longueur envoyée — treize pour compute, quatorze pour validate — afin que les formulaires clients affichent « il faut treize chiffres » sans deviner. Chaînes vides, number manquant et valeurs de mode invalides échouent avant toute somme pondérée et ne sont pas facturés. Préférez compute lorsque vous créez ou complétez des GTIN logistiques à partir d’un indicateur plus la base ; préférez validate lorsque vous conditionnez un scan d’entrepôt, une ligne ASN ou l’import d’un fichier partenaire à un code complet de quatorze chiffres. Espaces, tirets, lettres et points décimaux sont rejetés comme entrée non numérique avec invalid_input afin qu’une valeur discrètement tronquée n’atteigne jamais le stockage. Le mode compute est le défaut : le moteur exige exactement treize chiffres, renvoie check_digit comme chaîne d’un caractère et renvoie with_check comme le GTIN-14 de quatorze chiffres que vous pouvez imprimer sur une étiquette de carton ou persister dans un PIM. Le mode validate exige exactement quatorze chiffres ; la réponse indique valid true lorsque le dernier chiffre correspond à expected_check_digit recalculé, et inclut toujours payload (les treize premiers chiffres), check_digit, expected_check_digit et length quatorze. Des alias tels que digits, gtin et code sont acceptés pour le même champ de charge utile, de sorte que les intégrations qui parlent déjà « gtin » n’aient pas à renommer. Comme le chemin est parse pur sans horloge, source aléatoire ni réseau, le même corps JSON produit toujours le même résultat JSON sur l’outil gratuit du navigateur et sur l’API à $0.002 par requête réussie.
Où les chiffres de contrôle GTIN-14 s’insèrent dans les flux réels
Les formulaires d’onboarding e-commerce et places de marché peuvent recalculer expected_check_digit et afficher une correction bienveillante lorsqu’un vendeur colle un GTIN de carton avec le dernier chiffre erroné.
Cas d'intégration
Compléter un numéro de carton à 13 chiffres pour étiquettes logistiques
Appelez le mode compute avec la charge de treize chiffres (indicateur plus base), stockez with_check et envoyez le GTIN-14 de quatorze chiffres à votre imprimante d’étiquettes ITF-14 ou GS1-128.
Valider un GTIN-14 scanné ou saisi à la réception
Lorsqu’un scanner ou un formulaire ASN envoie quatorze chiffres, appelez le mode validate et bloquez le rangement si valid est false, en affichant expected_check_digit pour corriger une seule faute de frappe.
Questions techniques
Comment calculer un chiffre de contrôle GTIN-14 avec cette API ?
Faites un POST avec number de exactement treize chiffres et mode compute (ou omettez mode). La réponse inclut check_digit et with_check (le GTIN-14 complet de quatorze chiffres).
Comment valider un GTIN-14 complet de quatorze chiffres ?
Faites un POST avec la chaîne de quatorze chiffres et mode validate. La réponse inclut valid, check_digit, expected_check_digit et payload (les chiffres sans le dernier).