Predictika · spend action validator
Ridgeline Fabrication lets AI agents work its procure-to-pay queue: creating suppliers, changing bank details, raising POs, approving invoices, releasing payments. Before any of them acts, the call goes to Predictika's Spend Action Validator. It checks the action against the supplier's record, the bank account's history, the contract, the approval chain, and the person each agent is acting for. Then it returns one verdict: allow, needs approval, or block.
This validator models one proposed action against the records behind it, not just the scenarios shown below.
Any spend action that touches these rules is in scope — not only the scenarios pictured here. Not covered: other kinds of action, more than one action per request, and real systems; the company, suppliers, accounts and people are fictional and no real vendor configuration or customer data is used. The validator returns a verdict and findings, not a price or a line-item table.
9 scenarios in 3 groups · each group runs from the agent’s first attempt to the outcome · click one to switch
Illustrative agent statement. The validator receives the structured request below.
Proposing agent: AI agent (scripted)
Before sending, the agent must call Recorded run
What this means
Our assessment of what an AI agent working alone does with the same cases, without a check on the records behind the action. It is a judgment about reliability from public descriptions of how agents and procure-to-pay controls work, not a claim about any particular product.
| What the validator caught | An AI agent on its own | Predictika |
|---|---|---|
| Bank details from an email or attachment, and an account moved to another country | Error-prone An agent that inherits its user's permissions has the right to update the supplier record and no built-in reason to doubt a PDF: it reads a document and acts on it. An instruction found inside an email or attachment is a request from an unknown sender, not authority from the supplier. | Where the instruction came from is an input. Text in an attachment cannot authorize a bank change, and an account in another country needs a treasury review whatever the source. |
| Payment right after a bank change | Error-prone Every box the invoice carries is ticked: approved, matched, account ownership checked. Whether the account changed four days ago, and whether anyone confirmed it by phone, is a relationship between two dates that the invoice does not show. | The payment date and the bank-change date are both inputs, and the hold period is checked on every call. |
| Paying an invoice that its own principal received | Error-prone A payment under the agent's approval limit, on an approved invoice, to a long-standing supplier. Nothing in the action itself is out of range; the finding is about the person the agent acts for. | The check resolves each agent back to the person it acts for and compares that person with who raised the PO, received the goods and approved the invoice. |
| A ghost vendor built in several ordinary steps | Error-prone Each step is within a limit on its own: a supplier created by someone allowed to create suppliers, a PO under the agent's limit, a payment by someone allowed to pay. The same person appears at every step, and the agent does not hold that picture. | All findings come back together, so a reviewer sees the whole picture and one fix cannot hide another. |
Every rule is checked on every call, in any order the choices arrive; one problem never hides another. Blocking findings stop the request; approval findings need a person to sign off; everything else is computed.
| 1 | The bank details for Brightline Packaging Inc changed 4 day(s) ago and no callback has confirmed them. Payments wait 10 days after a bank change unless a callback confirms it (third-party account-ownership check on the account: passed). |
| 2 | The bank details in this request came from attachment content, not from the supplier portal or a callback. Instructions found in emails or attachments cannot authorize a bank change (third-party account-ownership check on the new account: passed). |
| 3 | The bank details in this request came from email content, not from the supplier portal or a callback. Instructions found in emails or attachments cannot authorize a bank change (third-party account-ownership check on the new account: passed). |
| 4 | The bank details for Northgate Precision Parts LLC changed 0 day(s) ago and no callback has confirmed them. Payments wait 10 days after a bank change unless a callback confirms it (third-party account-ownership check on the account: passed). |
| 5 | Northgate Precision Parts LLC was created 0 day(s) ago. Payments over $10,000 wait until a supplier record is 14 days old. |
| 6 | Procurement agent (for Dana Kline) acts for KLINE, who created this supplier record or last changed its bank details and is now releasing its payment. |
| 7 | Procurement agent (for Dana Kline) acts for KLINE, who also raised the PO, received the goods or approved the invoice being paid. |
| 8 | Account ACCT_EMP_OKAFOR is registered to an employee (payroll match). A supplier cannot be paid into an employee account. |
| 9 | Account ACCT_ALPINE is already linked to supplier SUP_ALPINE. Two supplier records cannot share a bank account. |
| 10 | The account on file for Orchid Facility Services is registered to an employee (payroll match). Do not pay into it. |
| 11 | AP agent (for Marcus Okafor) acts for OKAFOR, who already raised the PO or received the goods on this invoice. The same principal cannot approve it. |
| 12 | AP agent (for Marcus Okafor) acts for OKAFOR, who also raised the PO, received the goods or approved the invoice being paid. |
| 13 | Procurement agent (for Dana Kline) is an agent. Agents may never change approval limits or approval chains. |
| 14 | Principal KLINE cannot change their own approval limit. |
| 15 | External finance agent via MCP (for Priya Patel) is an agent. Agents may never change approval limits or approval chains. |
| 16 | The new account is in CY but Fjordline Marine Coatings is based in US. Treasury review is required before the change takes effect. |
| 17 | This PO takes Kestrel tooling agreement to $522,000.0 against its $500,000.0 not-to-exceed limit. A contract amendment is required. |
| 18 | Trailing 30-day spend with Kestrel Tooling Corp would reach $120,000.0, above the $100,000 competitive-bid threshold. A bid waiver is required. |
| 19 | This PO takes Kestrel tooling agreement to $562,000.0 against its $500,000.0 not-to-exceed limit, more than 10 percent over. |
| 20 | Contract Kestrel tooling agreement 2025 expired on September 17, 2026. POs cannot be raised against it. |
| 21 | Trailing 30-day spend with Harborview Industrial Supply would reach $109,000.0, above the $100,000 competitive-bid threshold. A bid waiver is required. |
The recorded result of the validator for each scenario on this page: the request the AI agent sent, the verdict, and every finding, in the order they appear above.
The agent's request. Please release payment of INV-0001, $48,500, to Northgate Precision Parts LLC on October 5.
Verdict: Blocked.
The agent's request. Please release payment of INV-0001, $48,500, to Northgate Precision Parts LLC on October 5.
Verdict: Blocked.
The agent's request. Please release payment of INV-0001, $48,500, to Northgate Precision Parts LLC on October 15.
Verdict: Blocked.
The agent's request. Please release payment of INV-0001, $48,500, to Northgate Precision Parts LLC on October 19.
Verdict: Allowed.
The agent's request. Please update the bank details for Fjordline Marine Coatings to the new account in Cyprus, taken from the remittance text in an invoice PDF attachment.
Verdict: Blocked.
The agent's request. Please update the bank details for Fjordline Marine Coatings to the new account in Cyprus, taken from a callback to the supplier.
Verdict: Needs approval.
The agent's request. Please update the bank details for Fjordline Marine Coatings to the new account in Cyprus, taken from a callback to the supplier.
Verdict: Needs approval.
The agent's request. Please release payment of INV-3345, $22,400, to Lumen Electrical Distributors on October 5.
Verdict: Blocked.
The agent's request. Please release payment of INV-3345, $22,400, to Lumen Electrical Distributors on October 5.
Verdict: Allowed.
The text of the narrated walkthrough, step by step.