Estado de cuenta Panapass
Extrae los datos del estado de cuenta Panapass.
Petición
multipart/form-data con un solo campo:
| Campo | Tipo | Descripción |
|---|---|---|
file | archivo | JPEG, PNG, WEBP, GIF o PDF. Máximo 10 MB. Obligatorio. |
curl
curl https://api.istmobot.com/v1/panapass \ -H "Authorization: Bearer ib_live_..." \ -F file=@documento.png
JavaScript
const form = new FormData();
form.append("file", fileBlob, "documento.png");
const res = await fetch("https://api.istmobot.com/v1/panapass", {
method: "POST",
headers: { Authorization: "Bearer ib_live_..." },
body: form,
});
const { data, meta } = await res.json();Respuesta
200 con data según la tabla y meta (request_id, credits_used, plugin_version, sandbox). Campos ausentes en el documento llegan como null.
| Campo | Tipo | Descripción |
|---|---|---|
numero_cuenta | string | null | |
tag | string | null | Tag Panapass asignado a la cuenta |
titular | string | null | |
email | string | null | |
direccion | string | null | |
placa | string | null | |
clase | string | null | Clase tarifaria del vehículo (p. ej. Clase A) |
fecha_emision | string | null | ISO 8601 |
periodo_desde | string | null | ISO yyyy-mm-dd |
periodo_hasta | string | null | |
numero_pases | number | null | |
saldo_inicial | number | null | |
total_debito | number | null | Importe total débito del periodo, con signo tal como aparece |
total_credito | number | null | |
saldo_final | number | null | |
saldo_bajo | number | null | Umbral de saldo bajo configurado |
movimientos[] | array | |
movimientos[].tipo | "pase" | "recarga" | "ajuste" | |
movimientos[].fecha | string | null | ISO 8601 del pase o recarga |
movimientos[].referencia | string | null | Tag Panapass con el que se hizo el pase |
movimientos[].matricula | string | null | |
movimientos[].fecha_cargo | string | null | ISO 8601 en que ENA aplicó el cargo |
movimientos[].descripcion | string | null | Vía/estación del pase o canal de la recarga tal como aparece |
movimientos[].debito | number | null | USD cobrados (positivo) |
movimientos[].credito | number | null | USD acreditados (positivo) |
movimientos[].saldo | number | null | Saldo después del movimiento |
Ejemplo
{ "data": { "numero_cuenta": "0001234567", "tag": "01234567", "titular": "CLIENTE EJEMPLO", "email": "cliente@ejemplo.com", "direccion": "CALLE EJEMPLO CASA 1", "placa": "AB1234", "clase": "Clase A", "fecha_emision": "2026-09-01T08:00:00-05:00", "periodo_desde": "2026-08-01", "periodo_hasta": "2026-08-31", "numero_pases": 2, "saldo_inicial": 5, "total_debito": -2.5, "total_credito": 10, "saldo_final": 12.5, "saldo_bajo": 4, "movimientos": [ { "tipo": "recarga", "fecha": "2026-08-03T07:42:00-05:00", "referencia": null, "matricula": null, "fecha_cargo": null, "descripcion": "Recarga MOBILE", "debito": null, "credito": 10, "saldo": 15 }, { "tipo": "pase", "fecha": "2026-08-10T18:05:00-05:00", "referencia": "01234567", "matricula": "AB1234", "fecha_cargo": "2026-08-10T18:06:00-05:00", "descripcion": "AT-28A CS-ATLAPA", "debito": 1.25, "credito": null, "saldo": 13.75 } ] }, "meta": { "request_id": "req_3f9c2a", "credits_used": 3, "plugin_version": "0.1.0", "sandbox": false } }
Con una key ib_test_ recibes exactamente este data con credits_used: 0 y sandbox: true.
Errores
401 key inválida · 402 sin créditos · 422 entrada inválida o extracción fallida · 429 rate limit. Formato en Errores.
istmobot