WDK logoWDK documentation

Send TON

Send native TON and estimate transaction fees.

This guide explains how to send native TON, estimate transaction fees, and use dynamic fee rates.

On TON, values are expressed in nanotons (1 TON = 10^9 nanotons). Transactions support an optional bounceable parameter specific to the TON network.

Send Native TON

You can transfer TON to a recipient address using account.sendTransaction():

Send TON
const result = await account.sendTransaction({
  to: 'EQ...', // TON address
  value: 1000000000, // 1 TON in nanotons
  bounceable: true // Optional: specify if the address is bounceable
})
console.log('Transaction hash:', result.hash)
console.log('Transaction fee:', result.fee, 'nanotons')

Estimate Transaction Fees

You can get a fee estimate before sending using account.quoteSendTransaction():

Quote Transaction Fee
const quote = await account.quoteSendTransaction({
  to: 'EQ...',
  value: 1000000000,
  bounceable: true
})
console.log('Estimated fee:', quote.fee, 'nanotons')

Use Dynamic Fee Rates

You can retrieve current fee rates from the wallet manager using wallet.getFeeRates():

Get Fee Rates
const feeRates = await wallet.getFeeRates()
console.log('Normal fee rate:', feeRates.normal, 'nanotons')
console.log('Fast fee rate:', feeRates.fast, 'nanotons')

Next Steps

To transfer Jetton tokens instead of native TON, see Transfer Jetton Tokens.

On this page