Dígito verificador ISBN-10
Os nove dígitos 030640615 recebem o dígito verificador 2, e o ISBN-10 completo fica 0306406152. Complete um código de dez caracteres ou confira um vindo de um catálogo antigo, de uma nota fiscal ou de uma lista de doações antes que um erro estrague a busca. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Número
- 030640615
- Modo de cálculo
- Compute
- Entrada
- 030640615
- Dígito verificador
- 2
- Com dígito verificador
- 0306406152
Identificadores antigos de livros ainda aparecem em lombadas, faturas, catálogos de bibliotecas e bases de editoras como códigos ISBN-10 de dez caracteres. O último caractere não é decorativo: é um dígito verificador módulo 11 escolhido para que grupos de registro, códigos de editora ou números de título digitados errado falhem em uma soma ponderada simples. Esta capacidade calcula esse dígito a partir de qualquer corpo de nove dígitos puros — devolvendo de 0 a 9 ou a letra X quando o resto é dez — ou valida um ISBN-10 completo que você já tem, inclusive formas com hífens após remover separadores.
O que é o dígito verificador ISBN-10 e por que aparece o X
Um ISBN-10 é um identificador de dez caracteres para uma edição de livro no esquema antigo ISO 2108. Os nove primeiros caracteres são dígitos decimais que codificam o grupo de registro, a editora e o título; o décimo é um caractere de verificação derivado desses nove para que erros de transcrição tendam a quebrar uma condição modular.
A norma multiplica os dígitos por pesos decrescentes de dez a dois, soma os produtos e escolhe um valor de verificação de zero a dez de forma que a soma ponderada completa, com peso um no verificador, seja divisível por onze. Quando esse valor seria dez, o caractere impresso é a letra X em vez de uma cadeia de dois dígitos — daí códigos válidos como 080442957X.
Esta ferramenta implementa essa regra exata de módulo 11: o modo compute devolve o caractere de verificação para um corpo de nove dígitos; o modo validate recalcula o caractere esperado e informa se a cadeia completa é congruente com zero módulo onze. Não converte para ISBN-13, não consulta uma base de títulos e não trata códigos de barras varejistas EAN-13 como intercambiáveis sem a expansão do prefixo 978/979 que você faria em outro lugar.
Saber que o ISBN-10 é um identificador de livro de comprimento fixo com algoritmo distinto do Luhn módulo 10 de cartões ou dos dígitos varejistas EAN-13 ajuda a escolher a ferramenta certa: use esta página quando a cadeia que importa for um corpo ISBN-10 ou um código completo de dez caracteres com um X opcional.
Como calcular um dígito verificador ou validar um ISBN-10 completo
Envie um campo number com os dígitos (e, para validação, o caractere de verificação final). Espaços no início e no fim são removidos; hífens e espaços internos são eliminados para que formas comuns de editora como 0-306-40615-2 possam ser validadas sem um limpador separado. O modo compute é o padrão: forneça exatamente nove dígitos após a limpeza.
O modo validate espera um ISBN-10 completo de dez caracteres após a limpeza — nove dígitos seguidos de 0-9 ou X (X sem distinção de maiúsculas é convertido para maiúscula). Esse formato permite mensagens do tipo «você digitou X, esperava-se Y» em formulários sem uma segunda chamada. Cadeias vazias, comprimentos errados, letras diferentes de um X final e valores de mode inválidos falham antes de qualquer soma e não são cobrados.
Prefira compute ao criar ou completar números parciais; prefira validate quando um usuário, arquivo de parceiro ou scanner fornecer um ISBN-10 completo e você precisar de um filtro booleano antes da busca.
Onde os dígitos verificadores ISBN-10 se encaixam em sistemas reais
Editoras e embaladores ainda emitem ISBN-10 em estoque antigo, listas de saldos e planilhas de direitos mesmo depois de o ISBN-13 se tornar o padrão no varejo. Fluxos de biblioteca e de usados recebem listas de doadores digitadas a partir de folhas de rosto empoeiradas; um único dígito trocado deve falhar na validação antes de uma busca falha no OPAC.
Vendedores de marketplaces colam colunas mistas de ISBN-10 e ISBN-13 em ferramentas de inventário — encaminhar linhas de dez caracteres por este verificador e linhas de treze dígitos por um caminho no estilo EAN mantém cada família honesta. Uma verificação aprovada não prova que o livro existe, está em catálogo ou corresponde a um título — só prova que a cadeia está bem formada sob o algoritmo de dígito verificador ISBN-10, o mesmo critério de honestidade que se aplica a qualquer checksum.
Casos de uso
Auditar colunas de catálogo legado
Valide em lote cada campo ISBN-10 de uma exportação de biblioteca ou de direitos e coloque em quarentena as linhas cujo caractere de verificação não coincida mais com o valor esperado recalculado.
Perguntas frequentes
O que é um dígito verificador ISBN-10?
É o décimo caractere de um ISBN-10, calculado com uma soma ponderada módulo 11 sobre os nove primeiros dígitos para que o código completo seja congruente com zero módulo onze. Quando o resto exige o valor dez, o caractere é escrito como X.
Por que o dígito verificador às vezes aparece como X?
O ISBN-10 usa base onze para o valor de verificação. Quando o valor necessário é dez, a norma imprime X em vez de um dígito para o código continuar com dez caracteres.
A ferramenta de dígito verificador ISBN-10 é gratuita?
A ferramenta do navegador é gratuita e roda localmente.
Posso colar um ISBN-10 com hífens?
Sim. Espaços e hífens são removidos antes, então uma forma como 0-306-40615-2 pode ser conferida diretamente. Qualquer letra que não seja um X final é recusada.
Um ISBN-10 válido prova que o livro existe?
Não. Passar na verificação só mostra que os dez caracteres estão bem formados pela regra do ISBN-10. Nenhuma base de títulos é consultada, então isso não diz se o livro existe, está à venda ou corresponde a um título.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
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)Exemplo de requisição
{
"number": "030640615"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.isbn10",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Rejeita letras diferentes de um X final, comprimentos errados e entrada vazia com um erro invalid_input claro, sem adivinhar. Use grátis no navegador ou chame a API do KIT pelo preço publicado; ambos os caminhos executam a mesma aritmética determinística, sem rede e sem consulta a catálogo armazenado.
Como calcular um dígito verificador ou validar um ISBN-10 completo
A resposta inclui check_digit como cadeia de um caractere (0-9 ou X), with_check como os nove dígitos mais esse caractere, a entrada normalizada de nove dígitos, length dez e algorithm isbn10. A resposta indica valid true quando a soma ponderada é divisível por onze e sempre inclui o check_digit fornecido, expected_check_digit recalculado só com os nove primeiros dígitos, o payload de nove dígitos e length dez. Como o caminho é parse puro, sem relógio, aleatoriedade ou rede, a mesma entrada sempre produz o mesmo JSON na ferramenta gratuita do navegador e na API. A US$ 0,002 por solicitação bem-sucedida você protege importações em massa de catálogo, formulários de cadastro e impressoras de etiquetas sem negociar um plano sob medida.
Onde os dígitos verificadores ISBN-10 se encaixam em sistemas reais
Gráficas que ainda produzem códigos de barras ISBN-10 ou linhas legíveis por humanos podem chamar o modo compute depois que o corpo de nove dígitos for atribuído e imprimir with_check sem calcular à mão os casos com X.
Casos de integração
Completar um número de livro com nove dígitos
Depois de atribuir o grupo de registro, a editora e o corpo do título, chame o modo compute e armazene ou imprima with_check para que cada ISBN-10 traga o dígito final ou o X corretos.
Validar códigos ISBN-10 digitados ou colados
Quando um formulário ou CSV fornecer um código completo de dez caracteres (hífens permitidos), chame o modo validate e bloqueie a busca se valid for false, mostrando expected_check_digit para ajudar a corrigir um erro de digitação.
Perguntas técnicas
Como calculo um dígito verificador ISBN-10 com esta API?
Faça POST com number igual a nove dígitos e mode compute (ou omita mode). A resposta inclui check_digit (0-9 ou X) e with_check (o ISBN-10 completo de dez caracteres).
Como valido um ISBN-10 completo?
Faça POST com o código completo de dez caracteres (hífens opcionais) e mode validate. A resposta inclui valid, check_digit, expected_check_digit e payload (os nove primeiros dígitos).