Skip to main content
POST
Sometimes a payer sends a different currency (or a large overpayment) to your deposit address. The platform detects it and parks it — this endpoint lets you accept the parked deposit explicitly.
You don’t have to call this endpoint at all. If you do nothing, an auto-accept protocol may settle the parked deposit after the configured window — watch crossChainAutoAcceptAt on the payment for the deadline. Call this endpoint only when you want to accept sooner, or on your own terms.

Authorization

  • API-key scope: payments:create · JWT roles: merchant_admin or super_admin — merchant_member is excluded.
  • Your merchant account must be active.
  • Tenant scope is forced server-side from the credential, so another merchant’s payment reads as 404 regardless of role.
  • Rate limit: 20/min.

Parameters

string
required
24-hex payment id of the payment whose address received the wrong-currency deposit.
string
required
The currency of the detected deposit you are accepting, e.g. USDT_TRC20.
string
required
A decimal string, e.g. "99.5" — not a number.

Response envelope

Every response — success or error — uses the same envelope:
  • 200 {"ok":true,"data":{...}} — the deposit is accepted and credited.
  • 4xx {"ok":false,"error":{"code":"...","message":"..."}} — e.g. INVALID_ID, NO_MERCHANT_CONTEXT, or a domain code. On a payment with no wrong-currency deposit you get 400 {"code":"NO_CROSS_CHAIN_DEPOSITS","message":"No cross-chain deposits detected on this payment"}.

See also

  • Get a payment: crossChainAutoAcceptAt tells you a parked deposit is awaiting acceptance.
  • Webhooks & IPN: get notified when a wrong-currency deposit is detected or settled.
  • Authentication: the role gate (merchant_admin / super_admin) explained.