Fixed prices, paid once·Written replies within one working day
CheckoutLoom.

Marketing and retentionWin shoppers back

View all marketing →

Support and order careAnswer faster

View all support →

Product contentBetter listings

View all product content →

Inventory and pricingPrices and suppliers

View all inventory →

Finance and riskMoney and disputes

View all finance →

Shopify and WooStore-specific

View all services →

Dropshipping and EtsyMarketplaces and print

View all services →

Explore everything

Pick a way in. Every page has a fixed price and a delivery window.

All services88 automations for storesAll platformsShopify, WooCommerce and moreAll integrations82 tools we connectRequest a quote →

ShopifyStore platform

View all Shopify →

WooCommerceStore platform

View all WooCommerce →

BigCommerceStore platform

View all BigCommerce →

WixStore platform

View all Wix →

AmazonMarketplace

View all Amazon →

EtsyMarketplace

View all Etsy →

eBayMarketplace

View all eBay →

Your platform

Automation built for the store or marketplace you already sell on.

Store platforms8 platformsMarketplaces11 marketplacesAll who we serve363 pagesRequest a quote →

DropshippersSeller type

View all dropshippers →

DTC brandsSeller type

View all dtc brands →

Handmade sellersSeller type

View all handmade sellers →

Subscription boxesSeller type

View all →

B2B and wholesaleSeller type

View all b2b and wholesale →

AgenciesSeller type

View all agencies →

PrintfulPrint-on-demand

View all Printful →

Your kind of store

Pages written for how each type of seller actually works.

Seller types14 types of sellerPrint-on-demand9 platformsPopular audiences20 moreRequest a quote →

Email and SMSKlaviyo, Mailchimp and more

View all email and sms →

Support and chatGorgias, Zendesk and more

View all →

Payments and accountingStripe, QuickBooks and more

View all →

Shipping and suppliersShipStation, DSers and more

View all →

Reviews, ads and creativeJudge.me, Meta Ads and more

View all →

Automation and dataZapier, Make, Sheets

View all →

Marketplace and feed toolsGoogle Merchant, Helium 10

View all →

Works with your tools

We build inside the apps you already pay for.

All integrations82 toolsEmail and SMSKlaviyo, MailchimpPaymentsStripe, QuickBooksRequest a quote →

How-to guidesStep by step

View all 63 how-to guides →

Templates and checklistsCopy and use

View all 68 templates →

ComparisonsTools and options

View all 44 comparisons →

Cost and ROIWhat it costs

View all 34 cost pages →

GuidesLong reads

View all 14 guides →

Compliance and riskRules in plain words

View all →

Glossary and statisticsTerms and numbers

View all 17 →

Learn before you buy

Guides, templates and honest comparisons, free to use.

Resources hub256+ free resourcesBlogPractical articlesStatisticsSourced numbersRequest a quote →
Checkout Loom blog

Card testing attacks: how they work, how to spot them and how to shut them down

Why criminals run thousands of small test payments through small stores, what it costs you in fees and disputes, and a layered set of defences you can put in place without blocking real customers.

  • 7 minute read
  • Written for store owners
  • Sources named
Margin kept+4.2%

Most store owners think of payment fraud as someone buying goods with a stolen card. Card testing is different and in some ways more annoying: the attacker does not want your products at all. They have a list of stolen card numbers and need to know which ones work. Your checkout, or your donation form, or your free-trial sign-up, is a convenient place to try them, a few at a time, at speed.

Small stores are favoured precisely because they are less guarded. This guide explains how card testing works, how to recognise it in your payment data, what it costs and how to build layered defences that stop most of it without blocking real customers. It complements order fraud rules for small stores and chargeback prevention. Payment providers differ in the tools they offer, so check your provider’s current documentation.

