Skip To Content

Blockdaemon Documentation

Stake Tezos (XTZ) with Fireblocks

It’s easy to stake your XTZ tokens to Blockdaemon using Fireblocks.

Note: Tezos staking is only supported through the Fireblocks API (not UI).

To stake your XTZ with Fireblocks,  run the following script with your own params:

import fs from "fs";
import path from "path";
import { FireblocksSDK } from "fireblocks-sdk";
import { setDelegate } from "./src/xtz-staker";

const apiSecret = fs.readFileSync(path.resolve(__dirname, "secret_key_path"), "utf8"); 
const apiKey = "api_key"; 
const fireblocks = new FireblocksSDK(apiSecret, apiKey);

//Consts for delegation:

// Tezos Public RPC url
const url: string = ""; //testnet:
const destination: string = "baker_address";   
const vaultAccountId = 'vault_account_id'
const reveal = false;
/* Set Delegate Operation: 
    1. FireblocksSDK instance
    2. Tezos public RPC url
    3. Destination baker's address (tz1...)
    4. Vault account ID of the source 
    5. Reveal - "true" in case the source address should be revealed (No any historical outgoing transaction) 
    NOTE: "REVEAL" should be done only on the FIRST OUTGOING source wallet’s operation. 
    NOTE: For undelegate - pass empty string as destination 

setDelegate(fireblocks, url, tz1fPKAtsYydh4f1wfWNfeNxWYu72TmM48fu, vaultAccountId, reveal);

This script uses the Tezos Staking SDK, provided by Fireblocks.

Blockdaemon Tezos Baker Address


Additional Guidance

We don't support Internet Explorer

Please use Chrome, Safari, Firefox, or Edge to view this site.