POS
Process Payment
Process an NFC card payment at a POS terminal
POST
Main endpoint for processing purchases. POS routes use HMAC authentication, not bearer tokens.
fee_amount reflects the effective fee resolved for the transaction. If your fee configuration charges the subscriber or the processor for POS payments, that configured value is returned here instead of always being 0.00.Request
string
required
API key ID assigned to the POS integration
string
required
RFC3339 timestamp used in the HMAC signature (example:
2026-03-10T12:00:00Z)string
required
Hex-encoded HMAC-SHA256 of
METHOD + "\n" + PATH + "\n" + TIMESTAMP + "\n" + BODYBody Parameters
string
required
Card serial number read from NFC
string
required
Registered merchant identifier
string
Merchant display name shown on receipts; defaults to
merchant_id when omittedstring
required
Terminal identifier
string
required
Payment amount (e.g.,
500.00)string
default:"SLE"
required
Currency code
string
required
Customer’s 4-digit PIN
string
required
Merchant’s unique transaction reference
string
required
Processor account ID that receives the funds
Response
boolean
Whether payment was approved
string
OLIVE transaction ID
string
Approval code for the successful payment
string
Formatted transaction amount
string
Formatted remaining card balance
string
Formatted effective fee charged for the transaction based on the active POS fee configuration
Examples
Errors
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
POS payment details
Accepts decimal format like "150.00" or "150"
Example:
"150.00"
Supports any alphanumeric: CARD0001, 48290173K, etc.
Example:
"CARD0001"
Example:
"SLE"
Example:
"MERCHANT001"
Processor account that receives the funds
Example:
"proc-uuid-123"
Example:
"APP-TXN-123"
Display name for receipts
Example:
"ABC Store"
Response
Payment approved
The response is of type object.