Idempotencia REST
#
Visión generalIdempotence garantiza que no habrá duplicación en el envío de transacciones desde CARAT a Adquirentes/Emisores, ya que la solicitud de transacción solo se realizará una vez. Incluso si se envía una solicitud idéntica repetidamente en un intervalo de tiempo específico, con este parámetro (Idempotencia) CARAT validará si ya ha sido procesada. Si la transacción ya se realizó y CARAT ya tiene esta respuesta (aprobada o denegada), no enviará otra solicitud, solo informará el resultado del procesamiento anterior, eliminando así la funcionalidad de consulta (vía OrderID/ o NIT) . Si por algún motivo (tiempo de espera, etc.) la transacción no ha sido procesada, CARAT la volverá a enviar y obtendrá una respuesta.
Por qué utilizar Idempotencia:
Cuando se trata de API transaccionales de solicitud única, la inclusión de la clave de idempotencia en el encabezado se convierte en un requisito fundamental. Este enfoque garantiza la seguridad y confiabilidad de las operaciones realizadas a través de la plataforma. Al adoptar esta práctica, evitará duplicaciones no deseadas y mejorará la fluidez de las transacciones. Este procedimiento da como resultado una experiencia más eficiente tanto para su sistema como para los usuarios finales.
Estado final
Idempotence devolverá el estado actual de la transacción. Si la respuesta devuelve ERR y NEG, no se deben volver a intentar con la misma idempotency_key ya que se trata de transacciones con estado completado y no sufrirán cambios de estado al reintentar la consulta. La siguiente solicitud debe tratarse como una nueva transacción y una nueva idempontency_key.
Estado | Descripción |
---|---|
CON | Transacción confirmada |
ERROR | Error de transacción |
NEG | Transacción denegada |
Sugerimos el uso de idempotencia para situaciones en las que hay una respuesta con 502 y/o transacciones con una respuesta no válida/de tiempo de espera.
Códigos de Respuesta
Código | Descripción | Formato |
---|---|---|
1270 | El body de la transacción idempotente no coincide con el original | < 80 AN |
1271 | Procesamiento de transacciones idempotentes | < 80 AN |
1272 | La transacción idempotente no es del mismo tipo. | < 80 AN |
1274 | La transacción nit idempotente revertida no coincide con la original | < 80 AN |