Pular para o conteúdo

PUT /clients/:id/kyc/approve

Aprova manualmente o KYC de um cliente. Use quando o screening automático cair em REVIEW e compliance revisou.

PUT /api/v1/clients/{id}/kyc/approve
Authorization: Bearer $SENTINEX_JWT
Content-Type: application/json
{
"target_tier": "STANDARD",
"rationale": "Documento RG validado manualmente. Selfie liveness 99%. Bureau cadastral retornou consistente.",
"evidence_ids": ["evd_01HVZ…", "evd_01HVZ…"],
"valid_until": "2027-05-18T00:00:00Z"
}
Campo Required Notas
target_tier STANDARD ou ENHANCED
rationale Justificativa, mínimo de 30 caracteres (audit)
evidence_ids n/a UUIDs de evidências (POST /evidence)
valid_until n/a Quando re-verificar; default = 1 ano
{
"success": true,
"data": {
"client_id": "c1b2c3d4-…",
"kyc_tier": "STANDARD",
"approved_at": "2026-05-18T15:00:00Z",
"approved_by": "user_…",
"valid_until": "2027-05-18T00:00:00Z",
"audit_trail_hash": "9f2c8a7e…"
}
}
Tier Limite transacional Documentação exigida
BASIC R$ 1.000/mês Email + nome
STANDARD R$ 50.000/mês CPF validado RFB + doc identidade
ENHANCED Sem limite + Comprovante endereço + selfie liveness + PEP screening + source of funds
  • Escopo clients:write
  • Role Compliance ou TenantAdmin
{
"event": "kyc.completed",
"data": {
"client_id": "c1b2c3d4-…",
"kyc_tier": "STANDARD",
"approved_at": "2026-05-18T15:00:00Z"
}
}

Para rejeitar, use PUT /clients/:id/kyc/reject com motivo (rationale obrigatório). Cliente fica BLOCKED e operações são recusadas.