❌ Cancelar orden / Solicitar reembolso¶
Este endpoint permite cancelar una orden previamente creada. Si la orden ya fue pagada, se intentará realizar un reembolso usando el sistema de pagos (ej. Stripe).
🧠 ¿Cuándo usar este endpoint?¶
- Cuando el usuario desea anular una compra antes de que sea procesada o enviada.
- En caso de errores durante el pago o pedidos duplicados.
- Para habilitar reembolsos desde el panel de administración.
🔐 Requiere autenticación¶
Debes enviar un token JWT válido en el encabezado:
Authorization: Bearer <token>
📋 Headers¶
Nombre | Valor |
---|---|
Authorization | Bearer |
Content-Type | application/json |
📦 Parametros de la ruta¶
- Método:
PUT
- Ruta:
/orders/cancel/:id
| Campo | Tipo | Descripción | Ejemplo | | ----- | ---- | ----------- | ------- | | id | UUID | ID de la orden a cancelar |123e4567-e89b-12d3-a456-426614174001
|
🚀 Ejemplo curl¶
curl -X PUT "http://localhost:3000/api/orders/cancel/123e4567-e89b-12d3-a456-426614174001" \
-H "Authorization: Bearer <tu_token_jwt_aqui>" \
-H "Content-Type: application/json"
📄 Respuesta exitosa¶
HTTP/1.1 200 OK
{
"success": true,
"message": "Order canceled",
"data": {
"id": "6ffe7f43-eb6a-4af3-88f6-b93e8b8b7cb9",
"total": "140.70",
"direction": "por aca",
"status": "processing refund",
"createdAt": "2025-03-16T16:40:09.000Z",
"updatedAt": "2025-03-19T17:16:22.000Z",
"userId": "6df3a7ac-920f-4bca-b339-746676230d7a",
"user": {
"id": "6df3a7ac-920f-4bca-b339-746676230d7a",
"name": "fabio2",
"email": "fabio2@gmail.com"
},
"products": [
{
"sku": "CARTO-004",
"id": "b2d8a815-3f4d-4ae6-8972-e4826dcd380c",
"name": "Camiseta",
"description": "Es una camiseta asi y asa",
"color": "azul",
"size": "s",
"price": "20.10",
"quantity": 2
}
]
}
}
❌ Respuesta de error¶
Código | Motivo | Solución |
---|---|---|
401 | No autorizado | Asegúrate de enviar un token JWT válido en el encabezado. |
403 | Prohibido | Verifica que el usuario tenga el rol adecuado para cancelar órdenes. |
404 | Orden no encontrada | Asegúrate de que el ID de la orden sea correcto y exista en el sistema. |
400 | Orden ya cancelada o reembolsada | Verifica el estado de la orden. Si ya fue cancelada o reembolsada, no se puede cancelar de nuevo. |
500 | Error interno del servidor | Revisa los logs del servidor para más detalles o contacta al administrador del sistema. |
⚠️ Advertencia¶
Si el pago fue procesado, el sistema creara la solicitud de reembolso. Este proceso puede demorar unos minutos.