How the attack works

  1. The attacker obtains lists of stolen card numbers, often incomplete or unverified.
  2. A script, often a bot, submits them through a checkout or payment form, usually at low value.
  3. Each response tells the attacker whether the card is valid, perhaps through the type of decline or by approval.
  4. Valid cards are used elsewhere for larger purchases, or sold on.
  5. The store is left with a flood of declines, a few successful micro-charges that later turn into disputes and a strained relationship with its payment provider.

Attackers choose payment forms that are easy to automate and that return clear signals: checkouts without CAPTCHA, donation pages, gift-card purchases, cheap digital products and forms that accept guest orders. Blocking one route often moves the attack to another, which is why layered defence matters.

Signs you are being tested

SignWhat you might seeNote
Burst of declinesDozens or hundreds of failed payments in minutesOften at night or weekends
Tiny amountsOrders of the lowest price or just a gift cardAttackers prefer low-value probes
Odd emailsRandom strings, sequential names, disposable domainsPattern repeats across attempts
Same IP or small rangeMany attempts from one source or hosting providerProxies can disguise this
Mismatched detailsBilling and shipping very different; unusual addressesNot always present
Spike in checkout trafficWithout more visitors or ad spendCheck analytics for direct hits to checkout
Unusual error codesMany “security code incorrect” or “do not honor” resultsYour provider’s dashboard categorises them
Provider warningsEmail about high decline ratesA late sign: act on earlier ones

What it costs you

  • Processing fees. Providers often charge a fee for failed attempts as well as for successes, depending on your plan.
  • Disputes. A few tests succeed. The real cardholders later dispute them, and each dispute can carry a fee. A high dispute rate can lead to monitoring programmes or account restrictions; see Stripe dispute evidence.
  • Account review. Payment providers watch for abnormal patterns and may pause payouts or ask questions.
  • Inventory and fulfilment. If small successful orders get fulfilled, you lose goods.
  • Time. Cleaning up and answering questions takes hours.
  • Customer impact. Overreacting with blanket restrictions can block real shoppers.

A layered defence

Think of defence as several thin barriers, each cheap, together costly enough that the attacker moves elsewhere.

LayerWhat it doesTrade-off
Bot protection / CAPTCHAChallenges suspicious traffic at checkout or on formsAdds friction if over-used; apply to risky sessions
Rate limitsCaps attempts per IP, per session and per card or emailNeeds tuning to avoid blocking shared networks
Payment-provider rulesRules based on risk scores, countries, CVC and postcode checksSome tools are paid or need configuration
Security code and address checksRequire CVC and, where relevant, postcode matchesSome real cards fail on address
3D Secure / strong authenticationCardholder verifies with their bankCan reduce conversion; use risk-based triggering
Minimum order values or limits on gift cardsRemoves the cheap probe routeMay affect low-value sales
Account or email requirementsRequire sign-in or verified email for risky productsAdds friction to checkout
BlocklistsBlock known bad IPs, emails and domainsMaintenance; attackers rotate
Monitoring and auto-pauseDetects bursts and switches on stricter rulesNeeds a way to restore normal rules

Use risk-based controls where possible: strict rules only for suspicious sessions, not everyone. Your payment provider’s fraud tools generally work this way. Stripe, Shopify Payments and others publish guidance specific to card testing, and it is worth reading before you design your own rules.

Protect the routes attackers love

  • Donation and tip forms. Add CAPTCHA and minimum amounts.
  • Gift cards. Limit quantity and require sign-in or review of first purchases.
  • Free trials and sign-ups with a card. Verify the email and add bot protection.
  • Add-to-cart endpoints and APIs. Rate limit them, since bots often skip the page and call them directly.
  • Guest checkout. Keep it, but watch it, since it is the easiest route.
  • Custom payment pages and old checkout versions that you no longer use. Remove them.

Detect it automatically

