api

Listas PLD / AML

El endpoint de investigación cruza los datos de una persona contra varias listas oficiales en una sola llamada. Especifica qué listas quieres consultar vía el objeto services y recibe un resultado por lista.

Listas soportadas

ListaQué esAplica a
OFACOffice of Foreign Assets Control (sanciones EE. UU.)Cualquier persona
INTERPOLRed Notice de INTERPOLCualquier persona
INEPadrón Electoral del Instituto Nacional ElectoralPersonas físicas con clave de elector
RENAPO / CURPRegistro Nacional de PoblaciónPersonas físicas con CURP
SAT 69-BLista negra de personas morales del SATEmpresas / RFC
CDCBuró de crédito (Ficoscore blacklist)Personas con consentimiento explícito

Crear consulta

POST/api/v2/blacklist/investigate

Consulta una persona contra las listas seleccionadas

Headers

HeaderValorRequerido
AuthorizationBearer <api-key-jwt>
Content-Typeapplication/json

Body

NombreTipoRequeridoDescripcion
payloadobjectDatos de la persona a consultar. Campos a incluir dependen de las listas seleccionadas — ver tabla abajo.
servicesobjectMapa con las listas a consultar. Cada llave es el nombre de la lista, valor true para activar.

Campos del payload por lista

Campo del payloadRequerido para
firstName (string)OFAC, INTERPOL
lastName (string)OFAC, INTERPOL
motherLastName (string)OFAC, INTERPOL (opcional pero mejora matching)
curp (string, 18 chars)RENAPO, INE (si no envías ine)
ine (string, clave de elector 18 chars)INE
rfc (string, 12-13 chars)SAT 69-B

Ejemplo de solicitud

curl -X POST https://services.api.jaak.ai/api/v2/blacklist/investigate \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..." \
  -H "Content-Type: application/json" \
  -d '{
    "payload": {
      "firstName": "Juan",
      "lastName": "Pérez",
      "motherLastName": "García",
      "curp": "PEGJ800115HDFRRL09",
      "rfc": "PEGJ800115QJ8"
    },
    "services": {
      "ine": true,
      "interpol": true,
      "ofac": true,
      "renapo": { "curp": true },
      "sat": { "sat69b": true }
    }
  }'

Respuesta exitosa (200 OK)

{
  "eventId": "abc123-evt",
  "status": "success",
  "processTime": 2450,
  "data": {
    "ofac": {
      "found": false,
      "matches": []
    },
    "interpol": {
      "found": false,
      "matches": []
    },
    "ine": {
      "found": false,
      "matches": []
    },
    "renapo": {
      "found": true,
      "data": {
        "fullName": "JUAN PÉREZ GARCÍA",
        "gender": "HOMBRE",
        "birthDate": "1980-01-15",
        "nationality": "MEXICAN"
      }
    },
    "sat69b": {
      "found": false,
      "matches": []
    }
  }
}

Interpretación

  • found: false — la persona NO aparece en esa lista.
  • found: true + matches: [...] — hay coincidencias. Cada elemento del array tiene los datos del registro encontrado.
  • found: true + data: {...} (RENAPO) — confirmación de que la CURP existe + datos completos de la persona.

Coincidencias no son culpables

Una coincidencia en OFAC o INTERPOL no implica automáticamente que sea la misma persona. Aplica criterios adicionales de matching (fecha de nacimiento, nacionalidad, pais de residencia) antes de tomar una decisión de bloqueo.

Errores

Código HTTPerrorCodeDescripción
400BL02Falla en validación del payload (campos faltantes para servicios solicitados)
400BL03Payload inválido para algún servicio específico
401API Key inválida o expirada
500Error interno consultando listas externas

Consultar listas individualmente

Si solo necesitas una lista, puedes activarla únicamente:

{
  "payload": { "rfc": "PEGJ800115QJ8" },
  "services": { "sat": { "sat69b": true } }
}

La respuesta solo incluirá la sección sat69b.


Costos y latencia

ListaLatencia típicaNotas
OFAC< 200 msBúsqueda local indexada
INTERPOL< 300 msBúsqueda local indexada
INE800-2000 msConsulta externa al INE
RENAPO1500-3500 msConsulta externa a RENAPO
SAT 69-B< 500 msLista local actualizada diariamente

Cada lista activada cuenta como una consulta separada para tu cuota mensual.


Siguientes pasos

  • INE — consulta INE con imagen del documento
  • Webhooks — recibe notificaciones de consultas asíncronas
  • Errores — catálogo completo de códigos de error