createTransfer

suspend fun createTransfer(request: TransferV2Requests.CreateTransferRequest, idempotencyKey: String? = null, accountId: String? = null): Pair<TransferV2?, NetworkingError?>

Creates a V2 transfer. Requires an Idempotency-Key (generated when idempotencyKey is null or blank).

Return

A Pair of (TransferV2?, NetworkingError?).

Parameters

request

The request payload describing the transfer to create.

idempotencyKey

Optional idempotency key; a UUID is generated when null or blank.

accountId

Account for the Sonar session when FrameNetworking.accountId is unset.


suspend fun createTransfer(request: TransferV2Requests.CreateTransferRequest, checkoutClientSecret: String, idempotencyKey: String? = null, accountId: String? = null): Pair<TransferV2?, NetworkingError?>

Creates a V2 transfer under a checkout session.

The session must have been minted with a locked amount. The server stamps that amount, authorization mode, and checkout session id; the client still sends Idempotency-Key.

Parameters

checkoutClientSecret

The chk_sess_… token. An empty token returns (null, null).

accountId

Account for the Sonar session when FrameNetworking.accountId is unset.


fun createTransfer(request: TransferV2Requests.CreateTransferRequest, idempotencyKey: String? = null, accountId: String? = null, completionHandler: (TransferV2?, NetworkingError?) -> Unit)

Creates a V2 transfer and delivers the result via a callback.

Parameters

request

The request payload describing the transfer to create.

idempotencyKey

Optional idempotency key; a UUID is generated when null or blank.

completionHandler

Callback invoked with (TransferV2?, NetworkingError?).