No monthly statement
An explorer timeline is not a period-based record. Start with dates, an opening balance and a clearly bounded set of movements.
Wallet records for accounting
PlannedA bank-style statement for your USDC and USDT wallets — every payment with its evidence, reconciled against the chain.
January 2026 / Ethereum / USDC
01 / The problem
An explorer timeline is not a period-based record. Start with dates, an opening balance and a clearly bounded set of movements.
Anyone can reuse a token symbol. Keep the contract identity and explain which same-name assets were excluded.
Paying USDC can cost ETH or BNB. Keep that network fee in its own asset ledger, with its own valuation.
02 / What is in a statement
Wallet, network, exact token contract, period and timezone.
The asset quantity at the block immediately before the period starts.
Incoming and outgoing amounts, counterparties and source references.
Wallet-paid network fees in ETH or BNB, separate from the stablecoin.
Calculated quantity alongside a separately observed state balance.
An explicit result, residual and explanation; never a hidden balancing entry.
Checked blocks, missing intervals and the limits of the supported record set.
Unverified or excluded same-name tokens with a visible reason.
A statement ID and reproducible hash to identify the reviewed content.
Interactive sample · Sample – synthetic data
Entirely invented example. No wallet was queried. Amounts, evidence, prices and block numbers are synthetic.
Without JavaScript, all three views are available below.
Indexbase / Statement
0x1111…1111 · synthetic identifier
| Timestamp UTC | Evidence | Direction | Amount USDC | Balance USDC | Value CHF |
|---|---|---|---|---|---|
| 2026-01-0212:00 UTC | SYNTHETIC-TX-01 | in | +2400.000000 | 3400.000000 | 2160.00 |
| 2026-01-0512:00 UTC | SYNTHETIC-TX-02 | out | −350.000000 | 3050.000000 | 318.50 |
| 2026-01-0812:00 UTC | SYNTHETIC-TX-03 | in | +1250.000000 | 4300.000000 | 1150.00 |
| 2026-01-1112:00 UTC | SYNTHETIC-TX-04 | out | −800.000000 | 3500.000000 | 720.00 |
| 2026-01-1412:00 UTC | SYNTHETIC-TX-05 | in | +600.000000 | 4100.000000 | 546.00 |
| 2026-01-1712:00 UTC | SYNTHETIC-TX-06 | out | −120.000000 | 3980.000000 | 110.40 |
| 2026-01-2012:00 UTC | SYNTHETIC-TX-07 | in | +3000.000000 | 6980.000000 | null · unknown |
| 2026-01-2312:00 UTC | SYNTHETIC-TX-08 | out | −950.000000 | 6030.000000 | 864.50 |
| 2026-01-2612:00 UTC | SYNTHETIC-TX-09 | in | +450.000000 | 6480.000000 | 414.00 |
| 2026-01-2912:00 UTC | SYNTHETIC-TX-10 | out | −80.000000 | 6400.000000 | 72.00 |
CHF prices are invented (SYNTHETIC-FX-01), timestamped at each movement. One price is missing; no complete CHF total.
Calculated and observed balances agree within this sample scope.
0.001050000000000000 ETH · CHF 2.63
SYNTHETIC-TX-02 · invented price CHF 2,500/ETH · 2026-01-05T12:00:00Z.
One sample wallet-initiated transaction; other outflows initiated by third parties. ETH gas does not reduce USDC.
999,000 “USDC” · 0x9999…9999
Synthetic counterfeit token, different contract. Excluded from balances. Real unverified tokens require review; they are not automatically counterfeit.
24000001–24000099 · opening block 24000000
Complete in sample scope; no missing intervals.
Invented block numbers; selected USDC interval only, not lifetime wallet history. Freeze status not checked.
SYNTHETIC-TX identifiers are invented evidence references, not explorer links. JSON retains counterparties, block numbers, log indices, time boundaries and price metadata.
dff36902419c1b2ba9b5a48b5f8b41ad34ba7814cd2b04c0bbdbcd0d935b4ddbFingerprint of canonical sample content without its hash field. Not a signature, audit opinion or guarantee of data accuracy.
"Timestamp UTC","Reference","Direction","Amount USDC","Running USDC","Value CHF","Price CHF","Price source","Price timestamp","Gas ETH","Gas CHF","Statement ID","Calculated closing","Observed closing","Difference USDC","Reconciliation","Coverage complete","Content hash"
"2026-01-02T12:00:00Z","SYNTHETIC-TX-01","in","2400.000000","3400.000000","2160.00","0.90","SYNTHETIC-FX-01","2026-01-02T12:00:00Z","","","SAMPLE-ETH-USDC-2026-01-reconciled","6400.000000","6400.000000","0.000000","Reconciled","true","dff36902419c1b2ba9b5a48b5f8b41ad34ba7814cd2b04c0bbdbcd0d935b4ddb"
"2026-01-05T12:00:00Z","SYNTHETIC-TX-02","out","350.000000","3050.000000","318.50","0.91","SYNTHETIC-FX-01","2026-01-05T12:00:00Z","0.001050000000000000","2.63","SAMPLE-ETH-USDC-2026-01-reconciled","6400.000000","6400.000000","0.000000","Reconciled","true","dff36902419c1b2ba9b5a48b5f8b41ad34ba7814cd2b04c0bbdbcd0d935b4ddb"
"2026-01-08T12:00:00Z","SYNTHETIC-TX-03","in","1250.000000","4300.000000","1150.00","0.92","SYNTHETIC-FX-01","2026-01-08T12:00:00Z","","","SAMPLE-ETH-USDC-2026-01-reconciled","6400.000000","6400.000000","0.000000","Reconciled","true","dff36902419c1b2ba9b5a48b5f8b41ad34ba7814cd2b04c0bbdbcd0d935b4ddb"
"2026-01-11T12:00:00Z","SYNTHETIC-TX-04","out","800.000000","3500.000000","720.00","0.90","SYNTHETIC-FX-01","2026-01-11T12:00:00Z","","","SAMPLE-ETH-USDC-2026-01-reconciled","6400.000000","6400.000000","0.000000","Reconciled","true","dff36902419c1b2ba9b5a48b5f8b41ad34ba7814cd2b04c0bbdbcd0d935b4ddb"
"2026-01-14T12:00:00Z","SYNTHETIC-TX-05","in","600.000000","4100.000000","546.00","0.91","SYNTHETIC-FX-01","2026-01-14T12:00:00Z","","","SAMPLE-ETH-USDC-2026-01-reconciled","6400.000000","6400.000000","0.000000","Reconciled","true","dff36902419c1b2ba9b5a48b5f8b41ad34ba7814cd2b04c0bbdbcd0d935b4ddb"
"2026-01-17T12:00:00Z","SYNTHETIC-TX-06","out","120.000000","3980.000000","110.40","0.92","SYNTHETIC-FX-01","2026-01-17T12:00:00Z","","","SAMPLE-ETH-USDC-2026-01-reconciled","6400.000000","6400.000000","0.000000","Reconciled","true","dff36902419c1b2ba9b5a48b5f8b41ad34ba7814cd2b04c0bbdbcd0d935b4ddb"
"2026-01-20T12:00:00Z","SYNTHETIC-TX-07","in","3000.000000","6980.000000","","","","","","","SAMPLE-ETH-USDC-2026-01-reconciled","6400.000000","6400.000000","0.000000","Reconciled","true","dff36902419c1b2ba9b5a48b5f8b41ad34ba7814cd2b04c0bbdbcd0d935b4ddb"
"2026-01-23T12:00:00Z","SYNTHETIC-TX-08","out","950.000000","6030.000000","864.50","0.91","SYNTHETIC-FX-01","2026-01-23T12:00:00Z","","","SAMPLE-ETH-USDC-2026-01-reconciled","6400.000000","6400.000000","0.000000","Reconciled","true","dff36902419c1b2ba9b5a48b5f8b41ad34ba7814cd2b04c0bbdbcd0d935b4ddb"
"2026-01-26T12:00:00Z","SYNTHETIC-TX-09","in","450.000000","6480.000000","414.00","0.92","SYNTHETIC-FX-01","2026-01-26T12:00:00Z","","","SAMPLE-ETH-USDC-2026-01-reconciled","6400.000000","6400.000000","0.000000","Reconciled","true","dff36902419c1b2ba9b5a48b5f8b41ad34ba7814cd2b04c0bbdbcd0d935b4ddb"
"2026-01-29T12:00:00Z","SYNTHETIC-TX-10","out","80.000000","6400.000000","72.00","0.90","SYNTHETIC-FX-01","2026-01-29T12:00:00Z","","","SAMPLE-ETH-USDC-2026-01-reconciled","6400.000000","6400.000000","0.000000","Reconciled","true","dff36902419c1b2ba9b5a48b5f8b41ad34ba7814cd2b04c0bbdbcd0d935b4ddb"
{
"schema": "indexbase.website-sample/1",
"synthetic": true,
"statementId": "SAMPLE-ETH-USDC-2026-01-reconciled",
"createdAt": "2026-02-01T12:00:00Z",
"wallet": "0x1111…1111",
"walletNote": "Abbreviated synthetic identifier; not a usable wallet address",
"chain": {
"name": "Ethereum",
"chainId": 1
},
"asset": {
"symbol": "USDC",
"decimals": 6,
"contract": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"verification": "{{TODO: verify}}; public issuer contract reference only; no live lookup"
},
"period": {
"label": "January 2026",
"timeZone": "Europe/Zurich",
"fromInclusive": "2025-12-31T23:00:00Z",
"toExclusive": "2026-01-31T23:00:00Z",
"openingBlock": 24000000,
"fromBlock": 24000001,
"toBlock": 24000099,
"blockNote": "Synthetic block numbers; not actual historical block mappings"
},
"openingAtomic": "1000000000",
"movements": [
{
"id": "SYNTHETIC-TX-01",
"timestamp": "2026-01-02T12:00:00Z",
"block": 24000002,
"logIndex": 0,
"direction": "in",
"amountAtomic": "2400000000",
"runningBalanceAtomic": "3400000000",
"counterparty": "0x22…22",
"reference": "SAMPLE-REF-1",
"initiatedByWallet": false,
"feePayer": "Sample third party",
"priceCHF": "0.90",
"valueCHF": "2160.00",
"priceSource": "SYNTHETIC-FX-01",
"priceTimestamp": "2026-01-02T12:00:00Z"
},
{
"id": "SYNTHETIC-TX-02",
"timestamp": "2026-01-05T12:00:00Z",
"block": 24000005,
"logIndex": 0,
"direction": "out",
"amountAtomic": "350000000",
"runningBalanceAtomic": "3050000000",
"counterparty": "0x33…33",
"reference": "SAMPLE-REF-2",
"initiatedByWallet": true,
"feePayer": "Sample wallet",
"priceCHF": "0.91",
"valueCHF": "318.50",
"priceSource": "SYNTHETIC-FX-01",
"priceTimestamp": "2026-01-05T12:00:00Z"
},
{
"id": "SYNTHETIC-TX-03",
"timestamp": "2026-01-08T12:00:00Z",
"block": 24000008,
"logIndex": 0,
"direction": "in",
"amountAtomic": "1250000000",
"runningBalanceAtomic": "4300000000",
"counterparty": "0x44…44",
"reference": "SAMPLE-REF-3",
"initiatedByWallet": false,
"feePayer": "Sample third party",
"priceCHF": "0.92",
"valueCHF": "1150.00",
"priceSource": "SYNTHETIC-FX-01",
"priceTimestamp": "2026-01-08T12:00:00Z"
},
{
"id": "SYNTHETIC-TX-04",
"timestamp": "2026-01-11T12:00:00Z",
"block": 24000011,
"logIndex": 0,
"direction": "out",
"amountAtomic": "800000000",
"runningBalanceAtomic": "3500000000",
"counterparty": "0x55…55",
"reference": "SAMPLE-REF-4",
"initiatedByWallet": false,
"feePayer": "Sample third party",
"priceCHF": "0.90",
"valueCHF": "720.00",
"priceSource": "SYNTHETIC-FX-01",
"priceTimestamp": "2026-01-11T12:00:00Z"
},
{
"id": "SYNTHETIC-TX-05",
"timestamp": "2026-01-14T12:00:00Z",
"block": 24000014,
"logIndex": 0,
"direction": "in",
"amountAtomic": "600000000",
"runningBalanceAtomic": "4100000000",
"counterparty": "0x66…66",
"reference": "SAMPLE-REF-5",
"initiatedByWallet": false,
"feePayer": "Sample third party",
"priceCHF": "0.91",
"valueCHF": "546.00",
"priceSource": "SYNTHETIC-FX-01",
"priceTimestamp": "2026-01-14T12:00:00Z"
},
{
"id": "SYNTHETIC-TX-06",
"timestamp": "2026-01-17T12:00:00Z",
"block": 24000017,
"logIndex": 0,
"direction": "out",
"amountAtomic": "120000000",
"runningBalanceAtomic": "3980000000",
"counterparty": "0x77…77",
"reference": "SAMPLE-REF-6",
"initiatedByWallet": false,
"feePayer": "Sample third party",
"priceCHF": "0.92",
"valueCHF": "110.40",
"priceSource": "SYNTHETIC-FX-01",
"priceTimestamp": "2026-01-17T12:00:00Z"
},
{
"id": "SYNTHETIC-TX-07",
"timestamp": "2026-01-20T12:00:00Z",
"block": 24000020,
"logIndex": 0,
"direction": "in",
"amountAtomic": "3000000000",
"runningBalanceAtomic": "6980000000",
"counterparty": "0x88…88",
"reference": "SAMPLE-REF-7",
"initiatedByWallet": false,
"feePayer": "Sample third party",
"priceCHF": null,
"valueCHF": null,
"priceSource": null,
"priceTimestamp": null
},
{
"id": "SYNTHETIC-TX-08",
"timestamp": "2026-01-23T12:00:00Z",
"block": 24000023,
"logIndex": 0,
"direction": "out",
"amountAtomic": "950000000",
"runningBalanceAtomic": "6030000000",
"counterparty": "0x99…99",
"reference": "SAMPLE-REF-8",
"initiatedByWallet": false,
"feePayer": "Sample third party",
"priceCHF": "0.91",
"valueCHF": "864.50",
"priceSource": "SYNTHETIC-FX-01",
"priceTimestamp": "2026-01-23T12:00:00Z"
},
{
"id": "SYNTHETIC-TX-09",
"timestamp": "2026-01-26T12:00:00Z",
"block": 24000026,
"logIndex": 0,
"direction": "in",
"amountAtomic": "450000000",
"runningBalanceAtomic": "6480000000",
"counterparty": "0x1010…1010",
"reference": "SAMPLE-REF-9",
"initiatedByWallet": false,
"feePayer": "Sample third party",
"priceCHF": "0.92",
"valueCHF": "414.00",
"priceSource": "SYNTHETIC-FX-01",
"priceTimestamp": "2026-01-26T12:00:00Z"
},
{
"id": "SYNTHETIC-TX-10",
"timestamp": "2026-01-29T12:00:00Z",
"block": 24000029,
"logIndex": 0,
"direction": "out",
"amountAtomic": "80000000",
"runningBalanceAtomic": "6400000000",
"counterparty": "0x1111…1111",
"reference": "SAMPLE-REF-10",
"initiatedByWallet": false,
"feePayer": "Sample third party",
"priceCHF": "0.90",
"valueCHF": "72.00",
"priceSource": "SYNTHETIC-FX-01",
"priceTimestamp": "2026-01-29T12:00:00Z"
}
],
"fees": [
{
"movementId": "SYNTHETIC-TX-02",
"asset": "ETH",
"amountAtomic": "1050000000000000",
"decimals": 18,
"valueCHF": "2.63",
"priceCHF": "2500.00",
"priceTimestamp": "2026-01-05T12:00:00Z",
"priceSource": "SYNTHETIC-FX-01",
"rounding": "CHF nearest 0.01, half up"
}
],
"feeScope": "One sample wallet-initiated transaction; the other sample outflows are third-party initiated. Gas is not deducted from USDC.",
"excluded": [
{
"symbol": "USDC",
"contract": "0x9999…9999",
"amountAtomic": "999000000000",
"decimals": 6,
"classification": "Synthetic counterfeit example",
"reason": "Different synthetic contract. Excluded from the approved-asset ledger. An unverified real token would require review, not an automatic fraud verdict."
}
],
"coverage": {
"fromBlock": 24000001,
"toBlock": 24000099,
"missingRanges": [],
"historyComplete": true,
"scope": "Selected USDC Transfer events in this synthetic interval only; not lifetime wallet history"
},
"issuerFreezeStatus": null,
"sources": [
"SYNTHETIC-EVENTS-01",
"SYNTHETIC-STATE-01",
"SYNTHETIC-FX-01"
],
"valuationNote": "Invented CHF prices, not market observations. One missing price remains null. No complete CHF total is asserted.",
"reconciliation": {
"incomingAtomic": "7700000000",
"outgoingAtomic": "2300000000",
"calculatedClosingAtomic": "6400000000",
"observedClosingAtomic": "6400000000",
"deltaAtomic": "0",
"status": "Reconciled"
},
"contentHash": "dff36902419c1b2ba9b5a48b5f8b41ad34ba7814cd2b04c0bbdbcd0d935b4ddb"
}04 / Reconciliation, explained
A real implementation must independently read the same token contract at the cutoff block. The sample simulates a separate state source; it makes no network request.
Observed 6,400 − calculated 6,400 = 0 USDC. Agreement is limited to the stated asset, wallet and interval.
The difference variant observes 6,350 USDC and reports −50 USDC, with a missing block interval. It does not invent a transfer to make the totals agree.
Check gaps, event semantics and cutoff selection. An issuer freeze may affect transferability; it is not, by itself, an explanation for a broken balance equation.
05 / Who it is for
Prepare a consistent client evidence file, with quantities, valuation inputs and questions to resolve.
The accountant workflow ↗Separate a payment receipt from the invoice, fees and eventual conversion into fiat.
USDC payment records ↗Inspect references, cutoff definitions, omissions and content versions. A technical report is not an audit opinion.
Inspect the sample ↗Prepare a year-end holding record and keep it alongside the wider records your tax workflow needs.
Year-end balance ↗For the wider personal-tax workflow, explore CoinTaxReporting. A stablecoin statement is one supporting record, not a full tax return.
06 / Indexbase & CoinTaxReporting
CoinTaxReporting is our first integration partner. {{TODO: final wording}} — confirm the team relationship and final public description before publication.
07 / Planned scope
| Chain | USDC | USDT | Native gas |
|---|---|---|---|
| Ethereum | Issuer deployment · {{TODO: verify}} | Issuer deployment · {{TODO: verify}} | ETH |
| BNB Smart Chain | Representation / custodian · {{TODO: verify}} | Representation / custodian · {{TODO: verify}} | BNB |
Under consideration: Tron, Base, Solana. Chain names are a planning scope, not current coverage. A bridged representation remains distinct from a native issuer token.
Read the asset-specific guides: USDC statement and USDT statement.
08 / Planned features
MVP / planned
Next / investigation
These are directions to validate with fiduciaries, not integrations or delivery commitments.
What an accounting import needs ↗09 / Proposed pricing
Proposed – final at launch
CHF 9–19
One wallet, one selected period. Intended for an occasional report.
CHF 49–149 / month
A proposed recurring client-review workflow. Included wallets and limits: {{TODO: final package scope}}.
CHF 19–39 / month
A proposed monthly statement workflow for an operating business. Included wallets and limits: {{TODO: final package scope}}.
Currency: CHF. {{TODO: confirm VAT treatment, billing terms and exact package limits}}. No checkout, payment or subscription is active.
10 / Questions
A period-based record for an identified wallet and token: opening balance, movements, closing balance, native gas, evidence, exclusions and a balance comparison. It is a reporting document, not a bank account or a bank-issued statement.
The planned workflow needs a public wallet address, selected network and dates. No private key, seed phrase, wallet connection, token approval or spending permission is needed. Public addresses can still reveal sensitive activity; share them deliberately.
The MVP target is USDC and USDT on Ethereum and BNB Smart Chain. Every deployment needs a verified contract and decimals. BNB-chain representations may be bridged or custodian-issued; native issuer status must not be assumed from a ticker.
Identify each asset by network and contract, not its name. A known synthetic counterfeit is excluded in the sample. A real unknown contract is shown as unverified for review, separately from the approved asset balance. A legitimate bridge representation is a distinct asset, not automatically a fake.
The planned record stores a price, quote currency, source and timestamp for each movement. A missing price stays null. Sample rates are invented and are not market quotations. {{TODO: choose provider}} and document valuation times, rounding and year-end policy before real reports.
PDF is intended for review, CSV for spreadsheets and JSON for structured integration. A CSV is not automatically a ready-to-post accounting import. camt.053 and Bexio/Abacus workflows are next-stage investigations; importer, account mapping and currency handling still need validation.
No. The statement organises technical records and supporting context. It does not establish wallet ownership, the business purpose of a transfer, a tax classification or a final accounting entry. Your fiduciary or adviser decides the applicable treatment.
Opening balance plus incoming minus outgoing equals the independently observed closing balance for the same contract, wallet and cutoff, with no known coverage gaps in that scope. Agreement does not establish a complete lifetime history, beneficial ownership or the correctness of a financial interpretation.
Tell us what you want to build. Your requirements will help shape the private beta.
The form is a preview until its endpoint is configured. Use the email alternative on Contact to discuss a sample; do not send private keys or personal transaction records.