The card was approved. The truck delivered. Then the real cardholder called their bank.

A $604 online heating oil order. The card was approved, the oil was delivered, and three weeks later the bank took the money back. The card company's fraud protection only goes so far, and cranking it up declines honest customers. So we built a custom fraud check that scores every online order in seconds and holds the risky ones before a driver is sent. It works for any business that can lose big to a chargeback or refund and never get the product back.

Based on a real project. Names, details and figures changed for privacy and illustration.

The business

10:04 AM. A $604 oil order lands on your website. Card charged. The processor says approved.
Next morning. Your driver fills the tank.
Three weeks later. The real cardholder spots the charge and calls their bank.
The bank takes your $604 back. The oil stays in the tank. You just gave 100 gallons to a stranger, and paid a fee for the privilege.

An order page with a red alert at the top: Fraud review needed, Score 105. It says this online card order cannot be given a driver until someone reviews it, and lists the warning signs: the billing address differs from the delivery address and is about 143 miles away, the card name does not match the account, the bank matched only part of the address, the account is new, it is the first order, the email does not match the name, the delivery is rushed, and a different name plus far-away billing plus a new account, the stolen-card pattern. Below the alert is Order 004217 with the status Pending.
The same order, held the moment it was placed. No driver until someone checks.

This is for you if you take payments online, then send a truck, a crew or a package, and a chargeback or refund would cost you the money and the product.

That is a long list: oil and propane, dumpsters, junk removal, towing, mulch and stone, concrete, appliances, equipment rental, moving, septic pumping, firewood, auto parts, flowers. Oil is our example: thin margins, and the product is gone the second it is pumped.

The problem

“Approved” does not mean “real”

Your card processor checks that the card is real and the money is there. It does not check that the person typing is the cardholder. Stolen cards pass all day. You hear about it weeks later, from the bank.

You lose twice

The payment goes back and the product is already gone, usually with a fee on top. In heating oil, a $604 delivery might earn about $60. One stolen order erases the profit on about ten honest ones.

The card company’s protection only goes so far

Card companies do offer fraud filters, like matching the address and security code. But it is a dial with two bad ends. Crank it up and honest customers get declined, get frustrated and buy from your competitor. Turn it down and thieves walk in. A daughter paying for her dad’s oil with her own card has a different name and city. On paper, she is the thief.

The owner was stuck on that dial, losing orders one way and oil the other. So he asked: can AI help us catch fraud fast enough to decide, before the truck leaves, whether to reject the order or ask the customer to confirm?

What we built

A fraud check that thinks like a dispatcher

We built a custom one, written with AI. Every online card order gets a score in seconds, from a pile of small warning signs, weighed the way a sharp dispatcher would if they had time to check every order.

  • Whose card? Does the name match the account?
  • How far apart? Billing versus delivery address.
  • How new? Brand-new account, first order?
  • Email fit, or throwaway?
  • What did the bank say about the address and security code?
  • Seen before? Same card on another account, or rejected as fraud earlier?
  • In a hurry? Rush jobs and big first orders are what thieves love.

And more. No single sign decides: one mismatch is usually innocent, but stack the right ones and it counts far more than the parts. A couple of signs hold an order on their own. Regulars earn credit, so loyal customers sail through.

The alert lives where your team already works

Risky orders get a red alert inside the ordering system: on the order, in the orders list and on the dispatch screen, with every reason in plain words. No driver can be assigned until someone reviews it. The system itself refuses.

The fraud review window for Order 004217 with two choices, Approve (we checked and it is legitimate, scheduling unlocks) and Reject (cancel the order), and a required note saying why: called the customer, confirmed the order and the card is theirs.
The review window. Approve or reject, and write why.

The review is one phone call: the customer, and the cardholder if needed. Then approve or reject, with a note.

Two orders. Same warning signs. Which one is the thief?

Both orders: different name on the card, billing address 143 miles away, brand-new account, first order, next-day delivery. Your processor approved both. Our check held both.

You can’t tell from the data. That is the point. That is what the phone call is for.

Order one: the customer said the card was their daughter’s, away at college, and she was paying for the oil. They sent photo ID. Approved, with a note. The truck went.

A note on a held order: Fraud review approved, Score 105. The reviewer wrote: called the customer, the card belongs to their daughter at college, photo ID sent, approved. Below it is the list of why the order was held, with the warning signs.
Held, called, approved with a note. A hard filter would have thrown this order away.

Order two: the real cardholder, called at their own number, said they never placed it. Order cancelled, card refunded, account on credit hold. No oil left the yard.

A note on a held order: Rejected as possible fraud, Score 105. The reviewer wrote: called the cardholder, different name, billing 143 miles away, says they never placed this order, card refunded and account on credit hold. Below it is the list of why the order was held, with the warning signs.
Held, called, rejected. The card is refunded first, then the order is cancelled.

Built to be safe

  • If the check breaks, orders stay held. It never waves one through by accident.
  • A held order cannot get a driver. The database enforces it, not just the screen.
  • Every decision needs a written reason. That log is your paper trail if a chargeback ever lands.

Tuned to your business, tested on your past orders

Every setting is a dial. An oil company worries about rush orders and big first orders. A rental yard worries about a $3,000 machine on a day-old account. We set the dials for your customers, then replay your past orders before anything goes live. For this company, only about 2 in 100 would have been held for a call.

The result

2 in 100

orders held for a quick call. The rest flow straight through.

BeforeAfter
What “approved” doesSends a truckTriggers a score first
A stolen cardMoney gone, oil goneHeld, called, refunded. Nothing delivered
An honest customer with a different nameDeclined, or waved through on a prayerCalled, confirmed, kept
The recordNothingReasons, reviewer, time, note

The check does not drive the truck or make the call. It makes sure a human looks before the oil leaves the yard.

Steal this

Want to build this yourself? Here's how it was built, in plain words. It works with any ordering system that takes card payments online.

The pieceWhat it does
Your ordering systemWhere the red alert, the driver block and the approve-or-reject screen live
Your card processorAlready sends back how well the address and security code matched. The check uses it
A maps lookup (Google)Measures how far the billing address is from the delivery address
A scoring layerAdds up the warning signs, with weights tuned to your business
Claude CodeBuilds it and tunes it

The hardest part is the tuning: choosing which signs matter for your customers and how much, so honest customers sail through. Replay your past orders before you switch it on.

Prefer not to build it? Have us do it for you.

Is your business in the same spot?

In 30 minutes we'll look at your version of this problem and how an AI system could handle it for you.

Book a 30-minute consult, $99

Share this case study

A new case study every day. Follow on LinkedIn · Facebook.