
A voice agent verifies every bank-detail change on the vendor's number of record, asks what only the real vendor knows, and holds the payment until it checks out.
A real Kovrell verification call. Vendor answers spoken by a scripted test caller.
Checks on this call
Released to Chase ending 8841.
A real verification run, Sep 24, 2026
00:00
Request held
00:00
Number verified
00:00
Vendor called
01:20
Challenge passed
01:39
Payment released
01:39
Evidence sealed
The call your team skips
94% of companies say they call the vendor back on a number from official records. Only 63% say that control works well. Kovrell makes the call mandatory, runs it the same way every time, and records it. AFP 2026, PDF p. 15
An email asks to move $184,200.00 to a new bank. Kovrell holds the payment, ignores the callback number in the email, and checks that the number of record is old and unchanged before it dials.

Northwind Steel
Bank change by email. Contact of record Jide Okafor.
$184,200.00
HELDOn file
First Citizens Bank 2209
Requested
Chase 8841

Calling Jide Okafor +1 512 555 0142
VERIFIEDThree questions from the ledger, one attempt each. The agent never says the answers and never says whether one was right. Fixed rules release the payment to Chase ending 8841.
The evidence
The recording, the transcript, every tool call, and the expected versus heard answers, sealed with sha256. Download this run and check the hash yourself.
d17939c156d5...ba11ffcfTranscript
00:09 Agent
Hi, this is the automated payments assistant from Acme Manufacturing accounts payable. This call is recorded. Is this Jide Okafor at Northwind Steel?
00:17 Vendor
Yes, this is Jide Okafor at Northwind Steel.
00:28 Agent
Thanks. This is a quick routine check to make sure your payments go to the right place. We got a request to change the bank account we pay Northwind Steel. Did your team ask for that change?
00:34 Vendor
Yes, we did. We moved our operating account to Chase last month.
00:46 Agent
Great. I just have three quick questions from our records. What was the total amount on invoice INV-4471?
00:53 Vendor
That one was $96,325.
00:59 Agent
What was the total amount on invoice INV-4502?
01:06 Vendor
$127,400.
01:13 Agent
On what date did you receive our payment for invoice INV-4502?
01:19 Vendor
We received it on September 12th.
01:27 Agent
Last one. The request asks us to pay Chase, account ending 8 8 4 1. Is that right?
01:30 Vendor
Yes, that's correct.
01:39 Agent
That's everything. Thanks for your help. Our accounts payable team will follow up by email. Have a good day.
Expected vs heard
INV-4471 total
$96,325.00 / 96,325.00
INV-4502 total
$127,400.00 / 127,400.00
INV-4502 payment date
2026-09-12 / September 12th
Verdict
Released to Chase ending 8841.
Identity, 3 of 3 ledger checks, and readback confirmed.
Built for audit
A callback control, run the same way on every change.
Number of record only
Kovrell calls the contact in your vendor master. A callback number inside the request is logged and never used.
Provenance lock
If the number of record changed in the last 30 days, the call is locked and a person has to verify.
Ledger challenge
Three questions only the real vendor can answer, drawn at random from recent paid invoices on every call. The agent never hears the answers.
One attempt per question
The first answer counts. Retries are logged and ignored, so a caller cannot guess their way through.
Fixed verdict rules
The model collects answers. Code decides: pass releases, fail blocks, anything else keeps the payment held.
Sealed evidence
Recording, transcript, every tool call, and expected versus heard answers, sealed with sha256.
Integration
Your ERP keeps the vendor master and the payment schedule. Kovrell holds the payment, makes the call, and tells your ERP what to do.
How to integrate01
Sync vendors and paid invoices
The contact of record, the bank on file, and recent paid invoices, from your vendor master.
POST /api/vendors
02
Hold the payment on a bank change
Send each change request. The vendor's next payment is held until a call decides it.
POST /api/requests
03
Get a signed verdict
When the call ends, your webhook gets the verdict and payment status, signed with HMAC-SHA256.
verification.completed
04
File the evidence
Every run has a sealed JSON record and a PDF report for the audit file.
GET /api/runs/:id/pdf
Built on
Every verification call runs live through the AssemblyAI Voice Agent API. This showcase uses a scripted test vendor and sample ledger data.
74%
were hit by business email compromise, mostly vendor or executive impersonation
AFP 2026, PDF p. 62.0s
from the vendor finishing a sentence to the agent speaking
Measured on this run
