O QI Sign entrega uma série de indicadores de fraude tanto pelo webhook de conclusão do envelope quanto pelo motor de regras embutido na plataforma. Com esses sinais, você consegue montar políticas para reprovar ou direcionar para análise manual.
| Regras de Assinatura |
A seguir, você encontra:
-
Descrição completa dos campos retornados no webhook
-
Explicação de todos os tipos de regras disponíveis no QI Sign
-
O que considerar para definir uma política antifraude
-
JSON de exemplo
1. 🔎 Indicadores enviados no Webhook
Abaixo estão os novos campos enviados pela OCR, Liveness e Validação Facial, com explicação de como interpretá-los.
🔤 Indicadores de OCR – integridade e autenticidade do documento
| Campo | Significado | true | false |
|---|---|---|---|
| found_state_text | Texto do estado no topo do RG | Detectado | Ausente/ilegível |
| found_side_text | Texto lateral (varia por documento) | Detectado | Ausente |
| found_header_text | Cabeçalho padrão do documento | OK | Ausente |
| found_footer_text | Rodapé do documento | OK | Ausente |
| found_illeterate_person_text | Indicação de “não alfabetizado” | Encontrado | Não encontrado |
| screen_display_detected | Documento exibido em tela (foto de monitor, celular, PDF etc.) | Evidência de tela | Captura direta |
| text_tampering_detected | Adulteração textual | Sinais detectados | Sem adulteração |
| face_tampering_detected | Adulteração na foto | Sinais detectados | Foto íntegra |
| all_edges_detected | Borda completa do documento | 4 bordas visíveis | Bordas faltando |
| has_physical_damage | Rasgos, danos físicos | Danos detectados | Sem danos |
| has_textual_legibility_issues | Texto ilegível | Problemas de leitura | Texto legível |
| found_anomalous_pdf_creator_or_producer | Indica se o software usado para criar ou editar o PDF é suspeito ou incomum | O PDF foi gerado por um software incomum ou associado a manipulações/manufatura de documentos falsos | O PDF foi criado/alterado por um software considerado legítimo (ex.: Adobe, Scanner normal etc.) |
| creation_and_modification_date_mismatch | Indica se existe uma diferença suspeita entre a data de criação do PDF e a data de modificação | O documento foi criado em um momento e modificado muito tempo depois, ou com padrões incompatíveis com um documento legítimo (ex.: RG escaneado de 2019 mas “modificado” digitalmente em 2024) | As datas de criação e modificação são coerentes (ex.: criado e nunca alterado, ou alterado logo depois de criado) |
📄 Quais campos aparecem em qual tipo de documento?
Depende do tipo e da face capturada.
Documentos com assinatura
-
found_illeterate_person_text
Documentos fotografados (todos os tipos)
-
screen_display_detected -
text_tampering_detected -
all_edges_detected -
has_physical_damage -
has_textual_legibility_issues
Documentos com foto (RG frente, CNH frente)
-
face_tampering_detected
CNH frente
-
found_header_text -
found_side_text
CNH verso
-
found_footer_text -
found_side_text
RG frente
-
found_state_text -
found_header_text -
found_footer_text
RG verso
-
found_header_text -
found_footer_text
CIN verso (subtipo do RG)
-
found_footer_text -
found_side_text
Documentos digitais
-
found_anomalous_pdf_creator_or_producer -
creation_and_modification_date_mismatch
🤳 Indicadores de Selfie / Liveness
Hoje o indicador adicional é:
| Campo | Significado | true | false |
|---|---|---|---|
| multiple_people | Detecta mais de uma pessoa na selfie | Suspeito (selfie com duas pessoas, foto de foto, etc.) | Captura individual normal |
👤 Indicadores de Biometria Facial
Validação de Face (face_validation_score)
-
Score de 0 a 100
-
Mede se a selfie combina com o CPF (biometria de base)
-
Pode ser usado com limiar personalizado (ex.: reprovar < 40)
Face Match com OCR (face_match_score)
-
Score de 0 a 100
-
Mede semelhança entre selfie e foto do documento
2. ⚙️ Regras disponíveis no motor do QI Sign
A plataforma permite automatizar decisões usando várias fontes de detecção.
A seguir, uma explicação clara sobre cada uma:
✔️ Consulta de Fraudes em Bureau
-
Reprova caso o CPF apareça em bases externas de fraude.
✔️ Banco de Fraudes
-
Reprova quando a face do usuário aparece no banco interno de fraudes (base histórica do próprio QI Tech).
✔️ Liveness
-
Reprova se a captura for considerada não viva.
✔️ Assinatura fora do Brasil
-
Detecta assinatura realizada fora do território nacional.
✔️ Lista de Bloqueio por Geolocalização
-
Se a assinatura ocorrer a menos de 100m de uma localização suspeita previamente cadastrada.
✔️ Lista de Dispositivos Bloqueados
-
Reprova logs vindos de dispositivos marcados como fraudadores reincidentes.
✔️ Mesmo IP, diferentes CPFs
-
Observa os últimos 30 dias.
-
Indica uso de IP em diversos CPFs → típico de fraude massiva automatizada.
✔️ Face Match de Documento
-
Pontuação 0 a 100.
-
Avalia similaridade selfie vs documento.
✔️ Validação de Faces
-
Pontuação 0 a 100.
-
Avalia selfie vs CPF (base biométrica).
✔️ Liveness – Indicadores
Atualmente disponível:
-
multiple_people
✔️ OCR – Indicadores
Possíveis seleções:
-
Pessoa analfabeta detectada
-
Documento com partes ocultas
-
Documento com danos físicos
-
Documento ilegível
-
Adulteração de documento ou foto
-
Documento exibido em tela
-
Criador do PDF incomum
-
Data de criação ≠ data de modificação do PDF
O cliente pode escolher um ou vários indicadores para compor uma decisão.
3. 🛡️ Recomendações para Política Antifraude
A seguir, sugestões de políticas equilibrando segurança e atrito.
🔥 Recomendar reprovação direta
-
Documento exibido em tela (
screen_display_detected = true) -
Adulteração textual ou facial (
*_tampering_detected = true) -
Liveness com múltiplas pessoas (
multiple_people = true) -
Face Match com documento muito baixo (<70)
-
Face Validation muito baixo (<61)
-
Dispositivo bloqueado
-
Assinatura em geolocalização marcada como suspeita
-
Mesmo IP usado para vários CPFs (últimos 30 dias)
⚠️ Recomendar análise manual
-
Bordas incompletas (
all_edges_detected = false) -
Legibilidade ruim (
has_textual_legibility_issues = true) -
Danos físicos aparentes
-
Divergências simples nos textos do documento
✅ Aprovação automática
-
Todos indicadores consistentes
-
Pontuações faciais acima do threshold definido
-
OCR estável e sem sinais de adulteração
4. 📦 Exemplo de Webhook
Abaixo, o exemplo do JSON recebido após a conclusão das assinaturas.
{
"id": "c2369dc9-7880-47ba-b5a2-02f96fe69e0e",
"status": "completed",
"webhook_type": "envelope_completed",
"signers": [
{
"id": "2d3d5dd2-c387-43e4-93a6-07b96edffd1c",
"biometry": {
"face_validation": {
"available": true,
"score": 74,
"provider": "qitech",
"recommendation": "approve"
},
"face_validation_available": true,
"fraud_base_flag": false,
"face_validation_score": 74
},
"liveness": {
"result": "live",
"flags": {
"multiple_people": false,
"total_execution_time": 29.576
}
},
"document": {
"face_match_score": 100,
"template": "rg_front",
"ocr": [
{
"template_type": "rg_front",
"document_data": {
"cpf_number": "000.000.000-00",
"name": "FULANO DE TAL",
"birthdate": "1990-01-01",
"expiration_date": "2033-06-21",
"place_of_birth": "SAO PAULO-SP",
"found_illeterate_person_text": false,
"all_edges_detected": false,
"found_state_text": true,
"found_footer_text": true,
"found_header_text": true,
"screen_display_detected": false,
"text_tampering_detected": false,
"face_tampering_detected": false,
"has_physical_damage": false,
"has_textual_legibility_issues": false
}
},
{
"template_type": "rg_back",
"document_data": {
"father_name": "CICLANO DE TAL",
"mother_name": "BELTRANA DE TAL",
"issuance_date": "2023-06-21",
"all_edges_detected": true,
"found_side_text": true,
"found_footer_text": true,
"screen_display_detected": false,
"text_tampering_detected": false,
"has_physical_damage": false,
"has_textual_legibility_issues": false
}
}
]
},
"signer_data": {
"id": "2d3d5dd2-c387-43e4-93a6-07b96edffd1c",
"name": "FULANO DE TAL",
"email": "fulano@example.com",
"phone": {
"number": "999999999",
"area_code": "11",
"international_dial_code": "55"
},
"birthdate": "1990-01-01",
"callback_url": "https://exemplo.com/status",
"document_number": "000.000.000-00",
"document_submission_method": "email",
"authentication_submission_method": "whatsapp"
},
"locations": []
}
],
"rule_analysis_status": "approved",
"decision_metadata": [],
"documents_reports": [
{
"id": "c2369dc9-7880-47ba-b5a2-02f96fe69e0e",
"url": "https://exemplo.com/documento.pdf"
}
]
}
Ficou com dúvidas? É só enviar um e-mail para suporte.caas@qitech.com.br que te ajudamos!
O que achou do artigo? Deixe seu feedback abaixo 👇