Platform
One confirmation season, screen by screen.
Everything below is the real product — real screens, real button labels, in the order a season presents them. Four people touch a confirmation: the audit team, the client's CFO, the third-party responder, and the reviewing partner. This page follows the season through each of them.
Chapter 1 · the audit team
The audit team's season
From client ledger to evidence pack without leaving the platform. Ten steps, most of them minutes.
Step 1: Set up the client and the engagement
Create the audited entity under Clients — name, registration number (IČO or KvK), country — and invite the client's CFO as a signer from the same card. Then create the engagement: client × fiscal period, currency, materiality and performance materiality. Performance materiality is not decoration — it becomes the default ISA 530 sampling interval later.
Step 2: Import the client ledger — any Czech, Dutch or English export
Upload CSV or XLSX straight from Pohoda, Money S3, Helios, Exact Online, Twinfield, AFAS or SAP-style exports. The two-step import previews the file, auto-suggests a column mapping from Czech, Dutch and English headers, and handles "1 234,56", "1.234,56", "(500)", dd-mm-yyyy dates and mixed code pages — Windows-1250 and Windows-1252 are told apart by scoring, not guessed. Rows the parser cannot read are rejected with the reason and the raw cell, never silently skipped. Re-importing never destroys evidence: prior rows are superseded, not deleted, and the supersession is event-logged.
Import kinds: AR balances · AP balances · Bank balances · Open items · Subsequent receipts.
Step 3: Generate an ISA 530 sample the partner can defend
One click runs Monetary Unit Sampling over positive balances — systematic PPS with the interval defaulting to performance materiality, top stratum always selected — plus explainable risk rules: round amounts, duplicate counterparty-amount pairs, off-hours postings. Every selected item stores a plain-language reason for the working paper, and the random seed is stored, so the exact sample is re-derivable at review. Curate items, then a partner approves — which locks the roster.


Step 4: Build the batch and assign responders from a verified directory
Create a batch from the approved sample — one confirmation per included item, carrying the ledger balance — or add confirmations by hand for any of the five kinds the platform sends: bank, receivables, payables, legal, or a general balance — with the batch's own as-of date, deadline, reminder policy and letter language: Czech, English or Dutch, end to end. A legal request is an ISA 501 inquiry to the company's lawyers — litigation, claims and assessments, unbilled fees — and it carries no balance anywhere: the letter asks its questions, the row holds no figure, and the portal offers none to confirm. Every responder contact carries provenance (auditor-entered, client-provided, published channel, prior response, AI-suggested) and a verification tier: unverified → MX-checked (an automated pre-check on the e-mail domain, explicitly not the ISA 505 control) → auditor-verified → network-verified. Dispatch is refused below auditor-verified unless an override reason is recorded, and it lands on the audit trail — the ISA 505 / AS 2310 control, applied by the platform rather than written in a policy PDF. A curated directory — Czech banks and insurers, and Dutch banks — is shared with every firm; each entry's legal name and registration number is verified against the public register (ARES, DNB), with the institution's published confirmation channel cited where one was found, and role addresses require a cited published source. AI can suggest published channels, but suggestions are never used automatically — an auditor must verify first.
Step 5: Send the client authorization for signature
From the batch, Send for signature: the platform generates the information-release letter listing every counterparty and e-mails the client's signer a secure signing link — name, e-mail, title, one click. Until it is signed, not one confirmation in the batch can be dispatched.
Step 6: Dispatch — verified, attributable, never undoable
Dispatch authorized confirmations e-mails each assigned responder a request letter with a QR code, the secure portal link, and a unique reply-to intake address — with the signed authorization attached. Contacts on paper-only workflows get a print-ready letter that still carries the QR, so even a posted letter can be answered digitally. Every letter and every e-mail is the firm's own business document, not a vendor's: it carries the firm's registered name, seat and registration number — and its register entry and audit licence where the firm has recorded them — labelled the way the firm's own jurisdiction labels them, and the request comes from the firm. Dispatch is blocked until the seat, the registration number and a phone and mailbox a recipient can verify the request with are all on record, because every letter must name the auditor it comes from. The result reports exactly what was sent and what was skipped, and why.


