Every settlement, reconciled
Track revenue, failed settlements, and payouts across every chain in a single ledger, updated as transfers confirm. Export what finance needs without asking an engineer to query a database.
Revenue, failures and payouts in one view
so finance never waits on engineering
Every feature ships behind the same endpoint.
Live reconciliation
Every transfer posts to the ledger the moment it settles onchain.
Failure insight
See exactly where and why a settlement failed, chain by chain.
Payout scheduling
Batch payouts on your schedule, with a full audit trail attached.
Numbers from production, not from slides.
Ship it this afternoon.
One endpoint, typed SDKs, and a sandbox that mirrors mainnet quotes exactly.
01
02
03
04
05
06
07
08
09
10
11
12
import { Weir } from "@weir/sdk"; const weir = new Weir({ apiKey: process.env.WEIR_API_KEY! }); const entries = await weir.ledger.list({ status: "failed", chain: "cinder", since: "2026-09-01", }); console.log(entries.length, "failed settlements since Sep 1");
Code
Ledger
Built for every seat.
Users
Not user-facing — the Ledger is a back-office view
Users still get a receipt on every settlement
Nothing changes in how they pay
Refunds trace back to the original settlement
Businesses
Revenue, failures, and payouts in one dashboard
Export CSV or query the API directly
Filter by product, chain, or app
Alerts when a failure rate moves
Developers
Read-only API, no write access needed
Webhooks on new ledger entries
Pagination and filters on every field
SDKs for TypeScript, Python, and Go
The other rails in the stack.
Questions, answered.
Most teams settle a first sandbox payment the same afternoon. Sandbox quotes match mainnet, so going live is a key swap, not a rewrite.