← The essay The agent was ready. The bank wasn't. Open in a tab ↗
Reports · Real Stories

The agent
was ready.
The bank
wasn’t.

Four kindergarten invoices. An agent that checks every detail. A bank that still needs one human tap.

Follow the payment
01 / THE PERMISSION BOUNDARYONE BATCH WAITING
The payment is prepared. Permission is still missing. Four invoice sheets converge at a large violet gateway. A verified payment batch waits at the gateway for the account holder’s signature. MEALS / 011 200 Kč TUITION / 013 600 Kč MEALS / 021 200 Kč TUITION / 023 600 Kč VERIFIED BATCH9 600 Kč AWAITING YOUR SIGNATURE The agent can prepare it.The bank needs you here. CAPABILITYAUTHORITY
Illustrative amounts. Real permission gap.Try breaking an invoice
Real Stories Interactive edition · 6 min read
01 THE EVERYDAY EXPERIMENT

It starts with
four ordinary invoices.

THE INBOX

Two children.
Meals and tuition.
Every month.

Jan’s kindergarten sends four PDFs. His agent reads them, checks the payment details and prepares a batch. Jan signs once in his bank.

Follow the same four documents as the work changes hands.

THE AGENT

Familiar doesn’t
mean trustworthy.

The agent compares QR data with printed details, checks the known payee and looks for duplicates in its ledger and 90 days of bank movements.

If a required check cannot be completed, the payment stops.

THE BANK

Prepared.
Submitted.
Still waiting.

Fio’s customer API imports payment orders as a batch awaiting authorization. Submission and execution are different events. [2]

Jan opens Internetbanking and signs. The bank executes the authorized payments.

THE MISSING PERMISSION

“Only these bills.
Within these limits.
Until I say stop.”

Those are rules Jan’s system can enforce. The proposed next step is a bank-held mandate that carries those boundaries too.

That is the distinction this story makes visible: doing the work, and having authority to finish it.

Now test the agent
ONE PAYMENT, STEP BY STEP01 / 04
01 / MEALS1 200 Kč✓
02 / TUITION3 600 Kč✓
03 / MEALS1 200 Kč✓
04 / TUITION3 600 Kč✓
DETAILS AGREE4/4KNOWN PAYEE · NO DUPLICATES
PAYMENT BATCH9 600 KčAwaiting signature
Your authorization
A PROPOSED MANDATEPermission,
with boundaries.
PayeeKindergarten only
AmountWithin agreed limits
DurationExpires. Can be revoked.
4 documents arrive

Amounts are fictional examples. The workflow comes from Jan’s report.

02 PUT THE ARGUMENT TO THE TEST

Would this invoice
make it to the bank?

Change one detail. Watch where the payment stops.

CHOOSE A SCENARIO
Kindergarten
Example invoice · September
01
TUITION3 600 Kč
Payment reference
260901
Recipient account
•••• 2048 / 2010
Due date
15 September 2026
QR READOUT3 600 KčReference 260901
Matches text
EXAMPLE DATA

Fictional invoice and masked account. The QR graphic is illustrative.

THE AGENT’S CHECKS
  1. ✓
    Read it twice

    QR amount and reference agree with the printed text.

  2. ✓
    Recognize the payee

    Account, bank code and payment classification match.

  3. ✓
    Look for a previous payment

    Check the ledger and 90 days of bank movements.

  4. ✓
    Record intent. Submit once.

    A missing response must never trigger an automatic retry.

QUEUED FOR SIGNATURE

The checks pass.
The bank still waits.

In the reported Fio workflow, a clean batch is submitted for Jan’s authorization. Queued does not mean paid.

Interactive reconstruction of the reported checks. It does not read documents or connect to a bank.

Read the underlying report ↗
THE REAL BOTTLENECK
“I sign because the bank offers
no better consent object yet.”
03 EXPLORE WHAT COULD COME NEXT

Give the permission
a shape.

A proposed bank-held mandate.
Try the boundaries yourself.

DESIGN PROPOSAL · NOT A CURRENT FIO FEATURE

Let this agent pay
the kindergarten.

1 000 Kč6 000 Kč
4 000 Kč14 000 Kč
YOUR PROPOSED PERMISSIONACTIVE
WITHIN THE MANDATE

These bills could
pass without a tap.

All four sample invoices fit the limits. The payee is known and permission is active.

Largest invoice3 600 KčWithin limit
Batch total9 600 KčWithin limit

Assumes all document, payee and duplicate checks have passed. The amounts and permission controls here are illustrative; a real bank would need to define and enforce the mandate.

Revocation should stop new payments immediately. Expiry should mean expiry. A changed account should fall outside the permission, even when the invoice looks familiar.

04 ACCESS IS A SEPARATE QUESTION

An API for whom?

A bank can have a payment API without offering it to someone automating their own personal account.

These three examples show different entry points. None of them should be confused with the proposed mandate above.

Selected examples, not a complete market survey.
Account holder
Own API token
Fio

A batch waiting
for your signature.

Fio supports transaction downloads and payment-batch imports. Imported payments wait for authorization in Internetbanking. Its customer API is distinct from its developer interface for licensed providers.

This is the route used in Jan’s reported workflow.

THE QUESTION TO TAKE WITH YOU

What permission would
you give your agent?

A known payee. A ceiling on each bill and batch. An expiry date. A way to stop. The controls above make the question concrete enough to discuss, and concrete enough to build.

Sources, method & what is simulated

This is an unpublished design exploration of a Hello Purple article. It adapts the reported workflow into a deterministic browser simulation. The documents, amounts, references and account fragments are fictional. No files are read and no payments are sent.

The check sequence is simplified for explanation. It demonstrates QR/text agreement, known-payee matching, duplicate refusal and uncertain-submission handling; it is not a complete payment implementation. The permission builder is a proposal, not a claim that Fio currently offers these controls.

  1. Jan Cervinka, “The agent was ready. The bank wasn’t.”Primary reporting and the “For agents” appendix. Includes the checks, ledger, 90-day history and no automatic retry rule.
  2. Fio: Internetbanking APIPayment imports wait for authorization as one batch; transaction downloads and customer API access.
  3. QR Platba: SPAYD specificationStructured QR payment fields. The graphic in this prototype is decorative, not a payment QR code.
  4. bunq: Getting startedPersonal and business accounts; personal API keys grant full access to the owner’s account.
  5. Revolut: Business APIBusiness-account automation, including READ, WRITE and PAY scopes.
  6. Anthropic: Scenarios for our Economic FutureForm reference: a visual argument that progresses from guided explanation to reader-controlled exploration.

Public sources checked 10 September 2026. Banking examples illustrate access models and are not product recommendations. Hello Purple is published by Purple Technology; Fio and bunq are unrelated examples. This is an engineering and editorial concept, not financial advice.

By email

Get the next piece the day it is published.

You are on the list. One email when a new report lands.

One email when a new report lands, nothing else. By subscribing you agree to our privacy policy.