Endpoint /debit
Este endpoint es invocado por TransfiYa para iniciar el procesamiento de una transferencia. Su propósito es ejecutar una acción de tipo UPLOAD
en la nube de TIN y realizar el débito correspondiente en el núcleo bancario.
UPLOAD
con el mismo identificador (CUS) ya existe en la base de datos del banco.🧭 Pasos generales del flujo
Crear acción de tipo UPLOAD
UPLOAD
llamando a POST /v1/action
, utilizando como destino el firmante fuente (mainAction.snapshot.source.signer.handle
) de la transferencia.Consultar información local del firmante fuente
Decidir aceptar o rechazar la transferencia
PENDING
o REJECT
.Cargar llaves del firmante del banco
keeper
del firmante del banco (signer de liquidación) para poder firmar la operación.Actualizar la acción UPLOAD
labels.tx_id
que corresponde al identificador de transacción interna del core bancario (PUT /v1/action/:id
).Firmar la acción con el keeper
Enviar la acción firmada a TransfiYa
POST /v1/action/:id/sendit
. TransfiYa valida la firma y marca la acción como COMPLETED
.Llamar al endpoint /continue
POST /v1/transfer/:tx_ref/continue
con la acción UPLOAD
firmada y finalizada.CONTINUAR PROCESAMIENTO
Después de procesar la operación de débito en el núcleo bancario, el banco debe invocar el endpoint/v1/transfer/:tx_ref/continue
para continuar con el flujo de la transferencia.
labels.tx_id
. Esta información se utilizará en el proceso de conciliación y será la referencia única para identificar la transacción en el banco en relación con la acción UPLOAD
en TransfiYa./v1/transfer/:tx_ref/continue
debe ejecutarse dentro de los 8 minutos siguientes a la inicialización de la transferencia. De lo contrario, el estado de la transferencia cambiará automáticamente a ERROR
.Flujo Exitoso
TIN Cloud llama al endpoint `/debit` del banco
El banco crea una acción `UPLOAD` llamando a `/v1/action`
mainAction
para crear la acción. El estado inicial será PENDING
y se devolverá un error code 0
si fue exitosa.El endpoint del banco devuelve a TIN Cloud la acción UPLOAD con estado PENDING en el cuerpo de la respuesta. La respuesta debe incluir el objeto error con código 0 y el mensaje 'Success'
El banco realiza el débito en su Core Bancario
labels.tx_id
.El banco firma la acción `UPLOAD` y genera un objeto IOU
Crear Claims
Cargar Llaves
Crear Claims
Firmar el IOU
Enviar el IOU
Contiunar
Flujo de Error
TIN Cloud invoca el endpoint `/debit` del banco
POST /debit
al endpoint configurado por el banco.El banco crea la acción `UPLOAD`
UPLOAD
en su sistema, basada en los datos recibidos en el mainAction
.El banco responde a TIN Cloud
UPLOAD
en estado PENDING
dentro del cuerpo de la respuesta.
La respuesta debe contener un objeto error
con code: 0
y message: "Success"
.El banco procesa el débito en su Core
El banco debe llamar al endpoint `/v1/transfer/{tx_ref}/continue`
/v1/transfer/{tx_ref}/continue
con los parámetros indicados más abajo.ERROR
dentro de labels.status
, así como un objeto error
que incluya code
y message
.Además, es obligatorio incluir el action_id
de la acción principal SEND/REQUEST
al invocar el endpoint continue
.Ejemplo de cuerpo - Error
code
debe basarse en la tabla de códigos de error incluida en la documentación técnica del servicio. En caso exitoso, debe enviarse 0
.Mensaje: el campo message
debe describir la causa del error según la tabla mencionada. Para una respuesta exitosa, se debe usar "Success"
.Conclusión
Una vez completado el proceso de débito (ya sea exitoso o con error), el banco debe llamar al endpoint/v1/transfer/{tx_ref}/continue
utilizando la acción UPLOAD
o DOWNLOAD
, con estado COMPLETED
o ERROR
. A partir de este punto, TIN Cloud puede continuar con el flujo.
continue
son:
- ✅ Continuar con el procesamiento normal (flujo exitoso)
- ⚠️ Finalizar la transferencia con estado
ERROR
- 🔁 Iniciar un flujo de reversa de fondos