Saltar al contenido principal

Diccionario de datos

Esta guía es para el equipo de desarrollo que va a construir su propio backoffice o integración sobre los datos de la plataforma. Lista todos los campos que existen hoy para los 3 dominios principales — transacción, comercio y terminal — más allá de lo que ya reciben por webhook.

No es un contrato de API — para el detalle exacto de endpoints, tipos y autenticación de cada servicio, consulta la documentación de integración correspondiente o contacta al equipo de plataforma.

Cómo se obtienen estos datos

CanalQué entregaCuándo usarlo
Webhooks en tiempo realEl subconjunto de campos relevante a cada evento (ver catálogo de eventos) — no la fila completa.Reaccionar a cambios al momento (una venta nueva, un cambio de estado).
Partner Integration API (VPN)Los campos completos de los 3 dominios listados en esta página. Requiere conexión por VPN dedicada.Sincronización, reportería o backfill del lado de tu backoffice.
info

El acceso a la Partner Integration API se coordina por separado con el equipo de plataforma — no se autoprovisiona.

Campos que nunca se comparten

Un campo marcado No compartir en esta página existe en la plataforma pero se excluye de toda integración externa, incluida la Partner Integration API, por ser una credencial operativa y no un dato de negocio.

1. Transacción

Cada transacción procesada (venta, devolución, cancelación, etc.) se proyecta a un único registro con todos los campos siguientes: identificación, resultado del procesador, datos enmascarados de la tarjeta, y la telemetría del dispositivo que la originó.

Identificación

CampoTipoDescripción
transaction_idtextIdentificador único de la transacción.
tenant_idtextTenant (instancia/marca) al que pertenece.
merchant_idtextComercio que originó la transacción.
terminal_idtextTerminal física que la originó (= su número de serie).
reference_transaction_idtextTransacción original a la que hace referencia (devoluciones/cancelaciones).
aggregator_idtextIdentificador asignado por el agregador/procesador.
processor_reference_idtextReferencia devuelta por el procesador de pagos.
authorization_codetextCódigo de autorización bancaria de la operación aprobada.

Clasificación y estado

CampoTipoDescripción
operation_typetextTipo de operación (venta, devolución, cancelación).
channeltexttpv, ecommerce, link o moto.
statustextEstado de la transacción (aprobada, declinada, pendiente, etc.).
last_event_typetextÚltimo evento de negocio que actualizó este registro.

Montos y financiamiento

CampoTipoDescripción
amount_minorbigintMonto en unidad menor (centavos).
currencytextMoneda (p. ej. MXN).
tip_minorbigintPropina, en centavos, cuando aplica.
msi_installmentsintMeses sin intereses aplicados, si la venta usó una promoción.

Resultado del procesador

CampoTipoDescripción
decline_reasontextMotivo de rechazo, cuando no fue aprobada.
response_codetextCódigo de respuesta crudo del procesador/red.
response_descriptiontextDescripción legible del código de respuesta.
tvrtextTerminal Verification Result (diagnóstico EMV).

Tarjeta y procesador

CampoTipoDescripción
masked_pantextNúmero de tarjeta enmascarado (nunca el PAN completo).
card_brandtextMarca de la tarjeta (Visa, Mastercard, etc.).
card_typetextCrédito/débito.
card_producttextProducto específico de la tarjeta, si el procesador lo informa.
banktextBanco emisor, cuando el procesador lo informa.
processortextProcesador que liquidó la operación.

Ubicación

CampoTipoDescripción
latitude / longitudenumericCoordenadas reportadas por la terminal al momento de la venta.

Disputas y voucher

CampoTipoDescripción
dispute_statustextopen, won, lost, o vacío si no ha sido disputada.
voucher_access_tokentextToken que da acceso público al PDF del voucher de esta venta.

Telemetría del dispositivo (al momento de la venta)

