Crear sesión de verificación
El endpoint para crear una sesión de verificación te permite crear una nueva sesión de verificación de identidad basada en una credencial para votar (INE) mexicana.
Descripción
Sección titulada «Descripción»Este proceso realiza múltiples validaciones para verificar la identidad del usuario:
- Extracción de datos mediante OCR (texto visible) y MRZ (zona de lectura mecánica).
- Prueba de vida y comparación de fotografías.
- Consulta a servicios oficiales: RENAPO (validación de CURP) y Lista Nominal del INE (registro vigente).
El siguiente diagrama muestra el flujo de una sesión de verificación:
Método: POST
Endpoint
Sección titulada «Endpoint»https://api.verificamex.com/identity/v2/identity/sessionsEncabezados de la Solicitud
Sección titulada «Encabezados de la Solicitud»Para realizar la solicitud es necesario incluir los siguientes encabezados:
| Encabezado | Valor | Descripción |
|---|---|---|
| Accept | application/json | Tipo de contenido de la solicitud. |
| Authorization | Bearer {tu_token} | Token generado para autenticar al usuario. |
Cuerpo de la Solicitud
Sección titulada «Cuerpo de la Solicitud»El cuerpo de la solicitud debe contener los siguientes parámetros:
| Parámetro | Tipo | Descripción |
|---|---|---|
| validations | String | Validaciones a realizar, valores permitidos: "INE", "CURP". |
| redirect_url | String | URL a la que se redirigirá el usuario una vez finalizada la verificación. |
| webhook | String Opcional | URL a la que se enviará una petición POST con el resultado de la validación. |
| only_mobile_devices | Boolean Opcional | Indica si la verificación solo se realizará en dispositivos móviles. |
| with_webhook_binaries | Boolean Opcional | Indica si se enviarán los binarios de la validación en el webhook. |
| optionals | Object Opcional | Objeto dedicado a guardar información relevante para cliente pero que no es necesaria para la validación. |
| logo | String Opcional | URL del logo que se mostrará en la pantalla de verificación. |
| phone_number | String Opcional | Número de teléfono para enviar la sesión de verificación mediante WhatsApp en formato nacional de 10 dígitos. |
| customization | Object Opcional | Objeto dedicado a guardar información relevante para cliente pero que no es necesaria para la validación. |
| customization.button_color | String Opcional | Color de botones en la interfaz en formato hexadecimal. |
| customization.background_color | String Opcional | Color de fondo en la interfaz en formato hexadecimal. |
| customization.primary_color | String Opcional | Color primario en la interfaz en formato hexadecimal. |
| customization.secondary_color | String Opcional | Color secundario en la interfaz en formato hexadecimal. |
| customization.button_text_color | String Opcional | Color del texto de los botones en la interfaz en formato hexadecimal. |
Ejemplo de cuerpo de la solicitud
Sección titulada «Ejemplo de cuerpo de la solicitud»{ "validations": "INE", "redirect_url": "https://www.google.com", "webhook": "https://www.google.com", "only_mobile_devices": true, "with_webhook_binaries": true, "optionals": { "name": "John Doe" }, "logo": "https://www.google.com", "phone_number": "5512345678", "customization": { "button_color": "#000000", "background_color": "#000000", "primary_color": "#000000", "secondary_color": "#000000", "button_text_color": "#000000" }}Respuesta del Endpoint
Sección titulada «Respuesta del Endpoint» { "data": { "object": "VerificationSession", "id": "9d805854-f8a1-4135-ad57-3629ca0fc679", "status": "OPEN", "result": null, "errors": null, "comments": null, "only_mobile_devices": false, "redirect_url": "https://google.com", "webhook": "https://webhook.site/865ad512-7304-43f1-8945-46fdf4ab3d85", "validations": [ "INE", "CURP" ], "ine_reading": null, "optionals": { "id": "blaaq1231sa...." }, "form_url": "http://localhost:5173/verification/9d805854-f8a1-4135-ad57-3629ca0fc679", "created_at": "2024-11-16T08:27:13.000000Z", "updated_at": "2024-11-16T08:27:14.000000Z", "readable_created_at": "hace 5 segundos", "readable_updated_at": "hace 4 segundos" }, "meta": { "include": [ "ine", "renapo", "files" ], "custom": [] } }El cuerpo de la respuesta contiene los siguientes parámetros:
| Parámetro | Tipo | Descripción |
|---|---|---|
| data | Object | Objeto que contiene la información de la sesión de verificación. |
| object | String | Tipo de objeto, valores permitidos: “VerificationSession”. |
| id | String | Identificador único de la sesión de verificación. |
| status | String | Estado de la sesión de verificación, valores permitidos: “OPEN”, “COMPLETED”, “FAILED”. |
| result | String | Resultado de la sesión de verificación, valores permitidos: “SUCCESS”, “ERROR”. |
| errors | Array | Lista de errores generados durante la sesión de verificación. |
| comments | Array | Lista de comentarios generados durante la sesión de verificación. |
| only_mobile_devices | Boolean | Indica si la sesión de verificación solo se realizará en dispositivos móviles. |
| redirect_url | String | URL a la que se redirigirá el usuario una vez finalizada la verificación. |
| webhook | String | URL a la que se enviará una petición POST con el resultado de la validación. |
| validations | Array | Lista de validaciones realizadas en la sesión de verificación. |
| ine_reading | Object | Resultado interno de lectura INE. |
| ine_reading.DocumentData | Object[] | Datos brutos del OCR. |
| ine_reading.DocumentVerifications | Object[] | Validaciones locales al documento de identidad. |
| optionals | Object | Datos opcionales que el cliente envió. |
| form_url | String | URL de la pantalla de verificación. |
| created_at | String | ISO-8601 creación. |
| updated_at | String | ISO-8601 actualización. |
| readable_created_at | String | Fecha de creación de la sesión de verificación en formato legible. |
| readable_updated_at | String | Fecha de actualización de la sesión de verificación en formato legible. |
| ine | Object | Resultado de la validación del INE. |
| ine.data | Object | Objeto IneScraping. |
| ine.status | boolean | true si la credencial es válida ante lista nominal, false si no lo es. |
| renapo | Object | Resultado de la validación de la RENAPO (incluido si ?include=renapo). |
| renapo.data | Object | Objeto RenapoScraping. |
| renapo.status | boolean | true si la credencial es válida ante lista nominal, false si no lo es. |
| meta | Object | Objeto Meta con información adicional. |
| meta.include | String[] | Relaciones devueltas (“ine”, “renapo”, “files”). Valores permitidos: "ine", "renapo", "files". |
| meta.custom | String[] | Relaciones extra solicitadas por el cliente. |