> ## Documentation Index
> Fetch the complete documentation index at: https://www.dynamic.xyz/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# sendTon

# sendTon

Sends native TON to a recipient address.

## Usage

```javascript theme={"system"}
import { sendTon, isTonWalletAccount, NANOTON_PER_TON } from "@dynamic-labs-sdk/ton";
import { getPrimaryWalletAccount } from "@dynamic-labs-sdk/client";

const walletAccount = getPrimaryWalletAccount();

if (walletAccount && isTonWalletAccount(walletAccount)) {
  const { transactionHash } = await sendTon({
    walletAccount,
    transaction: {
      recipientAddress: "UQDrjaLahLkMB-hMCmkzOyBuHJ186Qg_CZQhrOhIPBr0oDkB",
      amount: BigInt(100000000), // 0.1 TON in nanotons
    },
  });

  console.log("Transaction hash:", transactionHash);
}
```

## Parameters

| Parameter                      | Type                       | Description                                                             |
| ------------------------------ | -------------------------- | ----------------------------------------------------------------------- |
| `transaction.recipientAddress` | `string`                   | The recipient's TON address                                             |
| `transaction.amount`           | `bigint`                   | The amount to send in nanotons                                          |
| `walletAccount`                | `TonWalletAccount`         | The wallet account to send from                                         |
| `client`                       | `DynamicClient` (optional) | The Dynamic client instance. Only required when using multiple clients. |

## Returns

`Promise<TonSendTransactionResponse>` - A promise that resolves to an object containing:

* `transactionHash` - The hash of the submitted transaction

## Errors

| Error                 | Description                                                   |
| --------------------- | ------------------------------------------------------------- |
| `NotTonProviderError` | Thrown if the wallet account's provider is not a TON provider |

## Notes

* The amount is specified in **nanotons** (1 TON = 1,000,000,000 nanotons). You can use the exported `NANOTON_PER_TON` constant for conversion.

## Related functions

* [sendJetton](/javascript/reference/ton/send-jetton) - Send Jetton tokens
* [sendTransaction](/javascript/reference/ton/send-transaction) - Send a custom TON transaction
* [isTonWalletAccount](/javascript/reference/ton/checking-ton-wallet-account-type) - Check if a wallet account is a TON account
