Transfer Erc20

Method Name

private/transfer_erc20

Transfer ERC20 assets from one subaccount to another (e.g. USDC or ETH).

For transfering positions (e.g. options or perps), use private/transfer_position instead.

Parameters

recipient_subaccount_id integer required
Subaccount_id of the recipient
subaccount_id integer required
Subaccount_id
recipient_details object required
Details of the recipient
recipient_details.nonce integer required
Unique nonce defined as (e.g. 1695836058725001, where 001 is the random number)
recipient_details.signature string required
Ethereum signature of the transfer
recipient_details.signature_expiry_sec integer required
Unix timestamp in seconds. Expiry MUST be >5min from now
recipient_details.signer string required
Ethereum wallet address that is signing the transfer
sender_details object required
Details of the sender
sender_details.nonce integer required
Unique nonce defined as (e.g. 1695836058725001, where 001 is the random number)
sender_details.signature string required
Ethereum signature of the transfer
sender_details.signature_expiry_sec integer required
Unix timestamp in seconds. Expiry MUST be >5min from now
sender_details.signer string required
Ethereum wallet address that is signing the transfer
transfer object required
Transfer details
transfer.address string required
Ethereum address of the asset being transferred
transfer.amount string required
Amount to transfer
transfer.sub_id integer required
Sub ID of the asset being transferred

Response

id string or integer required
result object required
result.status string required
requested
result.transaction_id string required
Transaction id of the transfer

Example

{request_example_shell}
{request_example_javascript}
{request_example_python}

The above command returns JSON structured like this:

{response_example_json}