Qué datos se registran por transferencia
| Campo | Significado |
|---|---|
transferId | Su referencia interna para esta transferencia |
confirmationNumber | Referencia legible para el usuario (por ejemplo, 20260205001) — muéstresela a los clientes |
controlNumber | Referencia JD SPB — úsela para la reconciliación bancaria |
type | TED OUT, TED IN o P2P |
status | Estado actual de la transferencia |
amount | Monto de la transferencia antes de la tarifa |
feeAmount | Tarifa cobrada |
totalAmount | Total debitado (monto + tarifa) |
senderAccountId | Cuenta de envío en su sistema |
recipientDetails | Banco, sucursal, número de cuenta y nombre del titular del destinatario |
createdAt | Cuándo se inició la transferencia |
completedAt | Cuándo se confirmó la liquidación |
Ciclo de vida del estado de la transferencia
TED OUT

- Cliente confirmado (
CREATED) — transferencia confirmada por el cliente, en cola para envío - Enviada a la red bancaria (
PENDING) — mensaje enviado a JD Consultores, esperando reconocimiento - Procesamiento bancario (
PROCESSING) — JD aceptó la transferencia y la está enrutando - Liquidada (
COMPLETED) — transferencia liquidada con éxito en el banco de destino - Rechazada (
REJECTED) — JD devolvió un error de negocio (por ejemplo, datos de cuenta inválidos) - Fallida (
FAILED) — falla técnica (timeout o indisponibilidad del servicio) - Cancelada (
CANCELLED) — el cliente canceló antes de que se enviara la transferencia
TED IN

- Transferencia detectada (
RECEIVED) — mensaje entrante persistido, pendiente de procesamiento interno - Destinatario validado (
PROCESSING) — el sistema está acreditando la cuenta del destinatario - Monto acreditado (
COMPLETED) — cuenta del destinatario acreditada con éxito
TED IN admite una transición de
COMPLETED a FAILED para gestionar devoluciones — casos en los que una transferencia fue inicialmente liquidada pero luego revertida por el banco remitente.P2P

- Confirmada (
CREATED) — transferencia iniciada entre cuentas internas - Procesando (
PROCESSING) — transacción de Midaz en progreso - Liquidada (
COMPLETED) — ambas cuentas actualizadas con éxito - Fallida (
FAILED) — error de procesamiento - Cancelada (
CANCELLED) — cancelada antes de que comenzara el procesamiento
Revisión de tarifa antes de la confirmación (solo TED OUT)
Para TED OUT, los clientes pasan por un flujo de dos pasos:

- Pendiente de confirmación — la tarifa ha sido calculada y presentada; el cliente aún no ha confirmado
- Procesada — el cliente confirmó y se creó la transferencia
- Expirada — transcurrieron 24 horas sin confirmación
Historial de estados
Cada transición de estado se registra con una marca de tiempo, el estado anterior, el nuevo estado y un motivo (para errores y cancelaciones). Esto le proporciona un registro de auditoría completo de cada transferencia — quién cambió qué y cuándo. El campo
changedBy registra si la transición fue desencadenada por el sistema, el cliente o un administrador.
Campos de reconciliación
Use estos campos para relacionar los registros de transferencia con sus extractos bancarios:
| Campo | Uso para |
|---|---|
controlNumber | Relacionar con los registros de JD SPB |
confirmationNumber | Referencia orientada al cliente |
transferId | Búsquedas en el sistema interno |
createdAt | Filtrar por fecha de iniciación |
completedAt | Filtrar por fecha de liquidación |
Retención de datos
Consulta de sus datos
Use Listar Transferencias para consultar transferencias con los siguientes filtros:
- Por rango de fechas — filtre por
createdAtocompletedAt - Por tipo — TED OUT, TED IN o P2P
- Por estado — por ejemplo, solo transferencias
COMPLETEDpara reconciliación, oFAILEDpara investigación
Para desarrolladores
Almacenamiento Las entidades se almacenan en PostgreSQL.
recipientDetails utiliza JSONB para acomodar las estructuras variables de los diferentes tipos de destinatarios (TED OUT, TED IN, P2P). Los índices principales cubren (organization_id, created_at) para listados paginados, (organization_id, status) para filtros por estado, y (control_number) para búsquedas en JD. Las tablas de auditoría están particionadas por mes para mejorar el rendimiento en consultas históricas.
Deduplicación de TED IN entrante
Antes de procesar un TED IN, el plugin persiste el mensaje JD sin procesar en la tabla JDIncomingMessage. Esto garantiza que ninguna transferencia entrante se pierda si el servicio falla durante el procesamiento. La deduplicación se aplica mediante una restricción única en sequenceNumber (el NumCabSeq de JD), por lo que los mensajes reenviados se ignoran automáticamente.
Relaciones entre entidades
- Cada
Transferpertenece a una organización y tiene muchos registros deTransferStatusHistory. - Las transferencias TED OUT pueden originarse desde una
PaymentInitiation(el flujo de dos pasos). - Cada
JDIncomingMessagecrea como máximo unTransferde tipoTED_IN.


