Validador de RVNR (Alemanha)
Valide a autenticidade, formato de 12 caracteres e Prüfziffer da Rentenversicherungsnummer alemã.
Sobre a Validação da Rentenversicherungsnummer (RVNR)
A validação técnica da RVNR confirma que o número submetido atende às normas do § 147 do SGB VI, verificando a estrutura de 12 caracteres e a consistência matemática da Prüfziffer.
O algoritmo expande a letra alfabética em sua representação posicional de 2 dígitos e aplica os pesos [2, 1, 2, 5, 7, 1, 2, 1, 2, 1, 2, 1], calculando a soma dos algarismos (Quersummen) e validando o resto módulo 10.
Anatomia & Estrutura da RVNR Alemã
A Rentenversicherungsnummer possui 12 caracteres estruturados conforme o § 147 do SGB VI e a Portaria VKVV:
| Posição | Campo | Tamanho | Significado & Regra | Exemplo |
|---|---|---|---|---|
| 1 e 2 | Bereichsnummer | 2 dígitos | Código do órgão previdenciário regional responsável pelo registro inicial | 10 |
| 3 a 8 | Data de Nascimento | 6 dígitos | Data no formato DDMMAA | 010490 |
| 9 | Letra do Sobrenome | 1 letra | Letra inicial do sobrenome de nascimento (A-Z) | A |
| 10 e 11 | Número de Série | 2 dígitos | Número sequencial diário (00-49 masculino, 50-99 feminino) | 44 |
| 12 | Prüfziffer | 1 dígito | Dígito verificador calculado via Quersummenverfahren Módulo 10 | 3 |
Algoritmo de Cálculo da Prüfziffer (Quersumme Módulo 10)
A Deutsche Rentenversicherung define a conversão da letra em ordem alfabética de 2 dígitos e multiplicação por fatores fixos:
Prüfziffer = sum(Quersumme(d[i] * Fator[i])) % 10
- 1. A letra na 9ª posição é convertida para sua posição no alfabeto alemão em 2 dígitos (A=01, B=02, ..., Z=26), gerando uma cadeia numérica de 12 dígitos.
- 2. Os 12 dígitos resultantes são multiplicados pelos fatores posicionais: [2, 1, 2, 5, 7, 1, 2, 1, 2, 1, 2, 1].
- 3. De cada produto calcula-se a soma dos algarismos (Quersumme, ex.: 9 * 2 = 18 -> 1 + 8 = 9).
- 4. Somam-se todas as 12 Quersummen calculadas.
- 5. O resto da divisão do total por 10 (total % 10) resulta na Prüfziffer final de 1 dígito.