All phases of Avail's unification drop have now ended, 👉👉 check out this page 👈👈 for more information.

API reference
Transfer all funds from one account to another

Transfer all funds from one account to another

On-chain name of extrinsic: balances_transferAll

Parameters

parametertypeoptionaldescription
deststringfalseaccount that will receive funds
keepAlivebooleanfalseif set to false it will reap the account as well
waitForWaitForfalsewait for block inclusion or finalization
accountKeyringPairfalseaccount that will send and sign the transaction
optionsSignerOptionstrueused to overwrite existing signer options

Return value

On failure, a reason of failure is returned. On Success, TransferEvent event, KilledAccount (optionally) event, transaction hash and block hash is returned.

Minimal Example

import { Keyring } from "@polkadot/api"
import { SDK } from "avail-js-sdk"
import { WaitFor } from "avail-js-sdk/sdk/transactions"
 
const main = async () => {
  const providerEndpoint = "wss://turing-rpc.avail.so/ws";
  const sdk = await SDK.New(providerEndpoint)
 
  const Alice = 'This is a random seed phrase please do not use it';
  const account = new Keyring({ type: "sr25519" }).addFromUri(Alice)
  const dest = "5HGjWAeFDfFCWPsjFQdVV2Msvz2XtMktvgocEZcCj68kUMaw" // Eve
  const keepAlive = true
 
  const result = await sdk.tx.balances.transferAll(dest, keepAlive, WaitFor.BlockInclusion, account)
  if (result.isErr) {
    console.log(result.reason)
    process.exit(1)
  }
 
  console.log("From=" + result.event.from + ", To=" + result.event.to + ", Amount=" + result.event.amount)
  console.log("MaybeKilled=" + result.event2?.account)
  console.log("TxHash=" + result.txHash + ", BlockHash=" + result.blockHash)
 
  process.exit()
}
main()