Abort stops an in-progress transaction — one that has not yet returned a result, typically while the cardholder is being prompted. It is the API equivalent of pressing Cancel on the terminal. For a completed transaction, use Reversing a transaction instead.
The request
POST /abort-transaction/PAX:{serialNumber}?waitTime=20The waitTime parameter applies here as on any transaction endpoint.
Reading the outcome
Check the status field of the response body — the HTTP code does not indicate whether the abort succeeded. The aborted payment itself resolves as a failed transaction; if your original request is still within its waitTime window, that is where its final state arrives (or on the webhook).
Timing reality
Abort is best-effort. If the cardholder has already presented the card and authorisation is under way, the abort can lose the race and the payment completes approved. Handle "abort sent, payment approved anyway": verify the actual outcome (Checking the last transaction), and if it approved, follow up with a cancellation. Make that path one cashier action.
Related
- Reversing a transaction (Cloud API) — the follow-up when the abort arrives too late.
- Checking the last transaction — resolving what actually happened.