> For the complete documentation index, see [llms.txt](https://docs.ternoa.network/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ternoa.network/build-1/javascript/nft-features-and-pallets/tokens/caps/transfer-caps.md).

# Transfer CAPS

CAPS is the Ternoa blockchain token. Transactions made on the Ternoa blockchain are carried out in CAPS. It is used in particular for the creation of NFTs, Encryption, and storage of data over time.

### Prerequisites

Before getting started, make sure you have the following ready:

1. [Create a Ternoa](/getting-started/wallets/ternoa-wallet.md) account with [Alphanet CAPS](broken://pages/ej9gceaLIhCN2PgUBh42)
2. Install and set up your editor of choice (we will use Visual Studio Code \[VSC] in this tutorial)
3. Install [NodeJS v.14+](https://nodejs.org/en/download/) & NPM
4. [Install & initialize Ternoa-JS](/build-1/javascript/ternoa-js-library-utilities/installation-and-initialization.md)

### How to transfer CAPS to an address

This example shows how to transfer a CAPS balance to an address using `balancesTransfer`. The `numberToBalance` helper is used to format the amount from a number value to a BN value according to chain decimals (18 decimals for Ternoa).

```typescript
import {
	balancesTransfer,
	getKeyringFromSeed,
	numberToBalance,
	WaitUntil,
} from "ternoa-js";

const main = async () => {
	try {
		// The known accounts we want to use
		const keyring = await getKeyringFromSeed("//TernoaTestAccount");
		const TO_ADDRESS = "5GguNdS1T2J9BDFMqPhdPp8vtQxfhGJjiGwAaYF7TPLuiJPs";

		// Amount transferred: 1 CAPS
		const amount = numberToBalance(1); // 1 = 1000000000000000000 for the Ternoa blockchain

		const transferData = await balancesTransfer(
			TO_ADDRESS,
			amount,
			keyring,
			WaitUntil.BlockInclusion
		);
		console.log(
			`The amount transferred to ${TO_ADDRESS} is:`,
			transferData.amountRounded,
			"CAPS"
		);
	} catch (e) {
		console.error(e);
	}
};

main();
```

{% hint style="info" %}
The `balancesTransferKeepAlive` helper can be used for transferring some liquid balance to another account with a check that the transfer will not kill the origin account.
{% endhint %}

{% hint style="info" %}
The `balancesTransferAll` helper can be used for transferring the entire transferable balance from the caller account.&#x20;
{% endhint %}

### Support

If you face any trouble, feel free to reach out to our community engineers in our [Discord](https://discord.gg/fUmBkPpnRu).
