API
Cancelar orden
Cancela una orden de agregador y, cuando el procesador de pago lo soporta, reembolsa el pago.
POST
Cancela una orden creada previamente con Inyectar orden. Fire busca la orden por
account y order_uid, actualiza la orden a CANCELED y devuelve la orden actualizada dentro del sobre estándar de la API.
Si el procesador de pago guardado soporta reembolsos (por ejemplo, Deuna), Fire intenta el reembolso y deja payment_status en REFUNDED cuando es exitoso. Para otros procesadores, Fire cancela el estado de pago y deja payment_status en CANCELED.
string
requerido
Token Bearer obtenido desde POST /login. Formato:
Bearer <accessToken>.string
requerido
Tu API key de Fire.
string
requerido
Debe ser
integration. Identifica la petición como proveniente de una integración externa.string
requerido
Identificador de la cuenta usado para encontrar la orden.
string
predeterminado:"application/json"
Usa
application/json para el cuerpo de la petición.string
requerido
UID de la orden que se va a cancelar.
string
requerido
Motivo de la cancelación o solicitud de reembolso.
string
Opcional. UID del método de pago usado para resolver credenciales de reembolso cuando necesitas apuntar a un método específico.
string
requerido
UID del vendor usado para resolver credenciales de pago.
string
Email del cliente enviado al procesador de pago cuando aplica.
string
UID del cliente registrado. Si está presente, Fire trata el payload de reembolso como autenticado.
string
UID del cliente anónimo. Se usa como identificador de usuario de pago cuando no existe
customer_uid.string
UID de la tienda usado para resolver credenciales de pago específicas de la tienda.
string
Medio de venta usado para resolver credenciales. Valores soportados:
APP, WEB.string
Opcional. ID del motivo de cancelación o código del catálogo. Cuando se envía, se persiste en la orden y se reporta al gateway de pago.
object
Orden actualizada. Los precios en
order_lines, totals y payment_methods se devuelven como montos externos sin escalar.number
Código HTTP dentro del sobre de la API.
string
Identificador de traza para soporte y diagnóstico.
Reglas de procesamiento
- Cuando se envía,
payment_method_uidayuda a resolver credenciales, pero Fire evalúa los métodos de pago guardados en la orden. - Para reembolsos con Deuna, la orden debe incluir
metadata.order_token; si no existe, Fire devuelve400. - Después de guardar la orden actualizada, Fire devuelve precios transformados para consumo externo.
- Fire notifica la cancelación downstream después de guardar la orden.
Comportamiento posterior a la cancelación
La anulación fiscal es asíncrona
Cuando la orden tenía un documento fiscal emitido, Fire solicita su anulación al proveedor y deja el documento encancelling. El estado final llega por webhook del proveedor, no en la respuesta de este endpoint.
Si el webhook del proveedor nunca llega, el documento queda en
cancelling indefinidamente: no hay reintento automático que lo destrabe. Para un integrador que necesita certeza fiscal, esperar el 200 de este endpoint no alcanza — hay que consultar el estado del documento después.
Los montos no se ponen en cero
La orden cancelada conserva sus totales y sus métodos de pago con los importes originales.order_lines, totals y payment_methods vuelven con los mismos valores que antes de cancelar; lo que cambia es status y payment_status.
Esto es deliberado: la orden es el registro de lo que pasó, no de lo que quedó vigente. Si conciliás montos contra órdenes canceladas, vas a encontrar que cuadran perfecto — porque se cobró exactamente lo que se vendió antes de anular. La conciliación correcta para una orden cancelada no es “¿coinciden los montos?” sino “¿se revirtió cada eslabón?”.
La anulación es total, nunca parcial
No existe la anulación por líneas ni por importe: se cancela la orden entera o no se cancela. Por eso el request no lleva montos ni lista de ítems. Si necesitás revertir solo una parte, la operación es cancelar y volver a inyectar.Qué verificar del lado del cliente
- No asumas que el documento fiscal quedó anulado por recibir
200. Consultá su estado si necesitás certeza. payment_statusdistingue dos desenlaces distintos:REFUNDED(el procesador devolvió la plata) yCANCELED(se anuló el cobro sin devolución). No son equivalentes para una conciliación.- El evento downstream sale después de guardar la orden, no después de que se confirme la anulación fiscal. Llega antes de que el circuito esté cerrado.

