Validación de transferencias SPEI
Confirma que el pago fue acreditado.
Entérate con certeza si una transferencia SPEI llegó a su destino. Obtén el comprobante oficial (CEP) de Banxico.
Resultado desde el Banco de México.
Pruébalo
De la imagen al veredicto.
Un pago real. Extraemos los datos de la imagen y lo confirmamos en Banxico. Observa la respuesta tal como se ve en la plataforma o en la API.
Validado en Banxico · 8 sep 2026, 13:10
- Comprobante recibido
- Datos extraídos
- Consultado en Banxico
- Confirmado
- Ordenante
- JORGE A. · BBVA MEXICO
- Beneficiario
- JESUS M. · BANORTE
- Fecha de operación
- 2026-09-08
- Tipo
- OCR confianza 0.90
- Clave de rastreo
- MBAN01002609080051771699
- Comprobante oficial
- CEP en PDF · XML
curl -X POST https://api.veriko.mx/v1/validate-ocr \
-H "Authorization: Bearer veriko_TU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "image_url": "https://tu-sistema.com/comprobante.jpg" }'
const res = await fetch("https://api.veriko.mx/v1/validate-ocr", {
method: "POST",
headers: {
"Authorization": "Bearer veriko_TU_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
image_url: "https://tu-sistema.com/comprobante.jpg",
}),
});
const { data } = await res.json();
console.log(data.attributes.status); // "valid"
import requests
res = requests.post(
"https://api.veriko.mx/v1/validate-ocr",
headers={"Authorization": "Bearer veriko_TU_API_KEY"},
json={"image_url": "https://tu-sistema.com/comprobante.jpg"},
)
print(res.json()["data"]["attributes"]["status"]) # "valid"
$ch = curl_init("https://api.veriko.mx/v1/validate-ocr");
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer veriko_TU_API_KEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS => json_encode([
"image_url" => "https://tu-sistema.com/comprobante.jpg",
]),
]);
$data = json_decode(curl_exec($ch), true)["data"];
echo $data["attributes"]["status"]; // "valid"
body, _ := json.Marshal(map[string]any{
"image_url": "https://tu-sistema.com/comprobante.jpg",
})
req, _ := http.NewRequest("POST", "https://api.veriko.mx/v1/validate-ocr", bytes.NewReader(body))
req.Header.Set("Authorization", "Bearer veriko_TU_API_KEY")
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
// res → { "data": { "attributes": { "status": "valid" } } }
"status": "valid"
Confirmado
{
"data": {
"type": "validation",
"id": "c3d4e5f6-a7b8-4012-8def-123456789012",
"attributes": {
"validation_type": "ocr",
"is_playground": false,
"status": "valid",
"banxico_status": "valid",
"processing_time_ms": 11700,
"created_at": "2026-09-08T19:28:06Z",
"completed_at": "2026-09-08T19:28:18Z",
"request_data": {
"image_url": "https://tu-sistema.com/comprobante.jpg"
},
"image_path": "ocr/2026/09/c3d4e5f6-a7b8-4012-8def-123456789012.jpg",
"ocr_result": {
"tipo_comprobante": "spei",
"clave_rastreo": "MBAN01002609080051771699",
"referencia_numerica": "0509260",
"fecha": "2026-09-08",
"hora": "13:10:00",
"monto": 250.0,
"banco_emisor": "BBVA",
"banco_receptor": "Banorte",
"nombre_ordenante": null,
"nombre_beneficiario": "Jesus M.",
"cuenta_beneficiaria": "•6546",
"cuenta_beneficiaria_es_parcial": true,
"cuenta_beneficiaria_is_masked": true,
"cuenta_beneficiaria_visible_last": "6546",
"concepto": "Pago de producto",
"confianza": 0.9,
"confianza_por_campo": {
"banco_emisor": 0.8,
"banco_receptor": 1,
"cuenta_beneficiaria": 0.8,
"monto": 1,
"clave_rastreo": 1,
"fecha": 1
}
},
"ocr_confidence": 0.9,
"normalized_data": {
"tipo_comprobante": "spei",
"clave_rastreo": "MBAN01002609080051771699",
"referencia_numerica": "0509260",
"fecha": "2026-09-08",
"hora": "13:10:00",
"monto": 250.0,
"emisor_code": "40012",
"emisor_name": "BBVA MEXICO",
"receptor_code": "40072",
"receptor_name": "BANORTE",
"cuenta_beneficiaria": "072580012706676546",
"cuenta_beneficiaria_type": "clabe",
"nombre_beneficiario": "Jesus M.",
"concepto": "Pago de producto",
"confianza": 0.9
},
"banxico_result": {
"operationDate": "2026-09-08",
"processingTime": "13:10:57",
"speiKey": "40072",
"trackingKey": "MBAN01002609080051771699",
"certificateNumber": "00001000000710905384",
"senderBank": "BBVA MEXICO",
"senderName": "JORGE A.",
"senderAccountType": "40",
"senderAccount": "012180••••••••4195",
"senderRfc": "XAXX010101000",
"receiverBank": "BANORTE",
"beneficiaryName": "JESUS M.",
"beneficiaryAccountType": "40",
"beneficiaryAccount": "072580012706676546",
"beneficiaryRfc": "XAXX010101000",
"amount": 250.0,
"iva": 0.0,
"paymentConcept": "Pago de producto"
},
"retry_state": {
"enabled": false,
"max_retries": null,
"interval_seconds": null,
"outcomes": null,
"attempts_completed": 0,
"next_attempt_at": null,
"resolved_at": null,
"exhausted_at": null,
"cancelled_at": null,
"terminal_state": null
}
},
"links": {
"self": "/v1/validations/c3d4e5f6-a7b8-4012-8def-123456789012",
"cep_xml": "/v1/validations/c3d4e5f6-a7b8-4012-8def-123456789012/cep?format=xml",
"cep_pdf": "/v1/validations/c3d4e5f6-a7b8-4012-8def-123456789012/cep?format=pdf"
}
},
"meta": {
"version": "1.74.0",
"api_version": "v1",
"request_id": "e6f7a8b9c0d1",
"datetime": {
"timezone": "UTC",
"format": "ISO 8601"
}
}
}
Seguridad
Sin compartir credenciales bancarias.
La CLABE, el monto y la clave de rastreo permiten localizar el CEP en Banco de México, pero no dan acceso a tu cuenta bancaria.
No es necesario proporcionar contraseñas, NIPs o tokens bancarios.
Cómo funciona
Tres pasos, sin complicación.
Sube una imagen
O ingresa manualmente los datos del pago.
Validación en Banxico
Consultamos la validez del pago en el sistema bancario.
Obtienes el comprobante (CEP)
Si el pago fue acreditado, obtienes el comprobante oficial. Si no, te avisamos de inmediato.
Dos caminos
Úsalo como prefieras.
Desde la Web/App
Sin instalar nada — Sube tus pagos, revisa tus finanzas y operaciones desde un solo lugar.
Abrir el panelMediante API
API REST estable y documentada — Valida cada pago o hazlo en lotes, gestiona beneficiarios, webhooks, consumo y reportes.
Ver la documentaciónResultados confiables
Desde el sistema bancario nacional.
El Comprobante Electrónico de Pago (CEP) es emitido por el Banco de México y avala una transferencia SPEI liquidada correctamente.
- Fuente: Banco de México (Banxico).
- Documento oficial en PDF / XML.
- Montos, fechas, cuentas, nombres y RFC.
Capacidades
Producto completo, a tu escala.
Validación SPEI
Sube la foto del comprobante o escribe los datos. Tú eliges.
Varias cuentas y vendedores
Registra múltiples cuentas que reciban pagos. Revisa sus finanzas y validaciones.
Carga masiva
Sube cientos de pagos en un CSV, un XLSX o un lote de imágenes, y valídalos de una vez.
Webhooks y modo asíncrono
Dispara eventos en tu sistema al validar un pago; Valida pagos en segundo plano.
Cobro con tarjeta
Suscripción con tarjeta y renovación automática. Tus recibos de pago quedan en el panel.
Panel, reportes y alertas
Registros detallados, exportaciones y notificaciones en tiempo real.
Sigue por aquí
La misma certeza, aplicada a tu sector.
Veriko valida transferencias SPEI en Banxico. Así se ve en cada operación.
También: Producto
Preguntas
Preguntas frecuentes.
Empieza a validar tus pagos hoy.
Crea tu cuenta y confirma tu primer pago en minutos.
Empezar gratis