- REJECT: es la acción que permite devolver el dinero del usuario destino al usuario origen. Es la acción opuesta a la acción principal (SEND / REQUEST). Esta acción es creada por TIN Cloud y firmada por la entidad financiera que actuó como receptora en la transacción a través del endpoint
/action
. - REVERSE DOWNLOAD: es la acción que devuelve el dinero del usuario origen al banco origen. Es la inversa de la acción UPLOAD. Tanto la creación como la firma dependen del endpoint
/credit
de la entidad financiera que actuó como origen.
Acciones realizadas por el flujo de reversión
Cuando inicia:- Cambia el estado de la transferencia a
ERROR
. - Cambia el estado de la acción que falló a
ERROR
(la acción principal pasa aREJECTED
).
- Cambia el estado de la transferencia a
REJECTED
. - Llama al endpoint
/status
. - Llama a Monitor+ (341).
Definiciones y Validaciones
Si ocurre un error durante el proceso de reversión, la transferencia pasará a estadoERROR
y será gestionada por el equipo de soporte.
El objeto error
de la transferencia se enviará al endpoint /status
del banco (solo si la transferencia tiene estado final REJECTED
o COMPLETED
).
Para revertir una acción, se deben cumplir las siguientes condiciones:
- La acción debe tener un
hash
. - El proceso de reversión para la acción no debe haber sido iniciado previamente.
/continue
con una acción en error mientras el flujo de reversión ya ha comenzado, la API ignorará la solicitud.
Comportamientos por tipo de error
- Si el endpoint
/debit
retorna un error pero la acción UPLOAD fue completada, se llamará al endpoint/credit
del origen. - Si el error ocurre después de completar la acción principal (SEND o REQUEST), se creará una acción REJECT y se llamará al endpoint
/credit
del origen. - Si el error ocurre con una acción DOWNLOAD completada, se cambiará el estado de la transferencia a ERROR.
Validaciones en la respuesta de los bancos
La respuesta de los endpoints/debit
, /transfer
y /credit
del banco será validada. Si la respuesta no cumple con los requisitos, la transferencia permanecerá en el estado anterior y no se generará flujo de reversión. La transacción se detendrá en el punto donde el banco no respondió correctamente.
Respuestas inválidas incluyen:
- Objeto vacío
- Acción sin
action_id
- Acción sin
labels.tx_ref
- Acción sin
labels.type
- Acción sin
labels.status
- Acción sin objeto
error
(solo si la respuesta es un error) - Incoherencia en
code
ymessage
(por ejemplo, deben ser"code": 0, "message": "Success"
)
Impacto en el flujo
Flujo Asíncrono
- /debit: Sin efecto (el banco usa
/continue
). - /transfer: Transferencia queda en
ACCEPTED
oERROR
, acción principal enCOMPLETED
oPENDING
. - /credit: Sin efecto (el banco usa
/continue
).
Flujo Síncrono
- /debit: Transferencia queda en
INITIATED
, acción UPLOAD enCOMPLETED
oPENDING
. - /transfer: Transferencia queda en
ACCEPTED
oERROR
, acción principal enCOMPLETED
oPENDING
. - /credit: Transferencia queda en
ACCEPTED
oERROR
, acción DOWNLOAD enCOMPLETED
oPENDING
.