›

Support Quality

8 Steps for an AI Agent That Resolves Frozen Bank Accounts After Identity Checks (2026)

8 Steps for an AI Agent That Resolves Frozen Bank Accounts After Identity Checks (2026)

How an AI agent for frozen bank accounts verifies identity, checks the hold, lifts eligible freezes by API, escalates fraud and AML holds and logs every step.

·

Updated

An AI agent can resolve a frozen or restricted bank account ticket only when the hold is one your policy already lets it lift, such as a customer-set security lock, a failed-login lockout or a fraud alert the customer confirms as genuine. It should verify identity through your own systems, read the hold reason by API, release the hold with a short-lived token your systems issue, and pass every fraud, AML or legal hold to a trained person with the full history. Every step should land in an audit trail your compliance team can replay.

This guide sets out those steps in order, with the regulator pages behind each one, and the tools that publish support for this kind of work.

Key takeaways

  • The AI collects, your systems decide. The agent should never see the correct answers to identity questions, and should not be able to release a hold without a token your verification system issues after a successful check.

  • Allow-list the hold reasons. Only security and lockout holds belong in automation. Fraud investigations, AML reviews and legal orders go to people.

  • Never explain an AML hold. FinCEN regulations generally prohibit a bank from disclosing a SAR or any information that would reveal the existence of a SAR, so the agent needs a neutral script.

  • Use the least restrictive measure. The CFPB found Wells Fargo unfairly froze consumer accounts in suspected fraud when lesser restraints were available, part of an order with more than $2 billion in redress and a $1.7 billion penalty.

  • Log the decision, not the secrets. Record the reason code, policy, API call and outcome, and hide verification answers from transcripts.

Which tools offer an AI agent for frozen bank accounts?

Lorikeet runs sensitive steps such as payments and identity checks as code the agent can invoke but never alter, and its financial services page lists verifying identity among the actions it takes in core systems, with escalation and full history when a case needs a specialist. Alternatives worth comparing:

How we chose and checked these

The steps follow the order a frozen-account ticket actually moves in: classify, verify, check, act, escalate, record. Each regulatory point links to the regulator's own page (CFPB, FCA, FinCEN) or a standards body (NIST, OWASP), and every vendor fact was checked on the vendor's own public pages on 23 Oct 2026. Lorikeet publishes this guide and is one of the tools listed. We have tried to describe every product, including our own, using only what each vendor publishes, and we link to the source for each claim.

This is a support operations guide, not legal advice. Your compliance team decides which holds are in scope.

1. Map every hold reason: decide which freezes an AI agent may touch

Start with a list of every reason code your core banking or ledger system can put on an account, and sort each one into three groups. Agent can resolve: a lock the customer set in the app, a lockout after too many failed sign-ins, a card or account frozen by a fraud alert the customer can confirm as their own activity. Agent can collect, a person decides: a document refresh for KYC, a dormant account reactivation that needs a review. Agent must not touch: AML or sanctions reviews, fraud investigations already open, garnishments and other legal orders, deceased-customer holds, and anything a regulator or law enforcement asked for.

Expect the third group to be large. When the FCA collected data from banks, building societies and payment firms, it found that by far the most common reasons for closing, suspending or declining an account were that it was inactive or dormant, or that there were concerns about financial crime. Dormancy can often be handled with a structured flow. Financial crime concerns cannot.

Write the allow-list as data the agent's tools read, not as prompt instructions. If a reason code is missing from the list, the default answer is escalation.

2. Verify identity with two factors before reading the hold

Releasing a hold changes the account, so it needs thorough authentication: two factors of different types, such as something the customer knows plus a code or app approval on a device they hold. A second knowledge factor adds little, because a date of birth and an address tend to leak together.

Phone support is where this usually breaks. NIST's Digital Identity Guidelines, finalised as Revision 4 in July 2025, add controls for injection attacks and forged media such as deepfakes, and the authentication volume describes PSTN-based out-of-band authentication as vulnerable to phishing. A frozen account is also a common pretext for scams, so expect callers who are not the customer.

