Partner-Provided Withdraw Flow
In partner-provided withdraw mode, the partner handles the crypto leg and confirms settlement to Settle, which then executes the fiat payout.
Withdraw Lifecycle
Partner creates withdraw order
Partner submits a withdraw order with settlementMode = "partner". Settle returns a settlementId.
User sends crypto to partner
The user transfers crypto directly to the partner-controlled address.
Partner confirms settlement
Partner calls the confirm-settlement endpoint with the crypto transaction hash.
Settle executes fiat payout
Settle processes the fiat payout to the user's bank account in ARS.
Order completed
The order is marked as completed once fiat has been sent.
To activate partner-provided settlement for withdrawals, add the settlementMode field to the withdraw creation request:
/api/orders/withdrawsAdditional Field
settlementMode (string, "partner")
Note: The response will include a settlementId and confirmSettlementUrl that you will need to confirm the crypto settlement.
Confirm Settlement
After the partner receives the crypto from the user, call this endpoint to confirm settlement. The request must include the HMAC signature headers for verification.
/api/orders/withdraws/{orderId}/confirm-settlementHeaders
Content-Type: application/jsonX-Timestamp: unix-timestampX-Signature: HMAC_SHA256(secret, timestamp + rawBody)Request Body Fields
settlementId, cryptoTxHash, confirmedAt (ISO 8601)
Status Transitions
Partner-provided withdraw orders progress through the following statuses:
| Status | Description |
|---|---|
AwaitingPartnerSettlement | Order created, waiting for partner to confirm crypto receipt. |
SettlementConfirmed | Partner has confirmed crypto settlement via the confirm endpoint. |
Completed | Fiat has been delivered. Order is finalized. |