Record payment

Records a payment your platform collected from the customer. The
payment is stored as a "system" payment-method type unique to your
platform (auto-created on first use); it never appears in the
merchant's POS settle screen but does appear on the order's payment
history.

Caveats

  • Pre-bill rejection. If the order has no bill yet (the merchant
    hasn't accepted it), the endpoint returns 400 with the message
    "Order has not been accepted yet. Payments can only be recorded
    once the merchant accepts the order."
    Wait for status to advance
    past pending (poll GET /orders/{id} or rely on a webhook) before
    retrying.
  • Partial payments are supported. Submit the endpoint multiple
    times with smaller amounts; paid flips to true once the
    cumulative amount covers the bill's outstanding total.
  • If your amount exceeds the bill's total_outstanding, you get a
    400 — the system won't accept overpayment.
  • Each payment is independent; sending the same ref twice creates
    two payments. Idempotency is your responsibility on the platform
    side.
  • ref is truncated to 150 chars.
Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
int64
required
Body Params
double
required
> 0

Currency amount. Must be > 0 and <= bill.total_outstanding.

string
length ≤ 150

External transaction id. Surfaces in merchant reporting. Truncated
to 150 characters if longer.

Responses

Language
Credentials
Bearer
token
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json