Cancelar transacción (antes del pago)
Cancela una transacción que aún no ha sido pagada por el cliente. Útil cuando el cajero se equivocó en el monto y necesita regenerar el QR, o cuando el cliente desiste.
Flujo de cancelación de transacción pendiente
sequenceDiagram
participant C as Caja
participant B as Backend del comercio
participant Y as Yappy API
C->>B: Iniciar cobro por $100
B->>Y: POST /qr/generate/DYN
Y-->>B: transactionId + hash
B-->>C: Renderiza QR en pantalla
loop Polling cada 2-5 seg
B->>Y: GET /transaction/{id}
Y-->>B: status=PENDING
end
Note over C: Cajero detecta error<br/>(monto incorrecto)
C->>B: Cancelar transacción
B->>Y: PUT /transaction/{id}
Y-->>B: Transacción cancelada
Note over C: La caja puede generar<br/>una nueva transacción Cuándo usar esta cancelación
- El cajero ingresó el monto incorrecto.
- El cliente cambió de opinión antes de pagar.
- El polling llegó a 5 minutos sin que el cliente pagara (timeout automático).
Llamada
curl -X PUT "{{BASE_URL}}/transaction/{transactionId}" \
-H "api-key: $YAPPY_API_KEY" \
-H "secret-key: $YAPPY_SECRET_KEY" \
-H "authorization: $SESSION_TOKEN"
Tras la cancelación, la transacción pasa a estado CANCELLED y la caja queda libre para generar un nuevo QR.
¿Te fue útil esta página?
¡Gracias por tu feedback! 🙌