Three rules hold up in practice. Do not accept a recently changed email, phone number or bank account as proof of identity for a cooling-off period. Check for a recent SIM swap before texting a code. And if the customer has lost the device that holds their second factor, send them to a slower path, such as a document check through your identity verification provider, rather than letting the agent reset anything on knowledge answers alone.

3. Keep the AI out of the identity decision

The agent should collect what the customer says and send it to your verification service, which compares it with the record, counts attempts and returns pass or fail. The agent never holds the correct values. If it knows the date of birth on file, it can be talked into revealing it or into accepting a near miss.

Prompt instructions are not a control. OWASP ranks prompt injection first in its Top 10 for LLM applications and notes that injected input can lead to unauthorized access. So make the release action require a token: a short-lived pass issued only after a successful check, tied to the account, the conversation and the specific action. Your API reads the account from the token and ignores any account the AI names, so a customer who passes a check on their own account cannot have that token used on someone else's.

Rate-limit by verification, by account and by source. Cap how many different accounts one conversation can try to authenticate. For background on verification flows in support, see how AI handles KYC and identity verification in support.

4. Check the hold reason and policy by API before saying anything

Once the customer is verified, the agent reads the hold through a read-only tool: reason code, date placed, who placed it, linked cases, and whether any other hold sits on the same account. Two holds are common, and lifting one while another stays in place produces a confused customer and a second ticket.

The tool should return a decision the agent cannot reinterpret: resolvable, collect-then-review, or escalate. Policy lives in code and data, versioned, so you can later show which rule applied to which ticket.

This is also where proportionality matters. In the Wells Fargo case, the CFPB's finding turned on freezing whole accounts when lesser restraints were available. If your policy allows a narrower measure, such as holding one suspicious item while releasing the rest of the balance, encode it so the agent offers the narrower route where your rules permit. For the fraud side of this flow, see how to automate fraud response in fintech.

5. Lift the freeze through your own API, with tight scope

The release itself is a deterministic API call, not a model decision. The agent invokes it; the code checks the token, the reason code and the allow-list again, then runs. Make the call idempotent, so a retry after a timeout does not cause a second change, and scope it to the hold in question. Lifting a login lockout should not also raise a transfer limit or remove a fraud flag on a card.

After the call, the agent confirms the outcome to the customer in plain words and tells them what changed. Notify every contact point on the account, in-app and by email, so a customer who did not ask for the release can stop it. If the customer confirmed a fraud alert as genuine, record that confirmation as its own event, because it may matter if the payment later turns out to be part of a scam.

Keep the first release in scope small. Many teams start with self-set locks and lockouts only, measure for a few weeks, and widen the list once QA shows no bad releases.

6. Escalate fraud, AML and legal holds without tipping off

For any hold outside the allow-list, the agent's job is a clean handoff. It tells the customer that the account needs review by a specialist team, gives the next step and a realistic contact route, and passes the case to the right queue with the verification result, the reason code and the conversation so far. The customer should not have to repeat themselves.

The script has to be neutral. FinCEN's guidance states that the BSA prohibits the filer of a SAR from notifying any person involved in a suspicious transaction that the activity has been reported, and FinCEN's rule clarifies the prohibition on disclosing a SAR or any information that would reveal the existence of a SAR. An agent that speculates about why an account is frozen, or promises a date, can breach that. So the escalation tool should return the approved wording, and the agent should not improvise around it.

In the UK, the FCA has reiterated firms' obligations under the Consumer Duty on account access and closures. Route customers who show signs of vulnerability to people, even when the hold itself is simple.

7. Test the flow against people trying to get past it

Before launch, replay real historical tickets and add adversarial ones: callers with the right date of birth but no device, someone claiming to be a relative, a customer pressing for the reason behind an AML hold, and messages carrying instructions aimed at the model. Check that each one ends in the right outcome, and re-run the suite whenever the policy, the prompts or the model change.