CampoTipoDescripción
device_iccidtextICCID de la SIM instalada.
device_imeitextIMEI del dispositivo.
device_app_versiontextVersión de la app/firmware en el momento de la venta.
device_network_typetextTipo de red de datos (p. ej. 4G, WiFi).
device_network_operatortextOperador de red celular.
device_connection_typetextTipo de conexión usada.
device_signal_levelint (0–100)Nivel de señal.
device_is_roamingboolSi estaba en roaming.
device_wifi_ssidtextRed WiFi conectada, si aplica.
device_battery_levelint (0–100)Nivel de batería.
device_is_chargingboolSi estaba cargando.
device_trace_idtextIdentificador de traza interno para esta operación.
device_integrator_referencetextReferencia libre del integrador/APK que originó la venta.
device_software_versiontextVersión de software reportada.
device_sim_slot1 / device_sim_slot2textIdentificador de SIM por ranura (dual-SIM).

Trazabilidad

CampoTipoDescripción
created_attimestamptzCreación del registro.
updated_attimestamptzÚltima actualización (p. ej. cambio de estado o disputa).
info

Algunos datos que la terminal envía en el momento de la venta (p. ej. modo de entrada de tarjeta / CVM) todavía no se persisten en este registro. Si tu integración los necesita, es un ajuste puntual que el equipo de plataforma puede priorizar.

2. Comercio

El registro core del comercio es deliberadamente mínimo (identidad y estado); toda la información de negocio vive en un perfil extendido y en entidades relacionadas (afiliaciones, rutas de procesador, cuentas de depósito).

Identidad y estado (registro core)

CampoTipoDescripción
idtextIdentificador único del comercio.
tenant_idtextTenant al que pertenece.
nametextNombre del comercio.
statustextactive / inactive — gate de seguridad principal: un comercio inactivo no puede transaccionar ni usar links de pago.
franchise_idtextFranquicia/grupo al que pertenece, si aplica.
created_at / updated_attimestamptzAlta y última actualización del registro core.

Perfil general y persona de contacto

CampoTipoDescripción
merchant_internal_idtextIdentificador interno/legado.
environmenttextAmbiente del perfil (producción, pruebas).
account_typeintTipo de cuenta del comercio.
first_last_name / second_last_nametextApellidos del responsable.
phone / email / support_emailtextContacto y soporte.
commerce_responsible.first_nametextNombre(s) del responsable.
commerce_responsible.birth_datedateFecha de nacimiento del responsable.
commerce_responsible.document_type / .document_numbertextIdentificación oficial del responsable.

Datos comerciales y fiscales

CampoTipoDescripción
business_linetextGiro comercial (catálogo MCC).
mcctextMerchant Category Code asignado.
financial.rfctextRFC del comercio.
financial.tax_nametextRazón social / nombre fiscal.
commercial.tax_regimetextRégimen fiscal.
commercial.address.{street, exterior_number, interior_number, zip_code, suburb, state, municipality}textDomicilio fiscal completo.
commercial.notification_recipients[]array<{email, type}>Correos adicionales que reciben notificaciones del comercio, cada uno con un tipo.

Configuración operativa

CampoTipoDescripción
processing_config.dispersion_modeenumtef, 6am, 7am, 8am, 4pm, 11pm o manual.
processing_config.tpv_passcodetextNo compartir — código de acceso operativo para funciones sensibles en la TPV. Es una credencial, no un dato de negocio.
processing_config.payment_links_enabledboolSi el comercio puede generar links de pago.
processing_config.payment_links_min_amount_minor / .max_amount_minor / .max_activebigint / bigint / intLímites de monto y cantidad de links activos simultáneos.

Promociones (meses sin intereses / pagos fijos / skip payment)

CampoTipoDescripción
processing_config.promotions.tpv.{plazo}.enabledboolActiva la promoción a ese plazo en TPV. Plazos: 3, 6, 9, 12, 18 meses.
processing_config.promotions.tpv.{plazo}.rate / .min_amountnumeric / bigintTasa y monto mínimo para ese plazo en TPV.
processing_config.promotions.ecommerce.{msi|pf|skp}.{plazo}.enabledboolIgual, para e-commerce y por tipo: msi (meses sin intereses, plazos 3/6/9), pf (pagos fijos) o skp (skip payment).
processing_config.promotions.ecommerce.{tipo}.{plazo}.rate / .min_amountnumeric / bigintTasa y monto mínimo por tipo y plazo en e-commerce.

