CommonSchema
Talk to us

One API. One Schema.

The same request returns a record in the same schema whether the data comes from a bank, a payment processor, a crypto exchange or a lender. Webhooks tell you when data changes or a customer revokes consent.

Talk to us
Request and webhook
# transactions for one consented account
GET /v1/transactions?account=acc_2Pq8&since=2026-07-01

# the event you receive when a customer revokes
POST https://your-app.example/webhooks
{ "type": "consent.revoked",
  "grant": "cg_8Fq2",
  "audience": "agent:budget-coach" }
commonschema · transaction
{
  "object": "transaction",
  "id": "txn_7Hq2LmR8",
  "provider": {
    "name": "Harbour Bank",
    "industry": "banking"
  },
  "source": {
    "id": "tx-55120931"
  },
  "amount": {
    "value": "-42.50",
    "currency": "USD"
  },
  "direction": "debit",
  "status": "posted",
  "bookedAt": "2026-10-12T09:14:00Z",
  "merchant": {
    "name": "Harbour Coffee Roasters",
    "category": "5814"
  },
  "consent": {
    "grant": "cg_31Kd9w",
    "scope": ["transactions:read"],
    "audience": "app:ledgerly"
  }
}
  • One request shape

    Accounts, transactions, holdings, usage and bills, whatever the source called them.

  • Webhooks on change

    New data, expiring consent and revocations arrive as events.

  • Provenance kept

    The original field names stay attached to every record.

Building on banking, payments or crypto data?

Tell us what you are building and which providers you need, and we will show you how CommonSchema fits.