Skip to main content
Releasing an escrow requires both the depositor and the beneficiary to confirm delivery. Call this endpoint once per party — the first confirmation puts the escrow in a partially-confirmed state, and the second confirmation triggers the on-chain transfer and marks the escrow RELEASED. The response tells you whether the escrow is fully released or still awaiting the other party.
The callerSCA must exactly match either the depositorSCA or beneficiarySCA recorded at creation. Mismatched addresses will be rejected.

Endpoint

Authentication

Pass your merchant bearer token in the Authorization header.

Request Body

string
required
The escrow reference ID returned by POST /api/escrow/create — e.g. "escrow_m5k2r1_a4b8c2".
string
required
The SCA wallet address that is confirming delivery. Must be either the depositorSCA or beneficiarySCA recorded at escrow creation, and must be a wallet your merchant account controls.

Response

boolean
true when the on-chain confirmation transaction was accepted.
object
The updated escrow record.
string
The on-chain transaction hash for this release confirmation call.
string
ArcScan link — https://testnet.arcscan.app/tx/{txHash}.
boolean
true if this confirmation completed the release (both parties confirmed). false if still waiting on the other party.
string
A human-readable summary — either confirming full release with the USDC amount and recipient, or indicating which party’s confirmation is still pending.

Examples

Full Release Response (both parties confirmed)

Partial Confirmation Response (waiting on other party)

Error — Escrow Already Released

You cannot release a DISPUTED escrow. If a dispute is active, the FlareHQ arbiter must resolve it first before funds can move.