Visão geral do backend de identidade
Um backend de identidade é a sua própria cópia da API de um provedor de identidade. Ele roda a verificação do jeito que o provedor roda, nos mesmos caminhos, e responde nos formatos de relatório do próprio provedor.
KYC e KYB são um produto só aqui, porque os provedores tratam eles assim. A mesma maquinaria de casos verifica uma pessoa ou uma empresa, e o que muda são as checagens, não a API.
O que ele guarda
- Um sujeito é a pessoa ou a empresa que está sendo verificada. Ele sobrevive a qualquer caso isolado, então um cliente que volta é o mesmo sujeito.
- Um documento é a prova apresentada para um sujeito. Ele é enviado uma vez e mais de um caso pode citar ele.
- Um caso é uma verificação, e as checagens vivem dentro dele.
- Uma sessão é uma captura hospedada, para os passos que o sujeito completa sozinho.
Tudo isso dura pouco de propósito. Os sujeitos, os casos e os documentos ficam por perto de um dia, e um link hospedado abre por 30 minutos. É uma janela de teste, não um depósito de registro.
As checagens
Um caso roda as checagens que você pedir, e cada uma volta com o resultado dela:
- Documentos e biometria:
document,facial_similarity,liveness - Dados declarados:
identity_database,proof_of_address,phone,email,device - Cruzamento com listas:
watchlist, que cobre sanções, pessoas politicamente expostas e imprensa adversa - Empresas:
business_registration,business_ownership,tax_id
Os provedores diferem no que oferecem, e o backend segue o provedor em vez de achatar todos. Cada marca declara as capacidades dela versão por versão, e o app mostra elas na aba Visão geral da marca.
O que um caso responde
Um caso terminado carrega uma decisão: approved, declined, ou review quando é para uma pessoa olhar. Antes disso ele pode estar processando, esperando o sujeito, pausado para quem revisa, retirado, ou vencido porque ninguém terminou a tempo.
A decisão não é a resposta inteira. Cada checagem informa o resultado dela, com os subresultados e as quebras que o provedor publica, e uma checagem de listas carrega os acertos que ela encontrou. Uma recusa cai na checagem que teria pegado ela, então um acerto em sanções derruba a checagem de listas e não a de documento. O código de parsing escrito para o fornecedor continua funcionando.
Empresas além de pessoas
Uma empresa é um sujeito como qualquer outro. As consultas a registros, a verificação de titularidade e as checagens de identificação fiscal rodam na mesma maquinaria de casos que um documento ou uma selfie, e voltam no mesmo formato de relatório. Nada da sua integração muda entre verificar um diretor e verificar a empresa que ele dirige.
Fluxos que o sujeito termina
Alguns passos entregam ao sujeito um link ou um token e ficam esperando: um token de SDK, a URL de um formulário, um link de uso único. O backend serve essa página, então um teste consegue abrir, completar e seguir. Até o sujeito enviar a página, o caso não tem resultado. Quando ele envia, o caso ganha um.
Nada é empurrado para você, então um teste consulta. Ler um caso que ainda está esperando é o que termina ele, então a leitura seguinte recebe a resposta.
Depois da decisão
As partes do ciclo de vida que vêm depois de uma resposta também estão modeladas, onde o provedor tem elas: cruzamento contínuo que reporta um acerto novo em um caso antigo, alguém que revisa e vira uma decisão, reiniciar um caso que parou no meio, rodar de novo uma checagem terminada sobre a mesma prova, e apagar os dados pessoais de um sujeito no lugar.
O que dá para percorrer
Identidade guarda quatro coisas que você lê no app: casos, sujeitos, documentos e sessões. Um caso se refere ao sujeito de que ele trata, então são listas separadas e não uma só.
Veja Atividade do backend.
Decidir o que acontece
Dê à pessoa ou à empresa o nome do resultado que você quer, e o caso volta assim, na checagem que responde por ele.
Veja Cenários de identidade.
Onde ele responde
Cada versão de um provedor responde sob o próprio caminho, que carrega a marca e a versão. Num backend hospedado, esse caminho fica no próprio host do backend:
https://<hostname>.kyx.mockz.io/onfido/v3.6/applicantsTudo depois desse caminho é a rota do próprio provedor.
Veja Criar um backend hospedado.