Create or retry Wallet–Options transfer
Save a UUID as request_id before the first request. Retry with the same UUID and body. An unresolved transfer blocks new transfers on this connection. Only completed confirms that funds moved. For to_options, you can link a completed deposit using deposit_transaction_id.
Save a UUID as request_id before the first request. Retry with the same UUID and body. An unresolved transfer blocks new transfers on this connection. Only completed confirms that funds moved. For to_options, you can link a completed deposit using deposit_transaction_id.
Required API key scope: transfers:write.
Request example
POST /api/deriv/connections/conn_example_01/transfers HTTP/1.1Host: api.edgepro.siteX-API-Key: <your-api-key>X-Deripay-API-Version: 2Accept: application/jsonContent-Type: application/json{ "direction": "to_options", "amount": "12.50", "request_id": "f152a643-04b6-4f78-ae92-e6378fbc1e4b"}partnerAPIKeyX-API-Key<token>connection_id*stringX-API-Key*stringYour API key. Send requests from your server.
X-Deripay-API-Version*stringSelects the response and error format documented here. Without it, the same URL returns the original format.
Accept?stringapplication/json- body
amount*|Positive USD amount with at most two decimals. Exponent notation is rejected; prefer a decimal string. Zero is rejected even as a string.
deposit_transaction_id?stringA completed deposit belonging to this connection. Use only with to_options. An existing active or completed transfer prevents transferring the same deposit twice.
^[0-9a-fA-F]{24}$direction*string"to_options""to_wallet"request_id*stringuuidSuccessful request.
application/json- response
success*booleanmessage*stringdata*curl -X POST 'https://api.edgepro.site/api/deriv/connections/conn_example_01/transfers' \ -H 'X-API-Key: <your-api-key>' \ -H 'X-Deripay-API-Version: 2' \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ -d '{ "direction": "to_options", "amount": "12.50", "request_id": "f152a643-04b6-4f78-ae92-e6378fbc1e4b"}'{ "success": true, "message": "Transfer completed", "data": { "request_id": "f152a643-04b6-4f78-ae92-e6378fbc1e4b", "direction": "to_options", "amount": "12.50", "currency": "USD", "options_account_id": "CR123456", "status": "completed", "created_at": "2026-10-12T09:00:00Z", "updated_at": "2026-10-12T09:00:00Z" }}List Wallet–Options transfers GET
Get up to 20 of this connection’s newest transfers. Filter by unresolved or by a linked deposit_transaction_id. Payment transaction lists and SSE streams do not include transfers.
Get Wallet–Options transfer GET
Get a transfer and check for an updated outcome. Deripay may confirm an unresolved transfer from account history. After a timeout or outcome_unknown, keep using the original request_id.