Match invoices.
Keep the evidence.
Bring your existing invoices and payment observations. Review partial payments, overpayments and unresolved matches before you allocate a cent.
Bring your records
Import replaces that collection. Invalid data leaves the ledger unchanged. Imported payments always remain unverified.
Schema and sample files
Invoice: invoice_id,expected_amount,sender,receiver,start_at,end_at. Payment: payment_id,amount,sender,receiver,occurred_at,invoice_id. Allocation: invoice_id,payment_id,amount,reason. Optional columns may be empty. Amounts are exact decimal strings; dates are ISO UTC. Limit: 5,000 rows per collection, 2 MB per import and 5,000 candidate links across the report. Exceeding a limit rejects the operation; narrow address/date filters or split imports.
Observe public transfers
Optional read-only mainnet receipts. Only the hashes below go to the selected RPC. Transfer data never supplies an invoice reference.
8 second timeout per request; at most one transient retry. Re-reading replaces the same observed event, preserving its allocation. ERC20 mirrors add no principal.
RPC evidence and separate gas fees (0)
No live RPC reads yet.
Review the ledger
“Paid” means the full amount is allocated in this local ledger. Review the source and reason. A candidate never changes paid status.
| Invoice | Expected USDC | Allocated | Remaining / extra | Status | Allocation evidence |
|---|
Payments & unresolved candidates
| Payment / source | Principal USDC | Unallocated | Resolution | Candidates / warnings | Source evidence |
|---|
Make an explicit allocation
Split one principal across invoices. Total allocations cannot exceed it. A reason records your commercial evidence; an allocation may override invoice constraints. Saving updates the selected pair.
Use Allocations JSON for lossless re-import. CSV exports are for spreadsheet review: formula-leading IDs/reasons gain an apostrophe and may no longer match the original IDs. The importer preserves that apostrophe.
Full reproducible report
JSON export contains inputs, allocations, provenance and raw RPC observations. Keep it private if your own invoice metadata is sensitive.