Step 7: Track the season from the status funnel
Batch view shows response rate, overdue count and median days outstanding over a colour-coded funnel of the 16 tracked states this batch is actually in. Bounces surface automatically on the affected row. The reminder policy is set per batch by the audit team — which days after dispatch a reminder goes out, when a silent counterparty is marked unresponsive, and whether automated chasing runs at all. The defaults are deliberately patient, and responders who work through their own portal or on paper are never chased by automated e-mail. A counterparty is certified unresponsive only after the chase has run, and never before the date the letter itself gave it to reply — the verdict cannot precede the request.
Step 8: Review what the AI couldn't prove
Responses run through OCR, extraction constrained to a fixed set of fields, and a verbatim verifier: a number "found" must literally appear in the document text, and validators check currency, as-of date and line-item arithmetic. Only a full validator pass with an exact ledger match, from a sender the request was actually addressed to, auto-accepts. Everything else lands here — source document beside the extracted-versus-ledger comparison — for Accept as extracted, Accept with corrections or Reject. Each item is locked to one reviewer, so two reviewers cannot double-process it. There is no synthetic confidence percentage anywhere: the only confidence shown is the OCR engine's own per-field measurement, labeled as such, and no decision keys on it.


Step 9: Reconcile, explain variances, close non-responders
Reconciliation is deterministic first — exact, within-tolerance, currency-mismatch — with semantic name matching (legal suffixes stripped, similarity scored) when the responder states a different name. For variances, the platform scans open items and subsequent receipts for classic in-transit and timing candidates and drafts an explanation the auditor must rewrite or confirm — labeled AI draft — not audit evidence until you confirm or rewrite it. Non-responders flow to alternative procedures with auto-assembled subsequent-receipts evidence and a coverage percentage — and a conclusion the platform refuses to write at all.


Step 10: Working papers and the evidence pack
Per-confirmation working papers (PDF and XLSX) are regenerated from the event log on every fetch — a stale copy is never served. Batch lead schedules summarize per-books, confirmed, difference and status per row. At close-out, Export evidence pack (ZIP) exports one ZIP: manifest, a fresh verification verdict for the audit trail, a provenance log for every extracted figure, signed authorizations and certificates, dispatch letters, response documents, and all working papers — with the engagement's materiality, performance materiality and each batch's ISA 530 sampling basis stated at the top of it, so a regulator reads the basis of the selection before the selection — and it declares anything it could not include rather than asserting completeness. Designed to ISA 505 / AS 2310 documentation requirements.


Chapter 2 · the client’s CFO
The client's ten minutes
The authorization is the legal hinge of the whole season. Confirmatica makes it a magic link, not a vendor envelope.
Step 1: The invitation
The CFO receives a unique signing link by e-mail — no account, no download. The link is single-purpose and expires after 30 days.
Step 2: Read the actual document
The consent letter renders inline as a PDF — every counterparty listed — with its SHA-256 digest printed on the page. The signer's own language leads, with English printed beside it wherever the two differ, because a secrecy release gets filed and forwarded to people who do not read it; an English letter is simply English. What is signed is exactly what the auditor sends, and both sides can prove it.


Step 3: Proving the signer is the signer
Send verification code e-mails a 6-digit code to the signer — proof that the person signing holds the mailbox the auditor wrote to, valid for ten minutes. Every step is recorded as evidence of the signature: sent, viewed, code verified, signed, each with the time it happened.
Step 4: Sign — or decline with a reason
Sign the authorization adds a signature certificate page to the signed document and moves every awaiting confirmation to authorized; the audit team is notified. Decline to sign is first-class: it requires a reason, returns the batch to draft, and notifies the audit team — nothing proceeds on silence. The evidence model follows eIDAS advanced-electronic-signature characteristics — deliberately not a qualified signature, and with no per-envelope vendor cost.
Chapter 3 · the third-party responder
The responder's two minutes
Response rate is won by removing friction. A responder never creates an account, never installs anything, and never has to be told twice how to answer.
Step 1: One letter, two reply channels
The request letter arrives by e-mail — or on paper — with a reference number, a QR code, a secure portal link, and a unique reply-to address. Answer through the portal, or reply to the e-mail; the paper letter's QR code opens that same portal. Both channels end in the same evidence store. Banks that run their own confirmation portals get a workflow type that respects their process and never chases them with automated reminders. A reply that reaches the firm another way — by post, by fax, in the firm's own mailbox, or downloaded from a bank's own confirmation portal — is filed by the auditor onto the confirmation with a statement of which route it came by, the day the firm received it and who received it. That statement is the document's provenance, and it is printed wherever a reviewer weighs the document.
Step 2: The portal: confirm, upload, type, or decline
Four tiles: Confirm as stated (one click, name recorded), Upload our statement (PDF, scans, images, text, CSV or Excel, up to 25 MB), Type the balance with discrepancy notes, or We cannot confirm — a structured refusal with a reason code, recorded as a refusal rather than as silence (ISA 505), which stops the reminders and routes the item to alternative procedures. Czech, English and Dutch, auto-detected from the request, switchable by the reader. On a legal request the two balance choices are not offered at all: the lawyer answers the inquiries in writing, or uploads a document.


