Kiln docs

Cardano (ADA): Stake ADA with Kiln Connect

Stake ADA programmatically with Kiln Connect SDK.


On Cardano, you delegate your wallet balance in one transaction.
// optional, only for specific setups
const options = {
// use an other pool than Kiln's
poolId: '...';
/* async craftStakeTx(accountId: string, walletAddress: string, options?: AdaStakeOptions): Promise<Transaction> */
const tx = await k.ada.craftStakeTx(, WALLET_PUBKEY, options);


Unstake delegated wallet.
/* async craftUnstakeTx(walletAddress: string): Promise<Transaction> */
const tx = await k.ada.craftUnstakeTx(WALLET_PUBKEY);


Sign Cardano transactions by specifying the integration name and the crafted transaction.
/* async sign(integration: string, transaction: Transaction): Promise<Transaction> */
const signed = await k.ada.sign('vault-1', tx);


Broadcast and get the status of a broadcasted transaction. If you specified a custom RPC url for Cardano in the SDK configuration, it will be used instead of the default one.
/* async broadcast(transaction: Transaction): Promise<string | undefined> */
const hash = await k.ada.broadcast(signed);
/* async getTxStatus(transactionHash: string): Promise<AdaTxStatus> */
const status = await k.ada.getTxStatus(hash);