Estimated read time: 5 minutes
Send a Transaction
Prerequisites
You need a funded Valdium wallet. Get test VLD from the faucet at testnet.valdium.xyz — paste your address and receive free testnet tokens instantly.
Via CLI
# Transfer VLD to another address
valdium send --from alice --to 0xBob... --amount 10 --unit vld
# Check your balance
valdium balance --address 0xAlice...The CLI prompts for your keystore password, builds the transaction, signs it with your Dilithium3 key, and broadcasts to the network. You'll see a transaction hash in the output.
Via SDK
import { ValdiumClient, Wallet } from '@valdium/sdk';
const client = new ValdiumClient('https://testnet.valdium.xyz');
const wallet = await Wallet.fromPrivateKey(secretKey);
const tx = await client.sendTransaction({
from: wallet.address,
to: '0xBob...',
value: 10n * 10n**18n, // 10 VLD in wei
});
console.log('tx hash:', tx.hash);
await tx.wait(); // waits for confirmation (~2 seconds)Transaction lifecycle
- You sign the transaction locally with your Dilithium3 private key
- The signed transaction is submitted to the mempool via
POST /tx - The block producer includes it in the next block (typically within 2 seconds)
- All validators re-execute the transaction and vote on the block
- Once 2/3+ validators approve, the block is finalized — your transaction is permanent
Checking a transaction
# By hash
valdium tx 0xabc123...
# Or via RPC
curl https://testnet.valdium.xyz/receipts/0xabc123...The receipt includes status (success/fail), gas used, and any events emitted by contracts.