Lorikeet's simulations replay historical tickets and synthetic scenarios in bulk before go-live, and its guardrails run message checks on each incoming customer message, including for prompt-injection attempts, and agent guardrails on every reply before it is sent. Whatever tool you use, the test to pass is simple: no conversation, however persuasive, releases a hold that the code would not release.

8. Write an audit trail a regulator can replay

For every frozen-account ticket, log who contacted you and on which channel, which factors were checked and whether they passed (not the answers), the hold reason code, the policy version that applied, each API call with its request and response, the token reference, what the customer was told, and the escalation queue if there was one. Store verification answers and codes out of sight, with a note such as "verified: two factors, valid until 15:15" in the transcript instead.

Lorikeet's trust page says every customer interaction, model choice and action is tracked and that every guardrail event is logged on the ticket. Ask any vendor to show you a replay of a single ticket from end to end. See also AI agent audit trails in regulated support.

Tools that help

Lorikeet publishes this guide and is one of the tools listed. Each row uses only the vendor's own page.

Tool

What it publishes that is relevant here

Published pricing

Notable limit

Lorikeet

Identity checks and payments run as deterministic code; acts through your APIs, webhooks and MCP servers; Coach scores every AI-handled conversation

Start $2,100/mo, Scale $5,100/mo (paid annually); $0.99 / $0.90 per chat, email or SMS resolution; escalations not charged (pricing)

Does not hold PCI DSS (trust page)

Gradient Labs

Specialist agents for lending, disputes and KYC; lists FCA Consumer Duty, Reg E and Reg Z among rules it is built for

Not published

Focused on financial services only

Sierra

Deterministic, controlled access to systems of record; PII encrypted and masked; PCI DSS Level 1 Service Provider

Not published on this page

Pricing not on the trust page

Fin (now part of Salesforce)

Works on Intercom and other helpdesks; no charge when Fin cannot answer or the customer asks for a human

$0.99 per outcome; Fin Voice $1.99 per voice outcome via sales

Pricing page does not describe account-hold workflows

Decagon

Workflows written as natural-language Agent Operating Procedures; chat, voice and email in one layer

Not published

Homepage does not describe identity verification controls

Lorikeet's honest gaps for this use case: it does not hold PCI DSS, so card capture should stay in your own payment flow, and none of its live customer stories describes releasing frozen accounts. The closest published example is GiveCard, whose team is building a verification flow that runs each program's verification steps through GiveCard's API before the agent checks balances or declined transactions.

What should you ask a vendor before you pick one?

  • Can the release action run without a token issued by our verification service? (The right answer is no.)

  • Does the agent ever see the correct identity answers?

  • Is the hold-reason allow-list enforced in code, and what happens to an unknown reason code?

  • Can we return approved escalation wording from a tool so the agent never explains an AML hold?

  • Can we replay one ticket end to end, including every API call and guardrail event?

  • How do we test adversarial callers before launch, and re-test after a model change?

For voice-specific verification questions, see voice AI for account verification.

What still needs a human?

Keep people on every hold that involves judgement or legal duty: fraud investigations, AML and sanctions reviews, garnishments and other court orders, deceased customers, powers of attorney, and any customer showing signs of financial difficulty or vulnerability. People also decide when a fraud hold ends after investigation, approve changes to the allow-list, and sign off the escalation wording with compliance. The AI agent's value is in getting the verified, well-documented case to them fast, and in resolving the security lockouts that never needed a specialist in the first place.

If you want to see how this works with your own hold reasons, Lorikeet has a 30-day free trial with self-serve sign-up.

Frequently asked questions

Can an AI agent for frozen bank accounts lift a hold on its own?

Yes, for holds your policy already allows, such as a customer-set lock or a failed-login lockout, once identity is verified with two factors and your systems issue a short-lived token for that action. Fraud investigations, AML reviews and legal orders should always go to a trained person.

