Widget
O widget da Veridia é um único custom element HTML, <veridia-widget>. Ele executa o fluxo de captura no navegador: permissão de câmera, frente do documento (e verso), selfie, desafio opcional de prova de vida ativa (liveness), checagens de qualidade, upload e envio.
É a forma mais rápida de integrar a Veridia. Você não escreve código de captura, não toca no endpoint de upload e não lida com codificação de imagens.
<script src="https://widget.xxuxe.online/face-api.js"></script>
<script type="module" src="https://widget.xxuxe.online/veridia-widget.min.js"></script>
<veridia-widget
publishable-key="qv_pubt_YOUR_KEY"
country="PY"
document-type="dni"
locale="es">
</veridia-widget>
O que o widget faz
- Solicita a câmera e guia o usuário por cada etapa de captura.
- Executa checagens de qualidade no cliente (nitidez, brilho, reflexo, presença de rosto) e pede uma nova captura quando um quadro está inutilizável.
- Chama
POST /v1/verify/init, faz upload de cada imagem e chamaPOST /v1/verify/submit. - Emite exatamente dois eventos:
veridia:completeeveridia:error.
O que o widget não faz
Ele nunca te entrega o veredito. Esta é a coisa mais importante de entender antes de integrar.
veridia:complete dispara quando o envio foi aceito, não quando a pessoa passou. O campo status (queued / processing / completed) descreve o pipeline, não o resultado. O resultado — approved, review, rejected — vive em outro eixo e só é legível com uma chave secreta, a partir do seu servidor:
- Preferencialmente: receba o webhook.
- Ou: faça seu backend chamar
GET /v1/verify/{id}com uma chaveqv_sec_*/qv_sect_*.
O widget carrega uma chave publicável (qv_pub_* / qv_pubt_*). Essa chave pode iniciar e enviar verificações. Ela não pode ler vereditos, por design — ela fica visível para qualquer pessoa que abra o código-fonte da sua página. Se pudesse ler vereditos, qualquer um poderia ler os seus.
Ramificar com base em status para ativar uma conta admite todo candidato rejeitado. O widget não pode te proteger disso; só ler verdict no servidor pode.
A chave publicável não é um controle de acesso
Chaves publicáveis têm uma lista allowedOrigins. Hoje toda chave é criada com essa lista vazia, e uma lista vazia permite todas as origens. A checagem também só se aplica a navegadores — um cliente server-side não envia cabeçalho Origin e sempre passa.
Trate allowedOrigins como uma forma de delimitar onde seu widget deve rodar, não como um perímetro. Veja Autenticação.
Upload da galeria
O widget permite que o usuário escolha a foto do documento da galeria em vez de fotografá-la com a câmera. É opcional, o usuário escolhe, e vale apenas para o documento — a selfie e o desafio de prova de vida nunca podem vir de um arquivo. Detalhes em Customização.
Para onde ir em seguida
- Instalação — HTML puro, React, Next.js, Vue, Angular, WebView, CSP.
- Configuração — cada atributo, seu default real e o setter programático
config. - Eventos — os dois eventos, o formato exato do
detaile a tabela completa de códigos de erro. - Customização — cor de destaque, idioma, dimensionamento, estender o element.
- Exemplos — integrações completas e executáveis, de ponta a ponta.