Merchant Payments
Retrieve historical payments processed across all terminals that belong to a single merchant. Use this endpoint for store-level reconciliation, settlement reporting, or dashboards that aggregate sales across multiple devices at one merchant location.
Endpoint
GET https://api.test.devs.beadpay.io/Merchants/{id}/payments
id
string
The unique merchantId
you want to query.
Query parameters
All pagination, sorting, and filter options are detailed on the Pagination & Sorting page.
page
, pageSize
, sortBy
, sortDirection
, fromDate
, toDate
, status
Include any combination of them in the query string.
Request example
GET /Merchants/mrc_7f4a2d3e4b/payments
?page=0&pageSize=50
&sortBy=created&sortDirection=desc
&fromDate=2025-04-01T00:00:00Z
&toDate=2025-04-24T23:59:59Z
cURL
curl "https://api.test.devs.beadpay.io/Merchants/mrc_7f4a2d3e4b/payments?page=0&pageSize=50&sortBy=created&sortDirection=desc&fromDate=2025-04-01T00:00:00Z&toDate=2025-04-24T23:59:59Z"
(No -X
flag needed—curl
defaults to GET.)
Response example (trimmed)
{
"data": [
{
"id": "pay_9c82ba",
"created": "2025-04-18T17:06:10Z",
"merchantId": "mrc_7f4a2d3e4b",
"terminalId": "abc123xyz4567890",
"statusCode": "completed",
"trackingId": "trk_b2e1",
"amounts": {
"requested": {
"inPaymentCurrency": { "amount": 15750, "amountPrecision": 2, "currencyId": 840 }
},
"paid": {
"inPaymentCurrency": { "amount": 15750, "amountPrecision": 2, "currencyId": 840 }
}
},
"reference": "WEB-ORDER-5943",
"description": "Online order #5943"
}
],
"total": 112,
"page": 0
}
Key fields
terminalId
Identify which device created each payment.
statusCode
Current payment status (completed
, underpaid
, overpaid
, etc.).
trackingId
Pass to /Payments/tracking/{trackingId}
to poll for real-time status.
amounts.requested
/ amounts.paid
Requested vs. final authorised amounts.
reference
Your own invoice or order identifier (if supplied at capture time).
Common errors
400
Bad date format or unsupported status
value.
Check ISO-8601 dates and allowed status values.
404
Unknown merchantId
.
Verify the ID is correct and belongs to your account.
429
Rate limit exceeded.
Reduce call frequency or add back-off logic.
Usage tips
Store-level reconciliation – Run nightly to match sales against your POS totals and deposits.
Multi-device roll-ups – Because the response includes
terminalId
, you can group or filter client-side by device.Exception monitoring – Filter on
status=underpaid
orstatus=overpaid
across the whole merchant to surface discrepancies quickly.
Last updated