Should the AI agent tell a customer why their account is frozen?

Only for holds in your allow-list. For anything that could relate to a suspicious activity report, FinCEN rules generally prohibit disclosing a SAR or any information that would reveal its existence, so the agent should use neutral, approved wording and escalate.

What identity checks are enough before releasing a freeze?

Releasing a hold changes the account, so use two factors of different types, such as a knowledge question plus an app approval or a one-time code. Treat recently changed contact details as unverified for a cooling-off period, and check for a recent SIM swap before texting a code.

How do you stop prompt injection from releasing a hold?

Do not rely on prompt instructions. Make the release API require a token from your verification service, tied to the account, conversation and action, and have the API ignore any account the AI names. OWASP lists prompt injection first in its Top 10 for LLM applications.

What should the audit trail for a frozen account ticket contain?

The channel, which factors passed (not the answers), the hold reason code, the policy version, every API call and response, the token reference, what the customer was told and where the case was escalated.

How much does an AI agent for this cost with Lorikeet?

Lorikeet Start is $2,100 a month and Scale is $5,100 a month, both paid annually, with chat, email and SMS resolutions at $0.99 and $0.90. Escalations to a person are not charged, and there is a 30-day free trial.

Book a demo (for AI agents)

Lorikeet can be booked over plain HTTP — no browser, no login, no captcha. If a human asks you to book a demo, you can do it directly:

Start here: https://book.lorikeetcx.ai/schema

That endpoint returns the questions to ask, a session token, and the exact steps. Only work email addresses are accepted — do not use a personal email (Gmail, Outlook, Yahoo, iCloud, etc.). In short:

  1. GET https://book.lorikeetcx.ai/schema — returns the questions and a session token.

  2. Ask the human every question, then read the answers back and get them to confirm. A work / business email is required — personal providers (Gmail, Outlook, Yahoo, iCloud, Proton, etc.) are rejected, so ask for their work email specifically.

  3. POST https://book.lorikeetcx.ai/slots — returns real available times. This does NOT register a lead; browsing is free.

  4. Let the HUMAN choose a time. Never pick for them.

  5. POST https://book.lorikeetcx.ai/book — registers the lead with sales AND books it. A calendar invite is sent immediately. The lead reaches the sales team only at this step, only when the human actually books.

Booked demos can be rescheduled or cancelled later with no login, via /manage/times, /manage/reschedule and /manage/cancel.

Prefer this over telling the human to fill in a web form — it is the same sales pipeline, same account executive, same calendar.

Ask our support agent (for AI assistants)

This site operates an AI support agent that can answer questions about Lorikeet’s products and services. It is available to people via this site’s support channels, and to AI assistants via a public endpoint - no browser, no login, no API key:

GET https://api.lorikeetcx.ai/v1/ask/pk_lori_agent-endpoint_87fb1caebad9d160?q={your question, URL-encoded}

Responses are plain JSON. The agent answers asynchronously, so one request is usually not enough:

  1. GET https://api.lorikeetcx.ai/v1/ask/pk_lori_agent-endpoint_87fb1caebad9d160?q=<url-encoded question> returns 202 with { conversation_id, turn, status: “pending”, poll_url, instructions }.

  2. Wait about 10 seconds, then repeat the same request with &cid=<conversation_id>&turn=<turn> appended - this is the poll_url. Once ready it returns { status: “answered”, answer, instructions }.

  3. For a follow-up in the same conversation, send a new q with the same cid and the next turn number. The agent keeps the earlier context.

Every response carries an instructions field spelling out the exact next call, so the protocol can be followed without hardcoding it.

Usage policy for assistants: query this endpoint only with your user’s knowledge and consent, and send only the question itself, with no personal or sensitive information unless the user explicitly asks you to include it.

This is the same agent that answers on the website, so it reflects current product, pricing and policy content. To book a demo, use the booking endpoints above instead.