Chiffre de contrôle ISBN-13
Les 12 chiffres 978030640615 reçoivent le chiffre de contrôle 7, ce qui donne l'ISBN-13 complet 9780306406157. Complétez le numéro d'un livre avant d'imprimer son code-barres, ou vérifiez un ISBN à 13 chiffres avant son arrivée dans le système d'une librairie. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Nombre
- 978030640615
- Mode de calcul
- Compute
- Entrée
- 978030640615
- Chiffre de contrôle
- 7
- Avec chiffre de contrôle
- 9780306406157
Les livres modernes et de nombreux produits multimédias s’identifient par un International Standard Book Number à treize chiffres : l’ISBN-13. Les trois premiers chiffres sont un préfixe GS1 bookland (en général 978 ou 979), les chiffres du milieu codent le groupe d’enregistrement, le déclarant et la publication, et le chiffre final est un chiffre de contrôle qui détecte les erreurs d’un seul chiffre à la saisie ou au scan avant que le code n’atteigne un catalogue, une librairie ou une fiche marketplace. Cette capacité applique la règle standard ISBN-13 mod-10 sur une charge utile de douze chiffres — poids alternés un et trois depuis la gauche — et renvoie le chiffre de contrôle plus le code-barres complet à treize chiffres, ou valide une chaîne de treize chiffres avec un indicateur valid explicite et le chiffre attendu.
Comment le chiffre de contrôle ISBN-13 est calculé
Un ISBN-13 compte toujours treize chiffres et est structurellement identique à un code-barres produit EAN-13 / GTIN-13 utilisé sur les emballages de détail. Les douze premiers chiffres forment la charge utile du numéro de livre : un préfixe GS1 à trois chiffres (presque toujours 978 ou 979 pour les livres), un élément de groupe d’enregistrement, un élément déclarant (éditeur) et un élément de publication dont les longueurs varient selon les règles de l’agence. Le treizième chiffre est le chiffre de contrôle.
Pour le calculer, parcourez les douze chiffres de charge de gauche à droite avec des positions base 1 : multipliez chaque chiffre en position impaire par un et chaque chiffre en position paire par trois, additionnez ces produits, puis prenez le chiffre de contrôle comme dix moins cette somme modulo dix, modulo dix à nouveau pour qu’un reste zéro donne le chiffre de contrôle zéro.
De façon équivalente, la chaîne complète de treize chiffres y compris le chiffre de contrôle doit avoir une somme pondérée multiple de dix sous les mêmes poids de gauche à droite. C’est la même famille de règles mod-10 utilisée pour GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13 / ISBN-13) et GTIN-14 ; seule la forme bookland fixe à treize chiffres et le préfixe 978/979 rendent l’ISBN-13 spécifique pour les chercheurs. L’algorithme est déterministe et local : pas de consultation d’agence ISBN, pas d’appel réseau, pas d’horloge.
Cet outil ne convertit pas l’ISBN-10 en ISBN-13 pour vous au-delà de l’acceptation de chaînes purement numériques, n’insère pas de tirets de groupe d’enregistrement et n’affirme pas qu’un checksum valide signifie que le titre est enregistré auprès d’une agence ISBN — il prouve seulement que la chaîne de chiffres est bien formée selon la règle du chiffre de contrôle ISBN-13.
Face aux validateurs multi-symbologies, l’intention de recherche ici est étroite : les personnes qui ont besoin d’une calculatrice de chiffre de contrôle ISBN-13 pour des charges de douze chiffres, pas d’un vérificateur général UPC ou GTIN de carton.
Où les chiffres de contrôle ISBN-13 s’intègrent aux flux réels
Les éditeurs et les équipes catalogue reçoivent des numéros internes de livre à douze chiffres — préfixe plus groupe d’enregistrement, déclarant et titre — et doivent ajouter le chiffre de contrôle ISBN-13 officiel avant d’imprimer des codes-barres EAN-13 sur couvertures, jaquettes ou stickers. Les applications POS de librairie et de réception valident des codes à treize chiffres au comptoir pour qu’une seule transposition ne crée pas un titre fantôme ni un écart de stock.
Les jobs de qualité de données bibliothèques et agrégateurs parcourent chaque colonne ISBN-13 d’un export MARC, ONIX ou CSV, appellent le mode validate et mettent en quarantaine les lignes où valid est false — capturant à la fois les éditions humaines et les bugs de générateurs qui émettent encore de l’ISBN-10 héritée sans conversion correcte.
Ne traitez pas un ISBN-13 qui passe le contrôle comme preuve de propriété du titre, d’enregistrement auprès de l’agence ou de groupes de tirets corrects ; cela prouve seulement que le chiffre mod-10 est cohérent avec la charge de douze chiffres sous les poids standard ISBN-13.
Cas d’usage
Auditer les colonnes ISBN-13 dans les catalogues et exports ONIX
Validez par lots chaque ISBN à treize chiffres dans un PIM, un chargement bibliothèque ou un CSV 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 ISBN-13 ?
C’est le treizième chiffre d’un code-barres ISBN-13, calculé avec une somme pondérée mod-10 (poids alternés 1 et 3 depuis la gauche) afin que les erreurs d’un seul chiffre à la saisie ou au scan soient en général détectées avant le stockage ou l’impression du code.
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. Retirez les tirets avant l’envoi.
Comment le chiffre de contrôle ISBN-13 est-il calculé ?
Prenez les 12 premiers chiffres de gauche à droite, multipliez-les alternativement par 1 et par 3, puis additionnez les produits. Le chiffre de contrôle vaut dix moins le reste de la division par dix ; si l'on obtient dix, il vaut 0.
Un ISBN-13 est-il la même chose qu'un code EAN-13 ?
Par sa structure, oui : un ISBN-13 est un numéro EAN-13 à treize chiffres qui commence par le préfixe livre 978 ou 979 et suit la même règle de chiffre de contrôle que les codes-barres des produits de détail.
Un ISBN-13 valide prouve-t-il que le livre est enregistré ?
Non. Un chiffre de contrôle correct indique seulement que les 13 chiffres sont cohérents entre eux. Aucune agence ISBN n'est consultée : cela ne confirme pas que le numéro a été attribué à un livre.
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/isbn13 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"number":"978030640615"}'const res = await fetch("https://api.kit.forhosting.com/enc/isbn13", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"number": "978030640615"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/isbn13",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"number": "978030640615"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/isbn13", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"number":"978030640615"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"number":"978030640615"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/isbn13", 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": "978030640615"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.isbn13",
"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 longueurs incorrectes échouent avec invalid_input au lieu d’un nettoyage silencieux, afin que vous ne stockiez jamais un ISBN à moitié nettoyé. La même arithmétique pure s’exécute gratuitement dans le navigateur et au prix API publié pour les pipelines d’automatisation.
Contrat d’entrée, modes et comportement d’erreur
Envoyez un champ number qui ne contient que les caractères de zéro à neuf. Une longueur incorrecte est une erreur explicite qui nomme le mode et la longueur envoyée — douze pour compute, treize pour validate — afin que les formulaires clients puissent afficher « il faut douze chiffres » sans deviner. Les chaînes vides, le number manquant et les 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 numéros de livre à partir d’un corps de douze chiffres ; préférez validate lorsque vous conditionnez une importation catalogue, un scan POS ou une fiche marketplace à un code-barres ISBN-13 complet à treize chiffres. Espaces, tirets, lettres et points décimaux sont rejetés comme entrée non numérique avec invalid_input afin qu’une valeur silencieusement tronquée n’atteigne jamais le stockage — si vous collez 978-0-306-40615 sans le chiffre de contrôle, vous devez d’abord retirer les tirets côté client ou envoyer la forme purement numérique. Le mode compute est le défaut : le moteur exige exactement douze chiffres, renvoie check_digit comme chaîne d’un caractère et renvoie with_check comme l’ISBN-13 à treize chiffres que vous pouvez imprimer sur un code-barres ou persister dans un catalogue. Le mode validate exige exactement treize chiffres ; la réponse indique valid true lorsque le chiffre final correspond au expected_check_digit recalculé, et inclut toujours payload (les douze premiers chiffres), check_digit, expected_check_digit et length treize. Des alias tels que digits, isbn et code sont acceptés pour le même champ de charge afin que les intégrations qui parlent déjà « isbn » n’aient pas à renommer. Comme le chemin est un 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 ISBN-13 s’intègrent aux flux réels
Les formulaires d’onboarding e-commerce et marketplace peuvent recalculer expected_check_digit et afficher une correction conviviale lorsqu’un vendeur colle un ISBN avec le dernier chiffre mal saisi.
Cas d'intégration
Compléter un numéro de livre à 12 chiffres pour les codes-barres de couverture
Appelez le mode compute avec la charge de douze chiffres, stockez with_check et envoyez l’ISBN-13 à treize chiffres à votre imprimante de codes-barres EAN-13 ou à l’enregistrement catalogue.
Valider un ISBN-13 scanné ou saisi à l’entrée
Lorsqu’un scanner ou un formulaire envoie treize chiffres, appelez le mode validate et bloquez la recherche 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 ISBN-13 avec cette API ?
Envoyez un POST avec number de exactement douze chiffres et mode compute (ou omettez mode). La réponse inclut check_digit et with_check (l’ISBN-13 complet à treize chiffres).
Comment valider un ISBN-13 complet à treize chiffres ?
Envoyez un POST avec la chaîne de treize chiffres et mode validate. La réponse inclut valid, check_digit, expected_check_digit et payload (les chiffres sans le dernier).
L’outil de chiffre de contrôle ISBN-13 est-il gratuit ?
L’outil navigateur est gratuit et s’exécute localement. Les appels API utilisent le solde KIT prépayé au prix de base publié $0.002 ; une entrée invalide n’est jamais facturée.