Chiffre de contrôle ISBN-10
Les neuf chiffres 030640615 reçoivent le chiffre de contrôle 2 : l'ISBN-10 complet est donc 0306406152. Complétez un code à dix caractères ou vérifiez celui d'un ancien catalogue, d'une facture ou d'une liste de dons avant qu'une erreur ne fausse une recherche. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Nombre
- 030640615
- Mode de calcul
- Compute
- Entrée
- 030640615
- Chiffre de contrôle
- 2
- Avec chiffre de contrôle
- 0306406152
Les identifiants de livres hérités apparaissent encore sur les dos, factures, catalogues de bibliothèques et bases d’éditeurs sous forme de codes ISBN-10 à dix caractères. Le dernier caractère n’est pas décoratif : c’est un chiffre de contrôle modulo 11 choisi pour qu’un groupe d’enregistrement, un code éditeur ou un numéro de titre mal saisis fassent échouer une somme pondérée simple. Cette capacité calcule ce chiffre à partir de tout corps de neuf chiffres purs — en renvoyant 0 à 9 ou la lettre X lorsque le reste vaut dix — ou valide un ISBN-10 complet que vous avez déjà, y compris les formes avec tirets après suppression des séparateurs.
Ce qu’est le chiffre de contrôle ISBN-10 et pourquoi le X apparaît
Un ISBN-10 est un identifiant de dix caractères pour une édition de livre selon l’ancien schéma ISO 2108. Les neuf premiers caractères sont des chiffres décimaux qui codent le groupe d’enregistrement, l’éditeur et le titre ; le dixième est un caractère de contrôle dérivé de ces neuf pour que les erreurs de transcription rompent souvent une condition modulaire.
La norme multiplie les chiffres par des poids décroissants de dix à deux, additionne les produits et choisit une valeur de contrôle de zéro à dix de sorte que la somme pondérée complète, avec poids un sur le contrôle, soit divisible par onze. Lorsque cette valeur serait dix, le caractère imprimé est la lettre X plutôt qu’une chaîne à deux chiffres — d’où des codes valides comme 080442957X.
Cet outil applique exactement cette règle modulo 11 : le mode compute renvoie le caractère de contrôle pour un corps de neuf chiffres ; le mode validate recalcule le caractère attendu et indique si la chaîne complète est congruente à zéro modulo onze. Il ne convertit pas en ISBN-13, n’interroge pas une base de titres et ne traite pas les codes-barres de détail EAN-13 comme interchangeables sans l’expansion du préfixe 978/979 que vous feriez ailleurs.
Savoir que l’ISBN-10 est un identifiant de livre de longueur fixe, avec un algorithme distinct du Luhn modulo 10 des cartes ou des chiffres de détail EAN-13, vous aide à choisir le bon outil : utilisez cette page lorsque la chaîne qui vous importe est un corps ISBN-10 ou un code complet de dix caractères avec un X optionnel.
Comment calculer un chiffre de contrôle ou valider un ISBN-10 complet
Envoyez un champ number contenant les chiffres (et, pour la validation, le caractère de contrôle final). Les espaces en tête et en fin sont trimés ; les tirets et espaces internes sont supprimés afin que des formes d’éditeur courantes comme 0-306-40615-2 puissent être validées sans nettoyeur séparé. Le mode compute est le défaut : fournissez exactement neuf chiffres après nettoyage.
Le mode validate attend un ISBN-10 complet de dix caractères après nettoyage — neuf chiffres suivis de 0-9 ou X (X insensible à la casse, mis en majuscule). Cette forme permet des messages du type « vous avez saisi X, Y était attendu » dans les formulaires sans second appel. Chaînes vides, longueurs incorrectes, lettres autres qu’un X final et valeurs de mode invalides échouent avant toute somme et ne sont pas facturées.
Préférez compute lorsque vous créez ou complétez des numéros partiels ; préférez validate lorsqu’un utilisateur, un fichier partenaire ou un scanner fournit un ISBN-10 complet et que vous avez besoin d’une porte booléenne avant la recherche.
Où les chiffres de contrôle ISBN-10 s’intègrent dans les systèmes réels
Les éditeurs et emballeurs émettent encore des ISBN-10 sur le stock ancien, les listes de soldes et les tableurs de droits, même après que l’ISBN-13 est devenu la norme de détail. Les flux de bibliothèque et d’occasion reçoivent des listes de donateurs saisies depuis des pages de titre poussiéreuses ; un seul chiffre permuté doit faire échouer la validation avant une recherche OPAC manquée.
Les vendeurs de places de marché collent des colonnes mixtes ISBN-10 et ISBN-13 dans des outils d’inventaire — acheminer les lignes de dix caractères par ce vérificateur et les lignes de treize chiffres par un chemin de type EAN maintient chaque famille honnête. Une vérification réussie ne prouve pas que le livre existe, est disponible ou correspond à un titre — elle prouve seulement que la chaîne est bien formée selon l’algorithme de chiffre de contrôle ISBN-10, le même critère d’honnêteté que pour toute somme de contrôle.
Cas d’usage
Auditer des colonnes de catalogue héritées
Validez par lots chaque champ ISBN-10 d’un export de bibliothèque ou de droits et mettez en quarantaine les lignes dont le caractère de contrôle ne correspond plus à la valeur attendue recalculée.
Questions fréquentes
Qu’est-ce qu’un chiffre de contrôle ISBN-10 ?
C’est le dixième caractère d’un ISBN-10, calculé par une somme pondérée modulo 11 sur les neuf premiers chiffres de sorte que le code complet soit congruent à zéro modulo onze. Lorsque le reste exige la valeur dix, le caractère s’écrit X.
Pourquoi le chiffre de contrôle s’affiche-t-il parfois comme X ?
L’ISBN-10 utilise la base onze pour la valeur de contrôle. Lorsque la valeur requise est dix, la norme imprime X au lieu d’un chiffre pour que le code reste long de dix caractères.
Comment le chiffre de contrôle ISBN-10 est-il calculé ?
Multipliez les neuf chiffres par 10, 9, 8 et ainsi de suite jusqu'à 2, puis additionnez les produits. Le chiffre de contrôle est la valeur de 0 à 10 qui rend le total, contrôle compris une fois, divisible par 11 ; 10 s'écrit X.
Puis-je coller un ISBN-10 avec des tirets ?
Oui. Les espaces et les tirets sont retirés d'abord, si bien qu'une forme comme 0-306-40615-2 se vérifie directement. Toute lettre autre qu'un X final est refusée.
Un ISBN-10 valide prouve-t-il que le livre existe ?
Non. Réussir la vérification montre seulement que les dix caractères respectent la règle de l'ISBN-10. Aucune base de titres n'est consultée : cela ne dit pas si le livre existe, est disponible ou correspond à un titre.
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/isbn10 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"number":"030640615"}'const res = await fetch("https://api.kit.forhosting.com/enc/isbn10", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"number": "030640615"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/isbn10",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"number": "030640615"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/isbn10", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"number":"030640615"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"number":"030640615"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/isbn10", 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": "030640615"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.isbn10",
"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
Elle rejette les lettres autres qu’un X final, les longueurs incorrectes et les entrées vides avec une erreur invalid_input claire, sans deviner. Utilisez-la gratuitement dans le navigateur ou appelez l’API KIT au prix publié ; les deux chemins exécutent la même arithmétique déterministe, sans réseau ni consultation de catalogue stocké.
Comment calculer un chiffre de contrôle ou valider un ISBN-10 complet
La réponse inclut check_digit comme chaîne d’un caractère (0-9 ou X), with_check comme les neuf chiffres plus ce caractère, l’entrée normalisée de neuf chiffres, length dix et algorithm isbn10. La réponse indique valid true lorsque la somme pondérée est divisible par onze, et inclut toujours le check_digit fourni, expected_check_digit recalculé à partir des neuf premiers chiffres seuls, le payload de neuf chiffres et length dix. Comme le chemin est parse pur, sans horloge, aléatoire ni réseau, la même entrée produit toujours le même JSON sur l’outil gratuit du navigateur et sur l’API. À $0.002 par requête réussie, vous protégez les imports de catalogue en masse, les formulaires d’onboarding et les imprimantes d’étiquettes sans négocier un palier sur mesure.
Où les chiffres de contrôle ISBN-10 s’intègrent dans les systèmes réels
Les imprimeries qui produisent encore des codes-barres ISBN-10 ou des lignes lisibles par l’humain peuvent appeler le mode compute après attribution du corps à neuf chiffres et imprimer with_check sans calculer à la main les cas avec X.
Cas d'intégration
Compléter un numéro de livre à neuf chiffres
Après avoir attribué le groupe d’enregistrement, l’éditeur et le corps du titre, appelez le mode compute et stockez ou imprimez with_check afin que chaque ISBN-10 porte le chiffre final ou le X correct.
Valider des codes ISBN-10 saisis ou collés
Lorsqu’un formulaire ou un CSV fournit un code complet de dix caractères (tirets autorisés), appelez le mode validate et bloquez la recherche si valid est false, en affichant expected_check_digit pour aider à corriger une faute de frappe.
Questions techniques
Comment calculer un chiffre de contrôle ISBN-10 avec cette API ?
Envoyez un POST avec number égal à neuf chiffres et mode compute (ou omettez mode). La réponse inclut check_digit (0-9 ou X) et with_check (l’ISBN-10 complet de dix caractères).
Comment valider un ISBN-10 complet ?
Envoyez un POST avec le code complet de dix caractères (tirets optionnels) et mode validate. La réponse inclut valid, check_digit, expected_check_digit et payload (les neuf premiers chiffres).
L’outil de chiffre de contrôle ISBN-10 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.