# Connect onchain balances and movements to your books.

Bring balances and transfer history from GraphOps into your treasury systems. Your integration matches chain records to the books.

[Create account (opens in a new tab)](https://platform.graphops.xyz/auth/register) [Explore Substreams API](https://graphops.xyz/services/substreams#service-example) 

Treasury and operations 

Worked example 

## Close the day with one receipt left to explain

Your treasury closes incoming USDC every day. Five receipts reach your collection address, four match book entries, and a 400 USDC receipt has none.

At stake 

The day stays open until someone explains the 400 USDC.

Built with 

- GraphOps Substreams

- GraphOps RPC

### Period close

Incoming USDC · blocks 21,400,000 to 21,407,199   

Observed onchain5,550

Matched to books5,150

Unmatched400

- 2,500 USDC0x11…a2 / event 0 Block 21,400,610  BOOK-1042

- 800 USDC0x22…b3 / event 1 Block 21,401,980  BOOK-1043

- 1,200 USDC0x2f…d9 / event 3 Block 21,403,310  BOOK-1044

- 400 USDC0x33…c4 / event 0 Block 21,404,690  No book entry

- 650 USDC0x41…e7 / event 2 Block 21,406,210  BOOK-1045

#### Exception 0x33…c4 / event 0

400 USDC  

ReceiptSuccessful transfer

Sender0x7e…19

Your registerCustomer C-0381

Open invoiceINV-2207 · 400 USDC

Proposed entryBOOK-1046Posts after your approval

### How it comes together

- GraphOps service

- Your systems and team

- GraphOps Substreams 

#### Stream the day’s receipts

Your consumer stores each USDC transfer into your collection address with its block, transaction, and event index, and saves the cursor after each commit.

- Your matcher 

#### Match receipts to the books

Amount and sender rules pair four receipts with BOOK-1042 to BOOK-1045. The 400 USDC receipt in block 21,404,690 has no entry.

- GraphOps RPC 

#### Check the exception at its source

The receipt for transaction 0x33…c4 shows a successful 400 USDC transfer from 0x7e…19.

- Your finance team 

#### Decide the posting

Your register maps 0x7e…19 to customer C-0381, whose invoice INV-2207 is open for 400 USDC. After approval, BOOK-1046 posts with a link to the source event.

ResultThe day closes with 5,550 USDC observed and matched, and every book entry links to its source event.

A source record establishes the movement. Its accounting classification is your finance team’s decision.

If the receipt stays unexplained 

Keep it assigned and open with the investigation notes, and carry it into the next close. The source reference stays with it until someone resolves it.

Related workflows 

## Across the treasury operating cycle

- ### Balance visibility

Read selected account and asset balances at a common block reference.

[GraphOps RPC](https://graphops.xyz/services/rpc)

- ### Transaction follow-up

Investigate funds in motion using transactions and receipts.

[GraphOps RPC](https://graphops.xyz/services/rpc)

- ### Reconciliation and reporting

Collect movement history for matching against your books.

[GraphOps Substreams](https://graphops.xyz/services/substreams)

- ### Operational views

Build activity and position views from indexed entities.

[GraphOps Subgraphs](https://graphops.xyz/services/subgraphs)

Evaluate with your data 

## Test a close that includes exceptions

A matched total is one acceptance condition. Use a sample period with the cases your team spends time resolving.

- Test 01 

### Internal transfers and fees

Include a movement between two of your addresses and a transaction with a network fee. Internal movement must not post as income, and fees belong in the right asset.

- Test 02 

### Repeatable imports

Import the same period twice and restart partway through. Source identifiers prevent duplicate entries, and the saved cursor follows committed records.

- Test 03 

### Exceptions with a trail

Include a missing book entry, an amount mismatch, and a source correction. Each should reach the right review queue and keep its source reference once resolved.

### Bring to the first conversation

- A sanitized address and account map

- Your book-entry format

- A sample close period and matching rules

- Expected movement volume and history

[Explore current pricing](https://graphops.xyz/pricing) 

## Connect your treasury’s next data workflow.

Create an account and fund access for balance reads or movement history. Discuss your reconciliation integration and ongoing reporting requirements with GraphOps.

[Create account (opens in a new tab)](https://platform.graphops.xyz/auth/register)[Discuss your project](https://graphops.xyz/contact#enterprise)