Manual checking of the payments dashboard is how many stores find out hours late. Automate the detection with a few simple rules that run frequently.

  1. Count failed payments per five minutes and alert above a threshold set from your normal rate.
  2. Count distinct emails or cards per IP address over an hour.
  3. Watch the ratio of declined to successful payments.
  4. Alert on bursts of orders at your lowest price point.
  5. On a trigger, enable stricter rules automatically: CAPTCHA on all checkouts, tighter rate limits and 3D Secure for all.
  6. Notify the owner and keep the stricter mode on until a person reviews and switches it off.

The key design decision is the automatic protective mode with human release. It stops the bleeding at 3 a.m. without leaving the store locked down forever. Our fraud screening and fraud prevention services build these detection and response rules, and monitoring store automations shows how to make alerts reliable.

What to do during an attack

  1. Turn on stricter protection at your provider and checkout (CAPTCHA, 3D Secure, rate limits).
  2. Pause fulfilment of suspicious low-value orders until reviewed.
  3. Block obvious sources such as repeated IPs and email patterns.
  4. Contact your payment provider, describe the pattern and ask for guidance; they see the wider picture.
  5. Refund successful test charges where appropriate, to reduce disputes, following your provider’s advice.
  6. Review after the event and strengthen the route that was used.

Working with your payment provider

Your payment provider sees patterns across thousands of merchants, and it is usually keen to help you stop card testing, because attacks cost it money too. Learn which fraud tools your plan includes, such as risk scores, rules on card country and security code checks, and turn on the ones that fit. Ask support what thresholds trigger a review of your account, and what they want to see in a response. Keep a short incident record: when the attack started, what you changed and what the effect was. If the provider contacts you about a high decline or dispute rate, respond quickly with specifics. Providers tend to be more forgiving of merchants who show that they noticed and acted than of those who stay silent.

A worked example

A store that averages 40 failed payments a day sees 1,800 failed attempts in two hours overnight. The provider charges a fee on each failed attempt under its plan, say 10 cents, so the burst costs about $180. Of the attempts, 25 succeed at $5 each, and 18 later become disputes at a fee of $15 each, or $270 in dispute fees plus the $125 of refunded or lost charges. The total is roughly $575 for one night, plus the risk of the account being reviewed. A rule that triggers CAPTCHA and tighter rate limits when failed payments exceed 100 in 10 minutes would have fired within minutes and limited the attempt count to a few hundred. The figures are illustrative and depend on your provider’s fees.

Mistakes to avoid

  • Waiting for the provider to warn you. Their threshold is later than yours should be.
  • Blocking whole countries without checking your customers.
  • Relying on one control. Attackers adapt.
  • No way to restore normal rules, leaving permanent friction.
  • Ignoring forgotten routes, like an old payment page.
  • Not telling your provider, who can often help.

Sources and further reading

Figures and rules in this guide come from the primary pages below. Platform limits and prices change, so open the page before you build on a number.

Questions

8 questions readers ask about this topic

What is a card testing attack?

When criminals use a checkout or payment form to check which stolen card numbers are valid, usually through many small or failed payments.

How do I know if my store is being card tested?

Look for bursts of declines, tiny orders, random emails, repeated IP addresses and warnings from your payment provider.

Why do small stores get targeted?

They often have fewer protections, and checkouts or forms that are easy to automate.

How can I stop card testing on Shopify or WooCommerce?

Combine bot protection, rate limits, payment-provider fraud rules, security-code checks, 3D Secure and monitoring with automatic pauses.

Does 3D Secure stop card testing?

It helps, because attackers cannot complete authentication, but it can reduce conversion, so use it based on risk where possible.

Should I refund test charges that succeed?

Often yes, to reduce disputes, but follow your payment provider’s guidance.

Will card testing get my account closed?

It can trigger review if decline or dispute rates become high. Act early and talk to your provider.

Can Checkout Loom set up detection?

Yes. We build monitoring and automatic protective modes, with alerts and a person to release them.

Catch the burst before it costs you

Failed-payment alerts, an automatic protective mode and a human release step.

  • Fixed price, paid once
  • Built inside your tools
  • Thirty days of fixes