No heuristic, no self-report, nothing an anchor can edit. An anchor can keep a status page green indefinitely โ it cannot fake a month of on-chain silence.
| Domain | Account | In | Out | Returns | Last settlement | State |
|---|
Under SEP-24, one leg of every deposit and withdrawal is written to a public ledger. That record already exists, for every anchor, going back years โ and nobody needs to give permission to read it.
Resolve every anchor's home domain to the on-chain accounts it declares under SEP-1. A domain that won't resolve is reported, never quietly skipped.
Page the full payment history for each account, with resumable cursors. Interrupted work resumes โ the failure mode is stale, never wrong.
Liveness, volume, returns and concentration, each with the transaction hashes behind it. Anyone can recompute every figure from the same ledger.
Nobody sending money home comparison-shops on a dashboard. So the product isn't a dashboard โ it's a function your wallet calls before it routes, and an MCP surface a payment agent can query directly.
Join the pilot listThe SDK is not published yet. This is the interface we are building to โ tell us if it is the wrong shape.
// planned interface - not yet on npm // rank anchors by expected landed value import { pickAnchor } from '@landfall/sdk' const ranked = await pickAnchor({ from: 'USDC', to: 'NGN', amount: 100 }) // [{ domain: 'mykobo.co', // liveness: 'live', // lastSettlement: '1.3h', // confidence: 0.94 }, ...]
None of this is live yet โ there is no API to bill for and no way to sign up. This is the intended shape, published early so wallets can tell us if it is wrong. Public dashboards and the raw dataset stay open forever โ a reputation record nobody can read is worthless. Paid tiers cover teams querying it in production.
@landfall/sdk with pickAnchor()A return is the honest failure mode. When an anchor can't complete the off-chain leg of a withdrawal, sending the asset back is what a good actor does โ and that return is visible on the ledger.
An anchor that accepts value, fails to settle, and simply keeps it produces no return event at all. It scores a clean 0.00% โ identical to an anchor that never fails.
So 0.13% isn't reassurance. It's the absence of one specific kind of evidence, and we'd rather say so than let a number flatter us. Closing that gap needs the fiat leg, which means signed settlement attestations. That's what we're building next.
Public Stellar ledger records, via Horizon. Anchor accounts are resolved from each domain's SEP-1 declaration. No anchor supplies us with anything, and none can opt out.
Every number ships with its transaction hashes, so a disagreement is settled by checking the ledger rather than by argument. We've already published two defects we found in our own tool during verification, including what the numbers were before and after.
No, and we're careful never to imply it. Dark means the account has processed no on-chain settlement in over 30 days. That's a fact about the ledger. Why an anchor is quiet is not something we claim to know.
Get in touch. Bring the account and the scan date; we'll check it against the ledger together. If our method is at fault we fix it publicly and say so. Scores are not for sale, in either direction.
MIT, entirely. Indexer, metrics, methodology and this site. A reputation system that can't be audited has no claim on anyone's trust.
Building a wallet and want anchor quality in your routing? Running an anchor and think a figure is wrong? Researching corridors? All of that lands in the same inbox and gets a real reply.
Lagos, Nigeria
In the corridor we measure.
There are no accounts to sign in to. Accounts arrive with the API โ leave an address and we will tell you when it is real.
Prefer to talk? Contact us