Grounded queries over your ledger, banks and wallets.

Questions resolve against the same records finance reviews. Every response carries its sources, period and a data-quality status.

Request API accessWhat it reads
What's our runway?
{
  "query": "What's our runway?",
  "rows": [
    {
      "key": "Banks",
      "value": "2791221.00"
    },
    {
      "key": "Stablecoins",
      "value": "1491860.00"
    },
    {
      "key": "Digital assets",
      "value": "529369.00"
    }
  ],
  "sources": [
    "ledger",
    "3_banks",
    "2_wallets"
  ],
  "quality": "complete"
}
Banks2,791,221
Stablecoins1,491,860
Digital assets529,369
Ledger3 banks2 wallets
Complete

Seven sources, one query layer.

Every answer names the sources and period it used. If a source is behind, the answer says so.

Native ledger
Double-entry journals per entity, the base of every figure.all entities
Banks
Balances and transactions from connected bank accounts.3 banks · 08:40
Wallets
Company stablecoin and digital-asset wallets.2 wallets · live
Cards and agents
Card spend and payment-agent activity, with the employee who started it.4 agents
ERP
Your official ledger, synced both ways.sync · 07:55
Billing
Invoices and receivables.1 source behind
Policies
Your TOFA and spending rules, so answers reflect what's allowed.v12

Each person sees answers within their own access.

CEOAll entities and every source.
“What's our runway if hiring doubles?”“Which entity is growing fastest?”
Finance teamEntities and accounts they manage.
“What's still unreconciled for September?”“Show intercompany balances.”
Department headsTheir own budget, agents and spend.
“How much of our Q4 budget is left?”“Which tools could we cancel?”

Invariants for every answer.

missing != 0Missing data is never zero.Incomplete sources are labelled, and the answer says what depends on them.
cite: requiredEvery figure has a source.Answers name the sources and period they used, so anyone can check them.
scope: userIt respects access.People only get answers about entities and data they're allowed to see.
execute: tofaIt doesn't move money.Any action it suggests becomes a request under your approval rule.

Point it at one entity and start querying.

Connect a bank and your ledger. Queries work as soon as the first sync lands.

Request API access