Transfer a fungible token

How to perform a fungible transfer. E.g transfer an ERC20 token from one wallet to another.

Intro

It is not possible to transfer value from a wallet without the approval of the user. Therefore to be able to transfer a token, we will need to do two things: i) create the transfer and ii) ask the user for his approval.

The object that can ask the user for his approval is called a Signer, once we've created a Signer object we can use the Signer to perform the token transfer.

Function:

//Creating the signer
venlyConnect.createSigner();

//Asking the signer to transfer a certain value to a certain destination.
signer.executeTokenTransfer({
    walletId: '<WALLET_ID>',
    to: '<BLOCKCHAIN ADDRESS>',
    value: 3.1415,
    tokenAddress: '<TOKEN_BLOCKCHAIN ADDRESS>',
    secretType: '<BLOCKCHAIN>',
})

Example:

Address

const venlyConnect = new VenlyConnect('YOUR_CLIENT_ID'); 

//Creating the signer
const signer = venlyConnect.createSigner();

//Asking the signer to transfer ERC20 token to a blockchain address.
signer.executeTokenTransfer({
    walletId: '71dec640-4eb8-4321-adb8-b79461573fc4',
    to: '0xf147cA0b981C0CD0955D1323DB9980F4B43e9FED',
    value: 1010,
    tokenAddress: '0x02f96ef85cad6639500ca1cc8356f0b5ca5bf1d2'
    secretType: 'ETHEREUM',
})

Email

const venlyConnect = new VenlyConnect('YOUR_CLIENT_ID'); 

//Creating the signer
const signer = venlyConnect.createSigner();

//Asking the signer to transfer ERC20 tokens to an email address
signer.executeTokenTransfer({
    walletId: '71dec640-4eb8-4321-adb8-b79461573fc4',
    to: '[email protected]',
    value: 1010,
    tokenAddress: '0x02f96ef85cad6639500ca1cc8356f0b5ca5bf1d2'
    secretType: 'ETHEREUM',
})

📘

🧙 The destination of a token transfer is not limited to a blockchain address, we also support email addresses and Unstoppable domains.

Returns:

{
    result: {
        transactionHash: "0xe18975940be795f178b2a0bc553a0d40e0ad6ceb72ee5f62ac53f0a816b4460f"
    }
    status: "SUCCESS"
}

Function Reference

The function reference describes the different functions that are available in the Widget. For each function you can find the signature, its parameters, and possible options documented.

📘