qonto

qonto

qonto.

Qonto business banking, read-only: balances, transactions, receipts,

add to otoauth : —prefix : qonto_*

setup & usage

⚠ qonto api key

an owner or admin in Qonto opens Settings → Integrations and partnerships → API key. The page shows the login (like acme-1234 — not an email) and lets you generate a secret key. Paste both into oto joined by a colon: login:secret-key.

  • byo-only: no shared oto key — this is your bank account, each organization sets its own
  • read-only: an API key reaches no payment route, and the connector never writes into Qonto
  • the "test connection" button reads the organization and its accounts: no side effect
  • ▸ balances, transactions, invoices
  • "what's on the bank account" → qonto() (op accounts: every account with balance and authorized_balance)
  • "October's money in, with VAT" → qonto(op="transactions", side="credit", date_from="2026-10-01", date_to="2026-10-31T23:59:59Z", includes=["vat_details"], all_pages=true)
  • "card spend without a receipt" → qonto(op="transactions", operation_type=["card"], with_attachments=false)
  • "the receipt of this transaction" → qonto(op="attachments", id="<transaction id>") — the url lasts 30 minutes
  • "supplier invoices to review" → qonto(op="supplier_invoices", status=["to_review"])
  • "unpaid client invoices" → qonto(op="client_invoices", status=["unpaid"])
  • "this year's statements" → qonto(op="statements", date_from="01-2026", date_to="12-2026")
  • · accounts, dates, what is not served
  • transactions are read per bank account: without bank_account_id or iban, the main account is read
  • date_from/date_to apply to settled_at for transactions — ⚠️ a pending transaction has no settled_at and is left out; use date_field="emitted_at" to include it
  • amounts are in euros (amount) on transactions and decimal strings (total_amount.value) on invoices
  • not served: cards, cash-flow categories, and any payment or write (transfers, beneficiaries, invoices) — Qonto opens them only to an OAuth connection, never to an API key
  • ⚙ multiple comptes

    this connector accepts multiple comptes: each stored credential becomes a named account (one name per compte), at your level, your team's or your org's.

  • the first one doesn't need a name; from the second on, each one carries its own (the first then takes the name "principal", renamable)
  • without specification, the agent takes the only stored compte, otherwise the one marked as default; otherwise the call is refused, naming the available comptes — never a random choice
  • target a compte for a call: _account="<name>" on the tool; list them: oto_identity(op='list', connector='qonto') (scope='org' or scope='group' for the org's or team's)
  • set the default: oto_identity(op='set', connector='qonto', identity_id='<name>'); rename: op='rename' with new_name
  • ⚠️ no tool walks through the comptes on its own: a total across several comptes is obtained by calling each one (_account) and adding up
  • outils

    chargement…

    usage

    claude code — install the oto plugin — claude plugin marketplace add otomata-tech/oto-plugin — mcp + skill configured.
    claude.ai — add mcp.oto.cx/mcp as a custom connector (guide)
    cli — pipx install oto-cli then oto qonto …