sendTokens

Sends SPL tokens from the user's wallet and awaits network confirmation

(async() => {
    await SOLPay.sendTokens("RECIPIENT_ADDRESS", 1, "TOKEN_ADDRESS"); // {"from": "...", "to": "WALLET_ADDRESS", "amount": 1, "token_address": "TOKEN_ADDRESS", "signature": "..."}
    await SOLPay.sendTokens("RECIPIENT_ADDRESS", 1, "TOKEN_ADDRESS", (details) => {
        // {"from": "...", "to": "WALLET_ADDRESS", "amount": 1, "token_address": "TOKEN_ADDRESS", "signature": "..."}
    }); // {"from": "...", "to": "WALLET_ADDRESS", "amount": 1, "token_address": "TOKEN_ADDRESS", "signature": "..."}
})();

Parameters:

  • address: string - the address where the tokens should be sent

  • amount: number - the amount of tokens to send with the smallest denomination of tokens being represented by amount 1

  • token_address: string - the mint address of the token

  • preconfirm (optional, default: (details) => {}): function - a function to capture the unconfirmed and unbroadcasted transaction details before the transaction has been broadcasted and confirmed on the Solana network

Returns:

object ({"from": "...", "to": "WALLET_ADDRESS", "amount": 1, "token_address": "TOKEN_ADDRESS", "signature": "..."}) - the transaction details

  • from: string ("...") - the address from which Solana is sent

  • to: string ("...") - the address to which Solana is sent

  • amount: number (1) - the number of tokens sent (in terms of the token's base unit)

  • token_address: string("...") - the address of the token sent

  • signature: string ("...") - the signature of the transaction

Throws:

  • SOL Pay SDK Fatal Error: No connection found. Use SOLPay.connectNetwork() to connect to the Solana network. - could not find a connection to the Solana network

  • SOL Pay SDK Fatal Error: No wallet connection found. Use SOLPay.connectWallet() to connect to a Solana wallet. - no wallet was connected

  • SOL Pay SDK Fatal Error: Unable to get recent blockhash. - was not able to get a recent blockhash

  • SOL Pay SDK Fatal Error: SOL Pay SDK Fatal Error: Unable to broadcast transaction. - was not able to broadcast the transaction

  • SOL Pay SDK Fatal Error: The preconfirm function returned an error, halting the transaction from being sent: ${err} - did not send transaction because the preconfirm function could not be run to completion successfully

  • SOL Pay SDK Fatal Error: Invalid transfers ${transfers}. - invalid transfers were used

  • SOL Pay SDK Fatal Error: Invalid serialized transaction ${serialized_transaction}. - an invalid serialized transaction was used

Note:

Sending a transaction includes a fee of at least 0.000005 SOL.

Last updated