top of page

When Fraud Prevention Works and Still Fails

  • Writer: E.C. Scherer
    E.C. Scherer
  • Dec 22, 2025
  • 4 min read

A real-world lesson in fraud prevention, adaptive controls, and the cost of ignoring context


Fraud prevention is supposed to protect people. Last week, it protected a system instead.


I tried to place a routine grocery order through Walmart+. Same account I’ve used for years. Same phone. Same payment method. Same kinds of groceries I always buy.


The order went through.

Then it was cancelled.

Twice.


Each time, I had to reset my password. Each time, I completed text verification. Each time, the order was accepted and then cancelled a few minutes later for fraud prevention. Each attempt also left a roughly $400 authorization hold on my card. Two orders. Two holds. Hundreds of dollars temporarily unavailable.


And I still needed groceries.


What the System Thought It Saw


Eventually, it became clear what triggered the fraud controls. I had recently moved from Virginia back to Idaho. On paper, I get it. A location change during the holidays. Grocery pickup instead of walking into the store. A bigger order than usual. A new IP address.


What the system missed is that Idaho was not new to me. I lived here before. I have placed pickup and delivery orders in Idaho over the years while visiting regularly. Same account history. Same device. Same buying habits.


This was not account takeover. It was not card testing. It was not unusual spending. It was a family relocating and trying to keep daily life running.


When Context Disappears


Fraud models are very good at identifying anomalies. They are much worse at understanding life transitions.


I am a divorced parent shopping for two young kids. I live about an hour away from town. Grocery pickup is not a convenience feature for me. It is how I avoid turning a basic errand into a six-hour day with exhausted children.


So when the orders were cancelled back-to-back, the impact was not theoretical. It meant money stuck in holds around the holidays. Time spent resetting credentials and proving I am me. And still having to make the trip anyway.


The system blocked the transaction, but it also blocked groceries.


The Resolution That Was Offered


When I finally reached support, I was told they would flag me as a "trusted account." The guidance was to wait an hour, but not more than 24 hours, then place the exact same order using the same account and payment method and it should work. There was no option to approve the existing order. No immediate release of the authorization holds. No assurance that the same thing would not happen again.


Just try later.


I said okay.


Then I went to bed.


The Decision the Next Morning


The next morning, I cancelled Walmart+, got the kids ready, and planned for a long day in town. Not because I wanted to. Because reliability matters more than convenience. Because I couldn't lose access to another $400.


From the outside, this looks like customer churn. From the inside, it is a trust decision.

When security tells users to come back later, what they hear is "this might happen again." For someone balancing kids, distance, and limited time, that uncertainty is enough.


The Design Principle This Experience Exposed


This experience surfaced a simple but powerful security design principle.


Verification should unlock progress.


Security systems should not treat verification as a speed bump. Verification should be a key.


When a user successfully proves who they are, the system should respond by increasing confidence and letting them move forward. Not starting over or defaulting to denial.


The failure here was not that risk was detected. Detecting risk is expected. The failure was that the system had no adaptive path forward once confidence was established.


A reusable principle emerges from this:


When confidence increases, controls should adapt.

What Adaptive Controls Actually Mean


Adaptive controls are not about lowering standards. It's about responding proportionally.


A location change on its own is a weak signal. A location change paired with a known device, consistent behavior, and successful step-up verification is a strong indicator of legitimacy.


Static security asks a single question. Does this look risky? Adaptive security asks a better one. Given everything we know now, how confident are we?

In this case, verification did not unlock anything. It simply delayed an inevitable failure. The system knew how to slow me down, but not how to let me proceed.


The Quiet Failure Mode of Security


This is how security often fails in the real world.


Not with breaches. Not with headlines. Not with dramatic incidents.


It fails when legitimate users do everything asked of them and still cannot complete a basic task.


There is no escalation. No angry post. No executive complaint.


Just a cancelled subscription and a workaround that avoids the system entirely.


From a dashboard, everything looks fine. Fraud was prevented. Risk was reduced.


From a human perspective, trust was lost.


The Real Takeaway


Fraud prevention did not lose a customer because it was aggressive. It lost one because it was inflexible.


Security does not just need to stop bad outcomes. It needs to reliably enable good ones, especially after a user has proven who they are.


If verification does not unlock progress, people will route around security instead of relying on it.


The controls worked. The system failed.


Comments


©2026 by E.C. Scherer

bottom of page