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