Este endpoint permite a Justo realizar devoluciones y reversas de transacciones. Desde Justo contamos con un sistema de reversas y devoluciones que permite gestionar incidencias en pedidos, como entregas incompletas o fallidas debido a problemas diversos.
Este endpoint debe soportar tanto devoluciones parciales (por entregas incompletas) como reversas/devoluciones totales.
Cuerpo de la solicitud
Ejemplo de solicitud - Devolución total
{
"amountToRefund": 15000,
"transactionId": "txn_abc123def456",
"currency": "CLP",
"reason": "Pedido cancelado",
"orderId": "order_xyz789"
}
Ejemplo de solicitud - Devolución parcial
{
"amountToRefund": 5000,
"transactionId": "txn_abc123def456",
"currency": "CLP",
"reason": "Entrega incompleta - faltaron 2 productos",
"orderId": "order_xyz789"
}
Respuesta exitosa
Estado de la devolución. Valores posibles: completed, pending, failed.
Identificador único de la devolución generado por la aplicación contenedora (opcional).
Código de la devolución para referencia (opcional).
Mensaje descriptivo sobre el resultado de la devolución (opcional).
Ejemplo de respuesta exitosa
{
"status": "completed",
"refundId": "refund_987654",
"refundCode": "REF-2024-001234",
"message": "Devolución procesada exitosamente"
}
Respuesta pendiente
Si la devolución queda en estado pendiente:
{
"status": "pending",
"message": "Devolución en proceso, se notificará el resultado"
}
Respuesta fallida
Si la devolución falla:
{
"status": "failed",
"message": "Error al procesar la devolución: [descripción del error]"
}
Códigos de estado
Notas importantes
Es responsabilidad de la aplicación contenedora validar que la suma de las devoluciones no exceda el valor total de la transacción original. Aunque Justo cuenta con un mecanismo que verifica esto, la aplicación debe implementar esta validación también.
Durante este paso, la aplicación contenedora debe:
- Revertir el monto de la cuenta del destinatario (comercio)
- Acreditar el monto en la cuenta del usuario
- Generar un registro de la devolución para auditoría
- Mantener un historial de todas las devoluciones realizadas sobre una transacción
En caso de no contar con un sistema de reversas y utilizar el formato de recaudación centralizada de Justo, será Justo quien solicite al cliente final los datos necesarios para realizar la devolución de manera manual, proceso que se ejecutará una vez por semana.
Para los casos en que un tercero gestione la recaudación, este será responsable de realizar las devoluciones directamente, eximiendo a Justo de toda responsabilidad en dicho proceso.
Casos de uso
Devolución total
Cuando un pedido es cancelado completamente o no puede ser entregado, se debe devolver el monto total de la transacción.
Devolución parcial
Cuando un pedido tiene problemas parciales (ej: faltan algunos productos, productos defectuosos), se puede realizar una devolución por el monto correspondiente a los items afectados.Propuesta de esquema de autenticación. Token de autenticación que debe ser coordinado entre
Justo y la aplicación contenedora. El mecanismo específico debe acordarse entre ambos equipos técnicos.
Propuesta de esquema de solicitud. Estructura propuesta para las devoluciones que
Justo enviará a la aplicación contenedora.
Monto a devolver al usuario. Puede ser parcial o total
Identificador único de la transacción original generado por Justo
Identificador del pedido asociado a la transacción
La solicitud fue procesada
Propuesta de esquema de respuesta. Estructura propuesta que la aplicación contenedora debe
retornar a Justo después de procesar una devolución.
Available options:
completed,
pending,
failed
Identificador único de la devolución generado por la aplicación contenedora
Código de la devolución para referencia
Mensaje descriptivo sobre el resultado de la devolución
Example:"Devolución procesada exitosamente"