Send Gasless Withdraw Transaction (EVM USDC/SBC/EuroE only)

Send a gasless USDC withdraw transaction to the blockchain. The gas for the transaction can either be paid by the user or by the merchant, depending on your merchant settings.

This is only allowed for withdrawing USDC/SBC/EuroE on EVM chains.

Authentication

x-coinflow-auth-walletstring
The web3 wallet of the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key
x-coinflow-auth-blockchainstring
The blockchain associated with the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key
OR
x-coinflow-auth-session-keystring
The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key

Request

This endpoint expects an object.
merchantIdstringRequired
tokenobjectRequired
From T, pick a set of properties whose keys are in the union K
amountdoubleRequired
speedenumRequired
accountstring or objectRequired

One of:

  1. The token of the bank account/card that the user is withdrawing to
  2. An Apple Pay Response Object
evmTransferAuthorizationDataobjectRequired
bankAccountDetailsobjectOptional
userLocationobjectOptional

End-user geographic coordinates captured at the moment of the withdrawal request. Consumed by BlockingRuleMethod.GEOLOCATION enforcement.

Replay-of-different-coords bypass is prevented server-side: the first resolved {country, state} for a given (merchant, user) pair is pinned in Redis, and subsequent requests are evaluated against that pinned value regardless of the lat/lng they submit.

addressobjectOptional

Response

Ok
hashstring

Errors

412
Precondition Failed Error