Step 3: Or just reply to the e-mail
Replying to the unique intake address on the letter routes the message — attachments and all — straight to the right confirmation. If there is no usable attachment, the e-mail body itself becomes the evidence document. Mail that matches nothing is quarantined for a person to route, never silently dropped.
Step 4: What their two minutes buys the audit
A response through the portal — or an e-mail reply from the institution the request was addressed to — upgrades that contact to network-verified, the strongest provenance tier: earned rather than asserted. A reply from anywhere else is still taken as evidence, but it is recorded as a sender mismatch and routed to a human rather than quietly strengthening the contact, because ISA 505 makes a response from an unexpected source exactly the doubt an auditor must resolve. If a responder stays silent, escalating reminders follow the batch policy with the original secure link still valid.
Chapter 4 · the reviewing partner
The reviewing partner
The platform is built around the approvals only a partner can give — and it makes each one inspectable years later.
Step 1: Approvals with teeth
Four things require the partner or firm-admin role and are refused to everyone else. Approve (partner) locks the sample roster: items can no longer be included or excluded, and changing the selection means generating a new sample. Alternative procedures cannot be approved without a substantive auditor conclusion — the refusal quotes ISA 505.12 back at whoever tried: the judgment cannot be automated. Reissuing an unsigned client authorization requires a recorded reason, because it withdraws an instruction already sent to the client's statutory representative. And sign-off is gated the same way, recorded with the user who gave it and the time they did, and cannot be undone.
Step 2: Overrides on the record
Dispatching to a contact below the auditor-verified tier requires a written override reason, written to the audit trail. Editing a verified contact's e-mail resets it to unverified, so the ISA 505 control re-arms itself. Nothing in the directory is deleted: contacts and organizations retire and reactivate, and a GDPR Art. 16 rectification is recorded as one. The design rule everywhere: the machine may propose, verify and assemble — a person decides, and the decision is attributable and timestamped.
Step 3: An audit trail that can be handed to a reviewer
Every recorded change carries who did it and when, and the working paper prints that trail beside the evidence it belongs to. A peer reviewer, an inspector or a regulator reads the file rather than taking the firm's word for it, years after the season closed.
Under the platform
What holds it all up
Licensed, and it runs on the firm's own stack
Confirmatica is licensed software. A licensee deploys on their own infrastructure and is the operator and controller of their instance; Bonfleur provides the licence, customization and maintenance. The screens above are a demonstration instance running synthetic data.
Working papers designed to the standards
Selection rationale per ISA 530, verification controls per ISA 505 / AS 2310, documentation regenerated from the event log — designed to those documentation requirements, and packaged for handover in one ZIP.
How a firm comes to run it
Step 1: A demonstration
The season described on this site, run on a demonstration instance holding synthetic data. No firm's data is on it.
Step 2: A licence
A written licence agreement with Bonfleur s.r.o. The licence conversation covers the terms, source escrow, an inventory of every third-party component the software depends on, the deployment runbook and the maintenance agreement — under NDA, alongside the architecture and security documentation.
Step 3: The customizations the firm wants
Letter wording, the firm's own directory, the ledger formats its clients export, and the storage and e-mail providers of the firm's own stack — scoped and agreed with the firm before deployment, not guessed at in advance.
Step 4: Deployment on the firm's own infrastructure
The instance runs on the firm's own infrastructure, under the firm's control. The firm is the operator and controller of it; nothing it holds reaches Bonfleur.
Step 5: Support and maintenance
Bonfleur s.r.o. maintains and supports the deployed instance under the maintenance agreement — updates, fixes and the next season's changes reach the firm's own instance.
Architecture and security documentation is available under NDA.
The walkthrough runs on the platform itself
An enquiry names the firm and the season's volume; what follows is the product described above, on the screens above, on a demonstration instance running synthetic data, rather than a slide deck. A licence, the customizations the firm wants, deployment onto its own infrastructure, and support and maintenance by Bonfleur s.r.o. follow from there.