Cifra di controllo ISBN-13
Le 12 cifre 978030640615 ricevono la cifra di controllo 7, quindi l'ISBN-13 completo è 9780306406157. Completi il numero di un libro prima di stampare il codice a barre, oppure verifichi un ISBN di 13 cifre prima che arrivi al gestionale di una libreria. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Numero
- 978030640615
- Modalità di calcolo
- Compute
- Input
- 978030640615
- Cifra di controllo
- 7
- Con cifra di controllo
- 9780306406157
I libri moderni e molti prodotti multimediali si identificano con un International Standard Book Number a tredici cifre: l’ISBN-13. Le prime tre cifre sono un prefisso GS1 bookland (in genere 978 o 979), le cifre centrali codificano il gruppo di registrazione, il registrante e la pubblicazione, e l’ultima cifra è una cifra di controllo che intercetta errori di una sola cifra in digitazione o scansione prima che il codice raggiunga un catalogo, una libreria o un annuncio su marketplace.
Cosa dicono le tredici cifre di un ISBN
Un ISBN-13 identifica con tredici cifre l'edizione di un libro e molti altri prodotti editoriali. Le prime tre formano il prefisso GS1 dei libri, quasi sempre 978 o 979. Le cifre centrali indicano il gruppo di registrazione, l'editore e la singola pubblicazione, con lunghezze che variano secondo l'agenzia che le ha assegnate. L'ultima cifra è quella di controllo. Per struttura il numero è un EAN-13, lo stesso codice a barre a tredici cifre delle confezioni nei negozi, e la stessa regola protegge entrambi da una cifra digitata o letta male prima che arrivi a un catalogo, a una libreria o a un marketplace.
Come si calcola la cifra di controllo e cosa non può dire
Prenda le dodici cifre che precedono il controllo e le scorra da sinistra a destra, moltiplicando la prima per uno, la seconda per tre e così via, alternando. Sommi i prodotti, sottragga da dieci il resto della divisione per dieci e trasformi un eventuale dieci in zero. Per 978030640615 il risultato è 7, quindi l'ISBN completo è 9780306406157. Il codice va scritto solo con cifre: lettere, trattini o una lunghezza sbagliata vengono rifiutati invece di essere ripuliti in silenzio. Una cifra di controllo che torna significa che il codice è ben formato, non che un'agenzia ISBN lo abbia registrato, perché nessuna agenzia viene consultata.
Come si calcola la cifra di controllo ISBN-13
Un ISBN-13 ha sempre tredici cifre ed è strutturalmente identico a un codice a barre prodotto EAN-13 / GTIN-13 usato sul packaging retail. La tredicesima cifra è la cifra di controllo. In modo equivalente, la stringa completa di tredici cifre inclusa la cifra di controllo deve avere una somma ponderata multipla di dieci con gli stessi pesi da sinistra a destra.
È la stessa famiglia di regole mod-10 usata per GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13 / ISBN-13) e GTIN-14; solo la forma bookland fissa a tredici cifre e il prefisso 978/979 rendono l’ISBN-13 specifico per chi cerca. L’algoritmo è deterministico e locale: nessuna consultazione all’agenzia ISBN, nessuna chiamata di rete e nessun orologio.
Casi d'uso
Controllare le colonne ISBN-13 in cataloghi ed export ONIX
Convalidi in batch ogni ISBN a tredici cifre in un PIM, un caricamento bibliotecario o un CSV partner e metta in quarantena le righe la cui cifra di controllo non coincide più con il valore atteso ricalcolato.
Domande frequenti
Che cos’è una cifra di controllo ISBN-13?
È la tredicesima cifra di un codice a barre ISBN-13, calcolata con una somma ponderata mod-10 (pesi alternati 1 e 3 da sinistra) affinché errori di una sola cifra in digitazione o scansione siano di solito intercettati prima di archiviare o stampare il codice.
Cosa succede con lunghezza errata, lettere o trattini?
I task di convalida falliti non vengono fatturati. Rimuova i trattini prima dell’invio.
Lo strumento di cifra di controllo ISBN-13 è gratuito?
Lo strumento nel browser è gratuito e gira in locale.
Un ISBN-13 è la stessa cosa di un codice EAN-13?
Come struttura sì: un ISBN-13 è un numero EAN-13 di tredici cifre che inizia con il prefisso dei libri 978 o 979 e segue la stessa regola della cifra di controllo dei codici a barre dei prodotti al dettaglio.
Un ISBN-13 valido dimostra che il libro è registrato?
No. Una cifra di controllo corretta indica solo che le 13 cifre sono coerenti tra loro. Non viene consultata alcuna agenzia ISBN, quindi non conferma che il numero sia stato assegnato a un libro.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo 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)Esempio di richiesta
{
"number": "978030640615"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.isbn13",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Questa capacità applica la regola standard ISBN-13 mod-10 su un payload di dodici cifre — pesi alternati uno e tre da sinistra — e restituisce la cifra di controllo più il codice a barre completo a tredici cifre, oppure convalida una stringa di tredici cifre con un indicatore valid esplicito e la cifra attesa. Input non numerico e lunghezze errate falliscono con invalid_input invece di una pulizia silenziosa, così Lei non archivia mai un ISBN a metà. La stessa aritmetica pura gira gratis nel browser e al prezzo API pubblicato per le pipeline di automazione.
Come si calcola la cifra di controllo ISBN-13
Le prime dodici cifre formano il payload del numero del libro: un prefisso GS1 a tre cifre (quasi sempre 978 o 979 per i libri), un elemento di gruppo di registrazione, un elemento registrante (editore) e un elemento di pubblicazione le cui lunghezze variano secondo le regole dell’agenzia. Per calcolarla, scorra le dodici cifre del payload da sinistra a destra con posizioni base 1: moltiplichi ogni cifra in posizione dispari per uno e ogni cifra in posizione pari per tre, sommi quei prodotti, poi prenda la cifra di controllo come dieci meno quella somma modulo dieci, di nuovo modulo dieci così un resto zero produce cifra di controllo zero. Rispetto ai validatori multi-simbologia, l’intento di ricerca qui è stretto: chi ha bisogno del calcolatore di cifra di controllo ISBN-13 per payload di dodici cifre, non di un verificatore generale UPC o GTIN di cassa.
Contratto di input, modalità e comportamento degli errori
Invii un campo number che contenga solo caratteri da zero a nove. Una lunghezza errata è un errore esplicito che nomina la modalità e la lunghezza inviata — dodici per compute, tredici per validate — così i moduli client possono mostrare «servono dodici cifre» senza indovinare. Stringhe vuote, number assente e valori di mode non validi falliscono prima di qualsiasi somma ponderata e non vengono fatturati. Preferisca compute quando crea o completa numeri di libro da un corpo di dodici cifre; preferisca validate quando subordina un’importazione di catalogo, una scansione POS o un annuncio marketplace a un codice a barre ISBN-13 completo a tredici cifre. Spazi, trattini, lettere e punti decimali sono respinti come input non numerico con invalid_input affinché un valore ripulito in silenzio non raggiunga mai lo storage — se incolla 978-0-306-40615 senza la cifra di controllo, deve prima togliere i trattini lato client oppure inviare la forma solo cifre. La modalità compute è il predefinito: il motore richiede esattamente dodici cifre, restituisce check_digit come stringa di un carattere e restituisce with_check come l’ISBN-13 a tredici cifre che Lei può stampare su un codice a barre o persistere in un catalogo. La modalità validate richiede esattamente tredici cifre; la risposta indica valid true quando la cifra finale coincide con l’expected_check_digit ricalcolato, e include sempre payload (le prime dodici cifre), check_digit, expected_check_digit e length tredici. Alias come digits, isbn e code sono accettati per lo stesso campo di payload così le integrazioni che già parlano di «isbn» non devono rinominare. Poiché il percorso è parse puro senza orologio, fonte casuale o rete, lo stesso corpo JSON produce sempre lo stesso risultato JSON sullo strumento gratuito del browser e sull’API a $0.002 per richiesta riuscita.
Dove le cifre di controllo ISBN-13 si inseriscono nei flussi reali
Editori e team di catalogo ricevono numeri interni di libro a dodici cifre — prefisso più gruppo di registrazione, registrante e titolo — e devono aggiungere la cifra di controllo ISBN-13 ufficiale prima di stampare codici a barre EAN-13 su copertine, sovraccoperte o adesivi. Le app POS di libreria e di ricezione convalidano codici a tredici cifre al bancone affinché una sola trasposizione non crei un titolo fantasma né uno scostamento di magazzino. I job di qualità dati di biblioteche e aggregatori percorrono ogni colonna ISBN-13 in un export MARC, ONIX o CSV, chiamano la modalità validate e mettono in quarantena le righe dove valid è false — catturando sia modifiche umane sia bug di generatori che emettono ancora ISBN-10 legacy senza conversione corretta. I moduli di onboarding e-commerce e marketplace possono ricalcolare expected_check_digit e mostrare una correzione amichevole quando un venditore incolla un ISBN con l’ultima cifra digitata male. Non tratti un ISBN-13 che supera il controllo come prova di proprietà del titolo, di registrazione presso l’agenzia o di gruppi di trattini corretti; dimostra solo che la cifra mod-10 è coerente con il payload di dodici cifre secondo i pesi standard ISBN-13.
Casi di integrazione
Completare un numero di libro a 12 cifre per i codici a barre di copertina
Chiami la modalità compute con il payload di dodici cifre, memorizzi with_check e invii l’ISBN-13 a tredici cifre alla stampante di codici a barre EAN-13 o al record di catalogo.
Convalidare un ISBN-13 scansionato o digitato in ingresso
Quando uno scanner o un modulo invia tredici cifre, chiami la modalità validate e blocchi la ricerca se valid è false, mostrando expected_check_digit per correggere un solo errore di battitura.
Domande tecniche
Come calcola una cifra di controllo ISBN-13 con questa API?
Invii un POST con number di esattamente dodici cifre e mode compute (oppure ometta mode). La risposta include check_digit e with_check (l’ISBN-13 completo a tredici cifre).
Come convalida un ISBN-13 completo a tredici cifre?
Invii un POST con la stringa di tredici cifre e mode validate. La risposta include valid, check_digit, expected_check_digit e payload (le cifre senza l’ultima).