heshi_
← Back to blog

How to Reconcile On-Chain Wallet Balances to Your General Ledger

Heshi Team··3 min read
guide
reconciliation
crypto-accounting

If you run a crypto company with on-chain assets, you have two sources of truth: the blockchain and your accounting software. And they almost never agree.

The blockchain says your ETH wallet holds 142.847291 ETH. Your Xero GL says 142.85 ETH. That 0.002709 ETH difference? It could be a rounding issue. Or it could be a missed gas fee. Or an unrecorded staking reward. Or a transaction that hit the chain at 11:59 PM on the last day of the month and didn't make it into your books.

This is the wallet reconciliation problem. And if you're not solving it systematically, your financial statements are wrong.

Why Wallet Reconciliation Matters

1. Audit readiness. Under ASC 350-60 (the new US GAAP standard for digital assets, effective December 2024), crypto assets must be measured at fair value with changes in the income statement. Your auditor will want to see that your reported balances reconcile to verifiable on-chain data.

2. Regulatory compliance. If you're a MAS-regulated entity in Singapore or an ADGM-licensed entity in the UAE, your base capital calculations depend on accurate asset balances.

3. Operational integrity. If you can't trust your balance sheet, you can't trust your treasury forecasts, your burn rate calculations, or your token unlock schedules.

The 5-Step Reconciliation Process

Step 1: Inventory Your Wallets

Before you can reconcile, you need a complete list of every wallet your entity controls — hot wallets, cold wallets, multi-sig wallets, exchange deposit addresses, DeFi protocol positions, and bridge escrow addresses.

Map each wallet to its chain, entity, GL account code, and custodian.

Step 2: Pull On-Chain Balances

For each wallet, pull the balance at your period-end cut-off time. Use the block number closest to your cut-off time, not the current balance. Transactions that occurred after cut-off belong to the next period.

Step 3: Pull GL Balances

From your accounting software, pull the balance for each mapped GL account at period-end. The GL balance should reflect all journal entries posted for the period.

Step 4: Compare and Identify Differences

For each wallet/token combination, calculate the difference. Categorize each as: matched (within tolerance), timing difference, classification error, or missing transaction.

Step 5: Resolve and Adjust

For each discrepancy: investigate, classify, prepare an adjusting JE, review, and post.

Common Pitfalls

Forgetting gas fees. Every on-chain transaction costs gas. Multiply by hundreds of transactions per month and it adds up.

Wrapped asset confusion. Staking 100 ETH and receiving 100 stETH means your ETH balance went down but your stETH balance went up. Your reconciliation must cover all token types.

DeFi position accounting. LP deposits reduce your token balances but create LP token balances. Track both.

Cross-chain bridges. A bridge from Ethereum to Arbitrum means one chain is down and another is up. Reconcile across chains, not independently.

Automation Is Not Optional

At scale, manual reconciliation breaks down. This is exactly what Heshi automates — continuous monitoring, real-time comparison, instant discrepancy flagging.


Ready to stop reconciling by hand? Book a demo and we'll run a free reconciliation assessment on your wallets.