Criar conta grátis

Documentação
Ver em Markdown

Documento de viagem estrangeiro (MRZ)

Documento de viagem estrangeiro (MRZ)

O módulo doc_global lê a zona de leitura mecânica (MRZ) de passaportes e de documentos de identidade em cartão, de qualquer país, no padrão internacional ICAO 9303. Ele substitui a Verificação de Identidade no flow (os dois leem a mesma foto do documento e são o mesmo passo de captura), e por isso não convivem no mesmo fluxo.

A prova que ele entrega é aritmética: cada dígito verificador impresso é recalculado, inclusive o composto, que é o que revela um documento com um campo alterado. Se a foto cortou a zona de leitura ou os dígitos não fecham por reflexo, o titular reenvia a foto: ninguém é reprovado por foto ruim. Se a zona não fecha consigo mesma, a verificação vai para review com o laudo do que bateu e do que não bateu, nunca para recusa automática. Documento vencido não reprova: a validade volta no resultado como informação, e o que fazer com um documento fora da validade é decisão da sua política.

// check_details do doc_global: o dado do documento COM a prova ao lado
{ "module": "doc_global", "passed": true, "outcome": "approved", "score": 95,
  "data": { "name": "ANA MARIA SOUZA", "surname": "SOUZA", "given_names": "ANA MARIA",
            "birth_date": "1990-04-12",
            "document": { "type": "P", "number": "FR1234567",
                          "valid_until": "2031-04-11", "issued_at": "2021-04-12",
                          "sex": "F",
                          "issuing_country": { "alpha3": "FRA", "name": "França" },
                          "nationality":     { "alpha3": "FRA", "name": "França" },
                          "mrz_format": "TD3", "mrz_valid": true,
                          "mrz_checks": { "document_number": true, "birth_date": true,
                                          "expiry_date": true, "composite": true },
                          "expired": false } } }

expired tem três estados de propósito: true (vencido), false (válido) e null (não deu para afirmar). null nunca é false: "não sei" e "está válido" são respostas diferentes. O nome vem da leitura visual e não é coberto por dígito verificador nenhum, então a MRZ nunca é autoridade sobre ele. O módulo não lê o chip do passaporte e não confere elementos de segurança do documento físico.

No sandbox, escolha o cenário pelos dois últimos dígitos do campo document do submit. Como este flow não lê CPF, é esse campo que carrega o sufixo: 00 aprova, 01 pede nova foto, 02, 41 e 42 vão para review, 43 pede outro arquivo e 45 aprova com o passaporte vencido (expired: true). A lista completa está em Sandbox.

Pronto para integrar? A chave de sandbox sai no painel, logo depois do cadastro. Criar conta grátis