Afiliaciones y ruteo por procesador

CampoTipoDescripción
affiliation.channel / .processor_code / .affiliation_id / .statustextNúmero de afiliación del comercio, específico por canal y procesador.
route.channel / .processor_code / .statustextProcesador por defecto para cada canal, cuando ninguna regla de BIN aplica.
routing_rule.channel / .match_type / .bin_start,.bin_end / .bin_values / .processor_code / .priority / .statusmixtoRegla de ruteo a un procesador específico según rango o lista de BIN, evaluada en orden de prioridad.

Cuenta(s) de depósito

CampoTipoDescripción
bank_nametextBanco de la cuenta.
account_holdertextTitular.
account_number_maskedtextNúmero de cuenta, enmascarado.
clabe_maskedtextCLABE interbancaria, enmascarada.
currencytextMoneda de la cuenta.
notification_emailtextCorreo que recibe notificaciones de depósito/dispersión.
statustextEstado de la cuenta de depósito.
updated_bytextUsuario que hizo el último cambio.
info

El perfil extendido también reserva dos bloques — webhook y element — que existen en el modelo de datos pero hoy ninguna pantalla del backoffice interno los usa; no se documentan sub-campos porque no tienen contenido real todavía.

3. Terminal

Cada terminal física registrada reúne su configuración de negocio, su telemetría de salud más reciente, y su historial de asignación a números de serie. El identificador de la terminal (terminal_id) es, en la práctica, su número de serie.

Identidad y configuración

CampoTipoDescripción
idtextIdentificador de la terminal (= número de serie físico).
tenant_id / merchant_idtextTenant y comercio al que pertenece.
processor_codetextProcesador asignado.
statustextactive / inactive.
brand / modeltextMarca y modelo (catalogados — ver catálogo abajo).
operating_modetextModo de operación.
emv_enabled / contactless_enabledboolSi EMV/contactless están habilitados.
created_at / updated_attimestamptzAlta y última actualización.

Conectividad reportada

CampoTipoDescripción
connectivity_statusenumCalculado: connected, disconnected o never_reported, según la última señal de salud.
sim_slot_1 / sim_slot_2textIdentificador de SIM por ranura.
imeitextIMEI reportado más recientemente.
software_versiontextVersión de software/firmware reportada más recientemente.

Señal de salud (telemetría, último reporte)

CampoTipoDescripción
ackedboolSi la señal ya fue revisada por operación.
signal_level / battery_levelint (0–100)Nivel de señal celular / batería.
connection_type / network_type / network_operatortextTipo de conexión, tipo de red y operador celular.
wifi_ssidtextRed WiFi conectada, si aplica.
is_roaming / is_chargingboolRoaming / cargando.
imei / iccidtextIMEI e ICCID reportados en esta señal.
app_versiontextVersión de la app/firmware reportada.
trace_id / integrator_referencetextIdentificadores internos de traza y del integrador/APK.
observed_attimestamptzMomento en que se observó la señal (puede diferir de cuándo llegó al servidor).

Asignación de dispositivo físico

CampoTipoDescripción
serial_numbertextNúmero de serie físico asignado a esta terminal lógica.
terminal_id / merchant_id / tenant_idtextA qué terminal, comercio y tenant está asignado el equipo.
statustextEstado de la asignación (permite reasignar el equipo físico si se retira).

Catálogo de marca / modelo

CampoTipoDescripción
brand.code / .name / .activetext / text / boolCatálogo de marcas disponibles para asignar.
model.code / .brand_code / .name / .activetext / text / text / boolCatálogo de modelos, cada uno ligado a su marca.
info

Existen además tablas puramente internas de seguridad de la terminal (llave encriptada de sesión, hash de API key, tokens de sesión de la app TPV). No se listan aquí porque son de uso exclusivo de la plataforma para autenticar a la terminal — no aportan información de negocio.

Qué sigue

  • Integrar webhooks — catálogo de eventos y forma del payload en tiempo real.
  • Para acceso a la Partner Integration API (VPN), contacta al equipo de plataforma.