How to calculate and verify my account balance hash manually?

Modified on:

The hash is calculated by applying SHA256 to the Unique Identifier, also known as salt, displayed in the Proof of Solvency page, and to the non-zero balances in the natural order of the currencies codes. Only the first 16 characters of the hexadecimal string are considered.

For example:

hex(sha256(unique identifier + sha256(btc balance) + sha256(eth balance) + sha256(xrp balance))).take(16)


To do this verification yourself, follow this tutorial:


Step 1 – Download the required tools

Start by equipping yourself with the proper tools and software:

  1. Download and install the version NodeJS LTS from their official website.
  2. Download and unzip the Merkle Tree verification package from Bitso's official Github repository.


Step 2 –Go to Bitso's Proof of Solvency reports page

To find the Proof of Solvency reports page, follow these steps:

  1. Go to in your browser.
  2. Log in to your accountl
  3. Go to the menu in the upper right corner.
  4. Select Profile.
  5. In the left navigation bar, go to Proof of Solvency

There you'll find this page:



Step 3 –Download the Merkle Tree and retrieve your hash

Select the date you want to review in the pulldown to open the liabilities report and perform these two steps:

  1. Click in Download the Merkle Tree
  2. Copy Your hash by clicking in the icon on the right of the hash string.



Step 4 – Calculating your hash and verifying the liability

1. Go to your computer's terminal and find the “merkle-tree-verify” folder directory of the verify package.



2. Initiate the command “npm install”.



3. Initiate the command “node ./verify.js <location of the Merkle Tree data> <your Merkle Leaf>”.*

For example, “node ./verify.js ./output_merkle_tree_small.txt 64b3993941c4989c”.



4. Verify the root hash from the Liabilities report on Bitso's Proof of Solvency page. Make sure you're reviewing the correct date of the report.


By following this tutorial, you'll be able to find the same root hash present in the report and verify that your account balance is properly included in the Merkle Tree and Bitso's liabilities.

Just notice that this process may take more than 20 minutes depending on the size of the Merkle Tree downloaded.


For informational purposes only, this is not investment advice. When buying, selling, trading or using cryptocurrencies you are subject to certain risks including price volatility and loss of capital, for more information please visit the following link.

Was this useful?