From raw activityto a number you can explain.

NODE40 Bedrock is a governed digital asset treasury accounting system with controls at every stage: data in, ledgers and lots, a decisions layer your team controls, and reports produced from the same record.

Diagram of the Bedrock pipeline connecting data feeds, ledgers and lots, the decisions layer, and reporting outputs in one financial record.

Getting data in: validated before it touches your record

Getting data in: validated before it touches your record

Connect a native feed, or paste any number of wallet addresses (Bitcoin, Solana, and xpubs, mixed together) and Bedrock sorts them by format, tells you which it supports, and imports them in one pass. Live feeds sync incrementally from a cursor, and can be capped through a date when a wallet was only yours for part of its history.

Anything without a native connection comes in through custom upload, and nothing happens until the file survives validation. Bedrock previews exactly what an upload will do before it runs: how many transactions, which ledgers already exist, and which would be created. Unrecognized columns get a "did you mean" suggestion instead of a dead-end error. Rows are checked for sense, not just format, so a deposit classified as an expense is flagged as the contradiction it is. Warnings distinguish "you should know this" from "this must be fixed," and every upload stays on record and re-downloadable, permanently.

Transactions and lots are different things

Transactions and lots are different things

A transaction is what happened. A lot is what you hold, with its own quantity, basis, acquisition date, holding period, and availability. Bedrock keeps them separate because they are separate: one incoming transfer can open several lots, and one lot can participate in many transactions across its life.

That separation is what makes governance possible. A transaction can stay unmutated while your team controls how lots satisfy it. Pick any lot in the system and see every transaction that ever drew from it. Related entries, such as a send and its network fee or the two legs of a trade, stay linked on the record.

Transfers are matched with evidence, not assumptions

Transfers are matched with evidence, not assumptions

When value moves between your own wallets, Bedrock scores the match and shows its work, with a higher confidence score for a shared transaction hash and a lower one when the match rests on a wallet address or on amount and timing alone.

The lots that move keep their original acquisition date and cost basis, and the §1223(2) holding-period treatment is cited right on the record. The transfer transaction has a market value at the moment it happened, and the record keeps that informational value distinct from the carried-over basis, because they are different facts.

Show the math

Show the math

Every computed value can explain itself. Where did the unit price come from? It could be reported by the venue, computed from the transaction value, or overridden by an operator with a stated reason. When one send draws from five lots, how was the fee prorated across them, and what are the exact proceeds per lot? Click "show math" and the formula is right there, term by term.

The provenance runs all the way down. The raw source records a provider returned for any transaction are archived and viewable, so the on-screen number can be traced to the data that produced it.

Follow the asset flow

Follow the asset flow

Lots split, transfer, and combine as treasury operates, and Bedrock preserves the full lineage. Visualize how the lots behind any disposal trace backward through transfers and splits to their original acquisitions, however long the path. A 2025 sale can be followed back to a 2011 acquisition, confirming that long-term treatment survived every intermediate move.

Reports from the same record

Reports from the same record

Gain/loss, reconciliation, and token reports are produced from the same record that holds the lots, rules, and decisions. View them on screen, or download them as professional PDF financial reports or Excel workbooks with lot-level cost basis and proceeds columns.

The reconciliation report works as an internal-consistency check. Because lots and transactions are kept distinct, a data gap shows up as a visible negative balance instead of being absorbed into the math. If the report is green, the system's math holds together; if data is missing, you can see exactly where.

Explore Audit & Governance