Quick Access
Coin Methods
Solana
Miscellaneous
Methods
Solana
solanaComposeTransaction

Solana: Compose transaction

Compose a Solana transfer transaction that can be later signed on device using solanaSignTransaction.

The transaction may be a native SOL transfer or a token transfer.

const result = await TrezorConnect.solanaComposeTransaction(params);

Params

Including CommonParams

SolanaComposeTransaction

toAddress

String

Required

Recipient address. In case of token transfer, this still means the owner address of the token account. The associated token account is created automatically.

amount

String

Required

Amount to send in decimal string format

blockHash

String

Required

Recent Block hash

priorityFees

Object

Optional

Fee configuration. If not set, it defaults to hardcoded values. It is recommended to simulate the transaction using blockchainEstimateFee

token

Object

Optional

Token details in case of token transfer

coin

String

Optional

"SOL" for mainnet (default), "DSOL" for devnet

identity

String

Optional

Blockchain connection identity. It's used to separate multiple connections.

Examples

TrezorConnect.solanaComposeTransaction({
    fromAddress: '...',
    toAddress: '...',
    amount: '0.1',
    blockHash: '...',
    lastValidBlockHeight: 123456,
    coin: 'SOL',
});

Result

SolanaComposedTransaction type

{
    success: true,
    payload: {
        serializedTx: string,
        additionalInfo: {
            // in case of token transfer:
            newAccountProgramName: "staking" | "spl-token" | "spl-token-2022",
            tokenAccountInfo: {
                baseAddress: string,
                tokenProgram: string,
                tokenMint: string,
                tokenAccount: string,
            },
        }
    }
}

Error

{
    success: false,
    payload: {
        error: string // error message
    }
}