Send a message to a POS terminal
Relays a JSON message to one of your POS terminals. Kashier authenticates you as the merchant, confirms the terminal belongs to your account, and forwards the message to the terminal in real time over its websocket connection.
Two events are used by merchant backends:
- sale — start a card-present payment on the terminal. Kashier additionally checks that data.message.merchantOrderId has not already been paid.
- details — pull the details of a transaction you already know the transactionId of.
A 200 only means the message reached the terminal. The card-present result (approved / declined) arrives later on the data.message.reconciliation.webhookUrl you supplied, carrying a transactionResponseCode. If the terminal is powered off or otherwise not connected, the call fails with 404.
Only the top-level event and data are validated by Kashier; everything inside data.message is relayed verbatim and is enforced by the terminal application.
Request
- Base URL: https://test-api.kashier.io
- URL: https://test-api.kashier.io/v3/payment/pos/messages/{serialNo}
- Auth: API key in header Authorization
Path parameters
The serial number of the POS terminal, which is the address the message is delivered to. (Some older guides call this path parameter POSSerialNumber; the value is the terminal serial number either way.)
Request body
Response
The message was accepted and emitted to the terminal. The payment result itself is delivered later to your reconciliation webhook.
Changes
No recorded changes to this operation across all 1 revision of this API.