Conversor ISBN-10 para ISBN-13
O número 0306406152 em ISBN-10 vira 9780306406157 em ISBN-13: o prefixo 978 é acrescentado e o dígito verificador é recalculado, de 2 para 7. Cole qualquer uma das formas, com ou sem hífens, e receba as duas depois que o dígito verificador for conferido. 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
- ISBN
- 0306406152
- Entrada
- 0306406152
- Formato de entrada
- isbn10
- Direção
- isbn10_to_isbn13
- ISBN-10
- 0306406152
Editoras, livrarias, bibliotecas e sistemas de catálogo ainda encontram no mesmo fluxo tanto o número internacional de livro de dez dígitos quanto o de treze. Um ISBN-10 identifica a mesma edição que o correspondente ISBN-13 que começa com 978, mas o dígito verificador final não é o mesmo caractere: converter significa validar o código de origem e recalcular o dígito verificador da forma de destino. Esta capacidade aceita qualquer um dos formatos, remove hífens e espaços opcionais, verifica o dígito verificador e devolve as cadeias ISBN-10 e ISBN-13 quando a conversão é possível.
Como ISBN-10 e ISBN-13 se relacionam e por que o dígito verificador muda
Um International Standard Book Number identifica uma edição específica de um livro para o comércio, bibliotecas e sistemas de varejo. A forma antiga ISBN-10 usa nove dígitos de corpo mais um único caractere verificador que pode ser um dígito ou a letra X quando o resto módulo onze é dez.
A forma moderna ISBN-13 é um número de treze dígitos no estilo GTIN que, no comércio do livro, quase sempre começa com o prefixo bookland GS1 978 ou 979 e termina com um dígito verificador no estilo EAN calculado com pesos alternados de um e três.
Quando um ISBN-10 é reescrito como ISBN-13 sob o prefixo 978, os nove dígitos do corpo são preservados e três dígitos iniciais 978 são acrescentados, mas o antigo caractere verificador é descartado e um novo décimo terceiro dígito é calculado sobre os doze dígitos de dados. O caminho inverso remove o prefixo 978, mantém os nove dígitos seguintes e recalcula o caractere verificador ISBN-10 com a soma ponderada clássica módulo onze.
Códigos ISBN-13 com prefixo 979 são números de livro válidos sob as regras ISBN-13, porém não têm forma ISBN-10 correspondente, de modo que um conversor deve recusar essa direção em vez de inventar uma cadeia de dez caracteres.
Onde um conversor ISBN se encaixa em fluxos reais de catálogo
Sistemas de ponto de venda de livrarias costumam escanear um código de barras de treze dígitos enquanto linhas antigas de estoque ainda guardam a forma de dez; converter nos dois sentidos com validação do dígito verificador detecta importações digitadas erradas antes de criar SKU duplicados. Ferramentas de listagem em marketplaces que aceitam qualquer formato podem normalizar cada título para ISBN-13 no envio ao canal e ainda exibir o ISBN-10 legado que aparece em capas antigas e blocos CIP.
Scripts de migração de bibliotecas reescrevem grandes exportações MARC ou de planilhas e precisam de um oráculo determinístico que rejeite dígitos verificadores ruins em vez de preencher zeros. Operações editoriais que emitem códigos sob um prefixo de empresa GS1 já conhecem os doze dígitos de dados e ainda se beneficiam de um conversor pequeno ao integrar feeds de parceiros que misturam ISBN-10 com hífens e ISBN-13 compacto.
Trabalhos de QA e de qualidade de dados testam as duas direções com títulos conhecidos (por exemplo 0306406152 mapeia para 9780306406157) para que uma regressão de um caractere nunca chegue à produção. Não trate uma conversão bem-sucedida como prova de propriedade no registro nem de que o livro está em catálogo: só prova que as duas cadeias são aritmeticamente consistentes sob as regras de verificação de ISBN-10 e ISBN-13.
Casos de uso
Normalizar importações mistas de catálogo
Aceite ISBN-10 com hífens ou ISBN-13 compacto de um CSV, converta para ambas as formas com dígitos verificadores validados e armazene um único par canônico por edição.
Exibição dupla em marketplace e PDV
Mostre o valor de barras de treze dígitos para a leitura e continue imprimindo o ISBN clássico de dez dígitos em faturas e modelos de etiqueta antigos.
Portões de qualidade de dados antes de publicar
Rejeite linhas cujo ISBN falhe no dígito verificador ou use o prefixo 979 quando um sistema a jusante ainda exija ISBN-10.
Perguntas frequentes
Como converto ISBN-10 para ISBN-13?
Envie o ISBN-10 de dez caracteres (hífens opcionais) no campo isbn.
Como converto ISBN-13 de volta para ISBN-10?
Envie um ISBN-13 de treze dígitos que comece com 978.
Por que um ISBN-13 com 979 falha na conversão para ISBN-10?
Números de livro com prefixo 979 não têm equivalente ISBN-10 no mapeamento padrão.
Hífens e espaços são permitidos?
Sim. Separadores comuns são removidos antes da validação. Outras letras (exceto um X final no ISBN-10) e comprimentos errados são rejeitados como malformados.
Por que o último dígito muda na conversão?
Porque cada formato tem sua própria regra. O ISBN-10 usa uma soma ponderada módulo 11, enquanto o ISBN-13 usa pesos alternados de 1 e 3 módulo 10; por isso o verificador antigo é descartado e um novo é calculado.
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/isbn-convert \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"isbn":"0306406152"}'const res = await fetch("https://api.kit.forhosting.com/enc/isbn-convert", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"isbn": "0306406152"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/isbn-convert",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"isbn": "0306406152"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/isbn-convert", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"isbn":"0306406152"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"isbn":"0306406152"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/isbn-convert", 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
{
"isbn": "0306406152"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.isbn_convert",
"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
Códigos curtos ou longos demais, não numéricos onde se exigem dígitos, ou que falham no dígito verificador são rejeitados com invalid_input em vez de um palpite silencioso. Execute grátis no navegador ou chame a API do KIT ao preço publicado; os dois caminhos usam a mesma aritmética pura, sem consulta de rede a metadados do título.
Como ISBN-10 e ISBN-13 se relacionam e por que o dígito verificador muda
Este endpoint codifica exatamente essas regras: não busca títulos, editoras nem metadados de registro, e nunca inventa um dígito verificador que faria um origem inválido parecer válido.
Contrato de entrada, forma da resposta e comportamento de erro
O valor pode incluir espaços ou hífens para apresentação legível; esses separadores são removidos antes das verificações de comprimento e de dígito verificador. Envie por POST um corpo JSON com o campo obrigatório isbn (os aliases incluem number, code, text e value). Após a normalização, uma cadeia de dez caracteres com nove dígitos mais um dígito ou X é tratada como ISBN-10: o motor valida o caractere verificador, monta a carga de doze dígitos 978 mais os nove do corpo, acrescenta o dígito verificador ISBN-13 e devolve ambas as formas com direction isbn10_to_isbn13. Uma cadeia de treze dígitos é tratada como ISBN-13: o dígito verificador EAN é validado, o prefixo deve ser 978 ou 979, e só o caso 978 converte para ISBN-10 com direction isbn13_to_isbn10. Payloads de sucesso sempre incluem input (normalizado), input_format, direction, isbn10, isbn13, check_digit_isbn10, check_digit_isbn13 e prefix. Cadeias vazias, comprimentos errados, letras diferentes de um X final no ISBN-10, dígito verificador incorreto, código de treze dígitos fora do bookland e pedido com prefixo 979 para obter ISBN-10 falham com invalid_input e não são cobrados. Como o caminho é parse puro, sem relógio, fonte aleatória nem rede, a mesma entrada produz sempre o mesmo JSON na ferramenta gratuita do navegador e na API a US$ 0,002 por solicitação bem-sucedida.
Onde um conversor ISBN se encaixa em fluxos reais de catálogo
Em todo fluxo o contrato é o mesmo: uma cadeia isbn, direção detectada automaticamente, JSON estruturado que você pode fixar em testes, comportamento idêntico grátis no navegador ou com saldo pré-pago do KIT, e falha honesta quando a cadeia não é um ISBN conversível bem formado.
Perguntas técnicas
Quanto custa o conversor ISBN?
A ferramenta do navegador é gratuita. Solicitações à API usam saldo pré-pago do KIT a US$ 0,002 por chamada bem-sucedida; entrada inválida ou malformada não é cobrada.