GET /api/payments/status/{slug} to check whether a payment has arrived for a given payment link. This is a lightweight endpoint built for frequent polling — the hosted checkout page calls it every few seconds to detect on-chain transfers and update the UI in real time. It returns only the fields you need to determine payment outcome, without the full link record.
Request
Path parameters
The unique identifier for the payment link. You receive the
slug in the response when you create the link via POST /api/links.Example request
cURL
Response
A successful request returns200 OK with the following fields.
The current payment status. See the table below for all possible values.
The total USDC amount detected on-chain so far (e.g.
"49.00"). "0.00" when no payment has been detected.The USDC amount that was set when the payment link was created (e.g.
"49.00").Status values
| Value | Meaning |
|---|---|
pending | No payment has been detected yet. |
confirmed | The exact expected amount was received — payment is complete. |
partial | Less than the expected amount was received. The payer can send the remaining balance. |
excess | More than the expected amount was received. |
error | An error occurred while processing the on-chain payment. |
Example response
200