Dígito verificador Steuer-ID Alemanha
Com os dez primeiros dígitos 8609574271 você obtém o dígito verificador 9 e o número completo 86095742719. Também pode colar uma IdNr de onze dígitos e conferir se o último está certo. 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
- 8609574271
- Modo de cálculo
- Compute
- Entrada
- 8609574271
- Dígito verificador
- 9
- Com dígito verificador
- 86095742719
O número de identificação fiscal alemão —steuerliche Identifikationsnummer, frequentemente abreviado como Steuer-ID ou IdNr— é a referência fiscal pessoal de onze dígitos, vitalícia, emitida pelo Escritório Federal Central de Impostos (Bundeszentralamt für Steuern). Empregadores, bancos, seguradoras e portais públicos pedem esse número em folhas de pagamento, contas de investimento e declarações digitais. O dígito final não é decoração arbitrária: ele é produzido por uma soma-produto iterada no estilo ISO 7064 sobre os primeiros dez dígitos, de modo que um único erro de digitação costuma ser rejeitado antes de o número ser armazenado ou comparado a um registro mestre. Esta capacidade implementa apenas essa soma de verificação. O modo compute aceita o corpo de dez dígitos sem o dígito verificador e devolve o dígito esperado mais a string completa de onze dígitos. O modo validate aceita um IdNr completo de onze dígitos (espaços ou hífens opcionais) e informa se o dígito final coincide com o valor recalculado.
Como o dígito verificador do Steuer-ID alemão é calculado
Segundo as regras oficiais da Identifikationsnummer publicadas para o esquema do Bundeszentralamt für Steuern, o dígito verificador é uma soma-produto iterada da família ISO 7064 MOD 11,10 aplicada a exatamente dez dígitos de carga. O produto em andamento começa em dez. Para cada dígito da esquerda para a direita, some o dígito ao produto atual, reduza essa soma módulo dez, substitua um resultado zero por dez, multiplique por dois e reduza módulo onze para obter o próximo produto.
Após o décimo dígito, o dígito verificador é onze menos o produto final; se esse valor for dez, o dígito armazenado é zero. A validação recalcula o dígito esperado a partir dos primeiros dez dígitos e o compara com o décimo primeiro caractere do número enviado. Um exemplo público conhecido é a base 8609574271, que produz o dígito verificador nove e a forma completa 86095742719; outro é 4703689281 com dígito verificador seis.
O primeiro dígito de um IdNr real nunca é zero, e esta ferramenta rejeita um zero inicial antes de qualquer aritmética para que dados de teste com preenchimento não passem como número oficial. O algoritmo é determinístico e local: sem chamada a registro populacional, sem relógio e sem aleatoriedade.
Em comparação com ferramentas genéricas de Luhn ou mod-11 para cartões e códigos de barras, a intenção de busca aqui é estreita: pessoas que precisam de uma calculadora de dígito verificador do tax ID da Alemanha, de uma ferramenta de Prüfziffer do Steuer-ID ou de um validador de Identifikationsnummer de onze dígitos, não de um hub de pagamento, dispositivo ou formatos fiscais multi-país.
Onde os dígitos verificadores do tax ID alemão se encaixam em fluxos reais
Empregadores e fornecedores de folha validam valores de Identifikationsnummer de onze dígitos na admissão de funcionários para que uma única transposição não gere um arquivo ELStAM ou Lohnsteuer rejeitado. Jobs ETL que carregam arquivos mestres de clientes ou funcionários alemães percorrem cada coluna de tax ID em um feed CSV ou XML, chamam o modo validate e colocam em quarentena as linhas em que valid é false, capturando tanto edições humanas quanto bugs de um em geradores.
Portais do setor público costumam aceitar formas com espaços e compactas; remover espaços e hífens antes da verificação de dígitos mantém o contrato simples sem inventar um segundo algoritmo. Não trate um Steuer-ID com soma de verificação correta como prova de que o titular está vivo no registro do Escritório Federal Central de Impostos, tem residência alemã ou está autorizado a um serviço; isso apenas prova que o dígito de verificação estilo ISO 7064 é consistente com os primeiros dez dígitos sob o algoritmo oficial da Identifikationsnummer alemã.
Casos de uso
Auditar colunas Steuer-ID em dados mestres
Valide em lote cada número de identificação fiscal alemão em um CSV de RH, ERP ou contabilidade e coloque em quarentena as linhas cujo dígito verificador não coincida mais com o valor esperado recalculado.
Perguntas frequentes
O que é o dígito verificador do tax ID alemão?
É o décimo primeiro dígito do número pessoal de identificação fiscal alemão (steuerliche Identifikationsnummer / Steuer-ID), calculado com uma soma-produto iterada no estilo ISO 7064 sobre os primeiros dez dígitos para capturar erros de digitação e de leitura antes de o número ser armazenado.
O que acontece com comprimento errado, letras ou zero inicial?
Tarefas de validação com falha não são cobradas.
Como é calculado o dígito verificador da Steuer-ID?
Um produto acumulado começa em 10. Cada um dos dez primeiros dígitos é somado a ele; da soma fica o resto da divisão por 10 (zero vira 10), que é dobrado e reduzido ao resto da divisão por 11. O dígito é 11 menos o produto final; se der 10, vira 0.
Um dígito verificador válido prova que o número existe?
Não. Ele só mostra que o último dígito combina com os dez primeiros. Não diz se a pessoa está no cadastro do Escritório Federal Central de Impostos, se mora na Alemanha ou se tem direito a algum serviço.
Posso digitar o número com espaços ou hífens?
Sim. Espaços e hífens são removidos antes da conferência, então 86 095 742 719 dá o mesmo resultado que a forma compacta. Qualquer outra pontuação é recusada em vez de ser apagada sem aviso.
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/steuer-id-germany \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"number":"8609574271"}'const res = await fetch("https://api.kit.forhosting.com/enc/steuer-id-germany", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"number": "8609574271"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/steuer-id-germany",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"number": "8609574271"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/steuer-id-germany", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"number":"8609574271"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"number":"8609574271"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/steuer-id-germany", 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": "8609574271"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.steuer_id_germany",
"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
Corpos não numéricos, comprimentos incorretos e zero inicial falham com invalid_input em vez de um recorte silencioso. A mesma aritmética pura roda grátis no navegador e ao preço publicado da API, sem consulta a registro e sem afirmar que uma soma de verificação válida signifique que a pessoa está registrada, residente ou autorizada a qualquer serviço.
Contrato de entrada, modos e comportamento de erro
Envie um campo number com o corpo do tax ID alemão. O modo compute é o padrão: o motor aceita exatamente dez dígitos sem o dígito verificador. Comprimento incorreto é um erro explícito que nomeia o modo e o comprimento enviado —dez para compute, onze para validate— para que formulários do cliente mostrem uma mensagem precisa sem adivinhar. Strings vazias, number ausente, valores de mode inválidos e zero inicial falham antes ou em vez de uma soma de verificação bem-sucedida e não são cobrados. Uma string bem formada de onze dígitos que simplesmente tem o dígito verificador errado devolve valid false sem lançar erro. Espaços e hífens são removidos para que formas de exibição com dígitos agrupados sejam aceitas após a normalização; outra pontuação e letras são rejeitadas como entrada não numérica com invalid_input, para que um valor limpo em silêncio nunca chegue ao armazenamento. Em caso de sucesso, devolve check_digit como string de um caractere, with_check como a Identifikationsnummer completa de onze dígitos, payload como os dez dígitos base, length onze e algorithm com o valor germany-steuer-id-iso7064-iterated. O modo validate aceita exatamente onze dígitos; a resposta informa valid true quando o dígito final coincide com expected_check_digit recalculado, e sempre inclui payload, check_digit, expected_check_digit e length. Alias como steuer_id, idnr, tin, digits e code são aceitos para o mesmo campo de carga útil, para que integrações que já usam nomes alemães ou ingleses não precisem renomear. Como o caminho é parse puro sem relógio, fonte aleatória ou rede, o mesmo corpo JSON sempre produz o mesmo resultado JSON na ferramenta gratuita do navegador e na API a US$ 0,002 por solicitação bem-sucedida.
Onde os dígitos verificadores do tax ID alemão se encaixam em fluxos reais
Bancos e fintechs recalculam expected_check_digit quando um cliente cola um Steuer-ID de uma carta ou digita em um formulário de abertura de conta, capturando erros antes do armazenamento KYC. Assessores fiscais e ferramentas de contabilidade completam bases de dez dígitos em sandboxes com o modo compute e depois armazenam with_check para clientes de demonstração que devem parecer identificadores de produção. Em todo fluxo a promessa é a mesma: apenas dígitos após a remoção opcional de separadores, comprimento fixo por modo, sem zero inicial, JSON estruturado que pode ser testado com goldens, comportamento idêntico no navegador gratuito e na API pré-paga, e invalid_input honesto quando a string não é uma sequência pura de dígitos do comprimento correto.
Casos de integração
Completar uma base Steuer-ID de 10 dígitos para testes
Chame o modo compute com dez dígitos de carga, armazene check_digit ou with_check e use o resultado em registros de teste de folha, KYC bancário ou portal fiscal que devam parecer Identifikationsnummer alemãs reais.
Validar tax IDs alemães digitados ou importados
Quando um formulário, arquivo de folha ou feed CRM enviar onze dígitos, chame o modo validate e bloqueie a inscrição se valid for false, mostrando expected_check_digit para ajudar a corrigir um único erro de digitação.
Perguntas técnicas
Como calcular um dígito verificador Steuer-ID com esta API?
Faça POST com number igual a exatamente dez dígitos (sem zero inicial) e mode compute (ou omita mode). A resposta inclui check_digit e with_check (a Identifikationsnummer completa de onze dígitos).
Como validar um tax ID alemão completo de onze dígitos?
Faça POST com a string de dígitos (espaços ou hífens opcionais) e mode validate. A resposta inclui valid, check_digit, expected_check_digit e payload (os dez dígitos base).
A ferramenta de dígito verificador do tax ID alemão é grátis?
A ferramenta do navegador é grátis. Solicitações à API usam saldo pré-pago KIT a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.