Skip to main content
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" + BODY

Body 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 omitted
string
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

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

POS payment details

amount
string
required

Accepts decimal format like "150.00" or "150"

Example:

"150.00"

card_serial
string
required

Supports any alphanumeric: CARD0001, 48290173K, etc.

Example:

"CARD0001"

currency
string
required
Example:

"SLE"

merchant_id
string
required
Example:

"MERCHANT001"

processor_id
string
required

Processor account that receives the funds

Example:

"proc-uuid-123"

transaction_ref
string
required
Example:

"APP-TXN-123"

merchant_name
string

Display name for receipts

Example:

"ABC Store"

metadata
object

Response

Payment approved

The response is of type object.