Documentation

Kanari Documentation

Transferring Coins

Guide on how to transfer tokens within the Kanari Network.

Last updated

Transferring Coins

Kanari Network allows secure and transparent token transfers between accounts. This process is managed by the Move VM to ensure data integrity and security.

Transfer Overview

A transfer involves sending a specified amount of tokens from a sender's address to a recipient's address. Each transaction is recorded on-chain with a unique hash.

How to Transfer

To perform a transfer using the Kanari CLI, use the current client command:

cargo run -p kanari -- client transfer --to <RECIPIENT_ADDRESS> --amount <AMOUNT> --password <PASSWORD>

Example

If you want to send 100 tokens to the address 0x123...abc:

cargo run -p kanari -- client transfer --to 0x1234567890abcdef --amount 100 --password "<PASSWORD>"

For a running local node:

cargo run -p kanari -- client transfer \
  --rpc http://127.0.0.1:6767/rpc \
  --to 0x1234567890abcdef \
  --amount 100 \
  --password "<PASSWORD>"

Verification

After the transfer is completed, you can verify the new balances by listing the wallets:

cargo run -p kanari -- client balance --owner <ADDRESS>

Security Note

Always double-check the recipient's address before confirming the transfer. Transactions on the Kanari Network are immutable.

Transaction Metadata

Every transfer includes metadata that can be tracked:

  • Sender Address: The source of the tokens.
  • Recipient Address: The destination of the tokens.
  • Amount: The quantity of tokens transferred.
  • Timestamp: The exact time the transaction was recorded.
  • Transaction Hash: A unique identifier for the transfer.

Coin and gas objects

Native KANARI transfers use Move object execution. The mutable transfer coin and gas payment coin must be distinct objects. If a wallet has only one usable KANARI coin, consolidate/split or fund a separate gas coin before sending high-volume transfers.

Checkpoint behavior

A submitted transfer may first appear as pending or simulated while the node waits for commit. Once committed, the transfer should appear in transaction history and advance checkpoint height. If no transactions are submitted, height should remain stable.