Transaction Requests
Last updated: 2026-03-25
Overview
These endpoints cover the full lifecycle of an in-store payment — from initiating a purchase on a terminal, polling for the outcome, and printing a receipt, to correcting or undoing a transaction after the fact.
| Operation | Description |
|---|---|
| Purchase | Initiate a card payment on a specific terminal. The terminal is notified in real time and prompts the customer to present their card. Returns an onlineAPIRefId to track the outcome. |
| Retrieve Status | Poll the current status of any transaction by its onlineAPIRefId. Returns transaction status, receipt data, and merchant data when complete. |
| Cancel | Abort a transaction while it is still pending or in progress on the terminal. Has no effect if the transaction has already been approved or completed. |
| Refund | Return funds to the customer's card for a settled transaction. Optionally provide the transactionId of the original purchase. Supports full and partial refunds. |
| Reverse | Undo an approved but unsettled transaction on the card network. Use immediately after an incorrect approval. If the transaction has already settled, use Refund instead. |
| Print Receipt | Send an HTML receipt to the terminal's built-in printer. The terminal renders and prints the content. |
Cancel vs. Reverse vs. Refund — which one to use?
Situation Use Transaction is still in progress on the terminal Cancel Transaction was approved but has not yet settled (same day, wrong amount etc.) Reverse Transaction has settled and the customer needs their money back Refund
Transaction Flow
Reference IDs
Each transaction response includes an onlineAPIRefId generated by the server. Use it to:
- Poll the transaction status via Retrieve Status
- Link a refund to the original purchase via the
transactionIdfield in the Refund request