Magento 2 Fraud Detection Extension

View Demo

Every order in your Magento store gets a fraud risk score from 0 to 100 and lands in Accept, Review or Reject. Risky orders can go on hold automatically, and a known fraudster can be locked out of checkout.

Custom rules use order, customer, address and payment data, including the 3D Secure result. Everything runs inside Magento, with no external fraud service and no per-order fees.

  • 0–100 fraud risk score on every order
  • Accept, Review and Reject with your thresholds
  • Automatic hold for risky orders
  • Lock known fraudsters out of checkout
  • 8 built-in checks with adjustable weight
  • Custom rules, including 3D Secure data
Hyvä
Magento Cloud
WCAG
Mage-OS
Compatible with:
Community:
2.3.* - 2.4.9
Enterprise:
2.3.* - 2.4.9

What does Fraud Detector do?

Fraud Detector checks every new order in your Magento store and gives it a fraud risk score from 0 to 100. A low score marks the order as Accept, a middle score sends it to Review, a high score marks it as Reject. Risky orders can go on hold automatically, so nobody ships them before a manager has looked.

The final call stays with your team. Each order shows why it got its score, check by check, and you decide whether to cancel it, release it or ask the customer for more details.

More than 400 Magento stores use it. On a typical store only about 1–2% of orders end up as Reject; most suspicious orders go to Review, where a person makes the decision.

Everything runs inside Magento. There is no external fraud service to sign up for and no fee per checked order.

What You Get with Fraud Detector

  • A 0–100 risk score on every order, in the order grid and on the order page.
  • Accept, Review and Reject statuses with thresholds you set.
  • Orders in Review or Reject put on hold automatically, if you turn it on.
  • Known fraudsters blocked at checkout before a new order is created.
  • 8 built-in checks, each with its own weight in the final score.
  • Custom rules on order, customer, address and payment data, including the 3D Secure result.
  • A map of the shipping and billing addresses next to the customer's IP location.
  • No external fraud service and no per-order fees.

Fraud Score at a Glance

A Fraud Score column in the Sales > Orders grid shows each order's score in green, orange or red, so the orders that need attention stand out without opening them. Orders are scored in the background (by Magento cron) a few minutes after they are placed, and any order you open is scored on the spot.

The Fraud Risk Score tab on the order page lists every check with its result, for example "Order placed from US, but shipping address is in Canada" or "Customer placed 2 refunded orders". From there you cancel the order, hold it or release it with the standard Magento buttons.

You can turn on Hold on Review status and Hold on Reject status. Then a risky order goes into Magento's real On Hold state, not just a label, and it cannot be invoiced or shipped until someone releases it.

Lock a Known Fraudster Out of Checkout

Flagging an order does not stop the same buyer from trying again tomorrow. Customer Lock does: a locked buyer is refused when they try to place an order, so no order, invoice or stock reservation is created.

  • Every checkout path. The block works for logged-in customers, guests, and orders placed through the REST API or GraphQL (for example from a headless storefront or a mobile app).
  • Lock from where you already work. Lock or release a buyer from the order's Fraud Risk Score tab, from the Fraud Check tab on the customer card, or for many orders at once with a mass action in the order grid. A Customer Lock column shows which orders came from a locked buyer.
  • You choose what a lock matches. The customer account only, the account and email, or the account, email and IP address. IP matching is optional, because people on a shared connection could be blocked by mistake.
  • Lock automatically. A custom rule can lock the buyer when an order matches it, alongside Accept, Review and Reject.
  • A record of every lock. The Locked Customers page shows who placed each lock, when, why and from which order, plus a log of the order attempts that were refused. A separate admin permission controls who can lock buyers.

The buyer sees a neutral message that you write, at checkout and on their account dashboard. Customer Lock ships switched off, so nothing changes in your store until you enable it.

8 Built-in Checks and Their Weight

The score is a weighted result of eight checks. Each check can be switched off, and you set how much it counts towards the final score.

  • Shipping and billing addresses: do the country, state, city, postcode and name match?
  • Customer location: is the order placed from the same country as the billing and shipping addresses?
  • Distance: how far are the shipping and billing addresses from the customer's IP location?
  • Customer history: how many completed, refunded and canceled orders has this customer placed before?
  • IP history: the same check for the IP address, over a period you set (365 days by default).
  • Order amount: is the order total within the normal range for your store?
  • Phone number: does it contain repeated digits or sequences typical of fake numbers?
  • Customer email: does it contain the customer's name, or a keyword from your blacklist?

On the Fraud Risk Score settings page you also set the score ranges for Accept, Review and Reject, and preview the scores of recent orders before you save.

Custom Rules for Your Business

When a pattern matters to your store, write a rule for it. A rule checks order, customer, billing, shipping and payment data, including the shipping method, payment method, item count and whether the IP address is new, and sets the order to Accept, Review, Reject or locks the buyer. A Reject or Review rule wins over a lower score, and an Accept rule can clear an order the score sent to Review. For example, send every order shipped to a list of countries to Review.

Rules can also read the payment additional information that your payment module saves with the order. If your gateway stores the 3D Secure result there, a rule can accept orders where the liability has shifted to the card issuer, so they skip manual review. The user manual lists the available conditions with examples.

Orders that do not need checking can skip it: orders created in the admin panel, for example ones imported from a marketplace, and orders in statuses you select.

Fewer Chargebacks, Caught Before You Ship

A chargeback usually starts with an order that looked normal and was shipped. Fraud Detector catches risky orders before fulfillment: they get a high score, go on hold, and the buyer behind a confirmed fraud can be locked out of checkout.

It is not chargeback insurance: no one reimburses an order you decide to ship. It works alongside your payment gateway's own checks, such as address verification (AVS), the card security code (CVV) and 3D Secure, adding the signals that only your store has, such as the customer's order history and the distance to their IP location. Read more in our guide on how to prevent chargebacks in Magento.

Customer Location on the Map

When you review an order, a Google map on the Fraud Risk Score tab shows the shipping and billing addresses next to the place the order came from, based on the customer's IP address. An order placed in one country and shipped to another is easy to spot. The map uses your Google Maps API key; the IP location comes from a database built into the extension.

Social Profiles of the Buyer

For a deeper look at a high-risk order, the Fraud Risk Score tab shows links to Facebook, Twitter and LinkedIn profiles that match the buyer's name. Open them to see whether a real person stands behind the order before you make the final decision.

Score every order, hold the risky ones and keep known fraudsters out of checkout.
No hidden fees
Our developers install the extension on your store and configure it for your setup, free of charge.
Lifetime access to source code
Access to free support and updates for 1 year
Updates and support prolongation - $90

Pay today $149 for the first year.

Then $90 for updates and support services per year.

Cancel anytime.

30 days money back guarantee
See it in action!
Pick a quick tutorial to learn about various aspects of this extension
Customer Reviews 14
Earn points for your review about this extension modules. $1 = 10 points
Write Your Own Review

check-circle You submitted your review for moderation.

BBMC Verified Buyer
From Carol Stream, United States
Using the module for over 2 years
Extremely flexible fraud rules with room for smarter risk scoring
We have owned Fraud Detector for several years, although we have not yet installed the latest version on our new Magento 2.4.9 stack.

The biggest strength is how many variables can be incorporated into fraud detection. You can build rules around order information, customer data, geographic information, and many other factors. The integrated geolocation has also been reliable for us and makes it possible to identify suspicious transactions immediately.

I would like a faster workflow for turning a known fraudulent order into a custom rule—for example, opening an order and checking boxes for its IP, email, domain, and address instead of manually building each condition.

On the older version we used, I also felt that customer history needed more weight in the overall risk score. A longtime repeat customer could still receive a high score because of order value, IP location, or different billing and shipping details. That may have improved in newer releases, which we will evaluate after installing it on our new store.
Also installed:
Help Desk MX,  Knowledge Base,  Full Page Cache Warmer,  Advanced Product Feeds,  Follow Up Email,  Reward Points,  Promo Banners and 28 more
Mark Verified Buyer
From United States
Using the module for over 2 years
Essential Security Layer for Our Magento Store – Mirasvit Fraud Detector is a Must-Have
We've been using the Mirasvit Fraud Detector for Magento 2, and it has proven to be an absolute lifesaver in protecting our store from fraudulent activity. Since implementing this extension, we've been able to identify and block bad actors who were attempting to exploit our platform. It’s incredibly effective and has already saved us from significant losses.

One of the features we appreciate most is the flexibility in rule configuration. For example, we’ve configured the system to automatically approve orders generated through the backend—such as those coming from Amazon—bypassing fraud validation checks for trusted sources. This allows us to streamline legitimate orders while keeping the defense strong against suspicious ones.

The latest update from the Mirasvit team, which introduced 3D Secure validation, is a major advancement. For those unfamiliar, 3D Secure is an additional layer of authentication provided by VISA and MasterCard, shifting liability away from merchants once the transaction is validated. With this integrated into the fraud detection logic, the extension has become even more powerful and liability-safe.

Combined with its intuitive UI, detailed risk scoring, and customizable filters, this tool has become a critical part of our Magento security stack. It’s robust, flexible, and very user-friendly—exactly what any serious eCommerce operation needs in today’s environment. A powerful fraud prevention system with top-tier features and dependable updates.
Also installed:
Follow Up Email,  Help Desk MX,  Improved Asynchronous Reindexing,  Reward Points,  Event Watcher & Notification,  Elastic Search Ultimate,  RMA and 18 more
BB Verified Buyer
From Carol Stream, United States
Using the module for 6 months
Effective
We use this in conjunction with our merchant risk system. It gives additional info that is very useful, such as location of IP for where the customer ordered in comparison to where it's being delivered.

I wish it was a little more customizable as far as rules, but as a companion to our current risk system, it is great.
Also installed:
Help Desk MX,  Knowledge Base,  Full Page Cache Warmer,  Advanced Product Feeds,  Follow Up Email,  Reward Points,  Promo Banners and 28 more
Eric Verified Buyer
From Burnaby, Canada
Using the module for 2 months
Extension is good
The extension is good and helpful. But the checkout success page takes the load for the processing. I face an issue with double charge capture with the stripe payment method.
In fact, I removed this extension within 10 days of extension installation.
A lot of money was spent on the customer's claim and identifying the issue.
I will be happy if mirasvit has a refund policy
Thanks.
Also installed:
Elastic Search Ultimate,  Order Management,  Store Credit & Refund
kas Verified Buyer
From Ethiopia
Using the module for 3 months
Detecting a fraud is very important as creating an online shop
I am happy with this module because it helps to isolate fake orders from the true ones with objectively set parameters. the module allows automation to either proceed, send to the admin for review, or cancel orders. this module saves extra cost for manpower which also provides accuracy.
Also installed:
Elastic Search Ultimate,  Customer Segmentation Suite,  Advanced Reports,  Affiliate,  Product Kits ,  Advanced SEO Suite,  Inventory Planner and 7 more
Manual & Support
Need more help?

Save time by starting your support request online and we'll connect you to an expert.

Frequently asked questions
chevron-down chevron-right

How does the fraud risk score work?

Each new order runs through 8 built-in checks: address match, customer location, distance to the IP location, customer and IP history, order amount, phone number and email. Every check has a weight you set, and the weighted result is a score from 0 to 100. You decide which ranges mean Accept, Review and Reject, and custom rules can override the result. See the list of indicators in the user manual.

chevron-down chevron-right

Can I stop a fraudulent customer from placing orders again?

Yes. Lock the buyer from the order, from the customer card or with a mass action in the order grid, or let a custom rule lock them automatically. A locked buyer is refused at checkout before an order is created, whether they are logged in, check out as a guest or order through the REST API or GraphQL. The lock can match the account, the email and, optionally, the IP address. Customer Lock is switched off by default.

chevron-down chevron-right

Does it put risky orders on hold automatically?

Yes, if you enable Hold on Review status or Hold on Reject status in the settings. The order goes into Magento's On Hold state and cannot be invoiced or shipped until a manager releases it.

chevron-down chevron-right

Does Fraud Detector guarantee protection from chargebacks?

No. It is not chargeback insurance and does not reimburse losses. It reduces chargebacks by catching risky orders before you ship them, holding them for review and keeping known fraudsters out of checkout. The decision to ship stays with you.

chevron-down chevron-right

Can a rule use the 3D Secure result from my payment gateway?

Yes, if your payment module saves it in the order's payment additional information. A rule can check that a key exists or has a specific value, for example liabilityShifted:Yes, and accept, review or reject the order based on it. Which keys are available depends on your payment module; the rules guide shows examples.

chevron-down chevron-right

Does it work alongside my payment gateway's fraud tools?

Yes. Fraud Detector does not replace the AVS, CVV or 3D Secure checks of your gateway. It adds the signals only your store has, such as the customer's order history and the distance between the addresses and the IP location, and it can read the gateway's results through custom rules.

chevron-down chevron-right

Will a loyal repeat customer get a high score?

Completed orders in the customer's history lower the risk, and you can raise the weight of the Customer History check so it counts more. For trusted customers, a custom rule can accept their orders outright, and orders created in the admin panel can skip the check entirely.

chevron-down chevron-right

Do I need an external fraud service or pay per order?

No. All checks run inside your Magento store. The IP location comes from a database built into the extension. The only external service is Google Maps, used to place the addresses on the map and measure distance; it needs your own Google API key.

chevron-down chevron-right

Does it detect the real customer IP behind Cloudflare or a proxy?

Yes. The extension reads the visitor's real IP address from the Cloudflare header, and you can choose which order field is the primary source of the customer IP.

chevron-down chevron-right

Will it slow down a store with a large order history?

No. Orders are scored by cron in the background, not during checkout. The history checks use the existing order indexes, and the IP History check looks back over a period you set, 365 days by default. The admin panel is available in 15 languages.

Changelog
Version 1.3.14Oct 14, 2026
Fixed custom fraud rules with a Shipping Method condition on a Mirasvit Shipping Table rate silently stopping to match orders after Shipping Table was updated to 0.2.1, which changed how its method codes are written. Rules now match both orders placed before the Shipping Table update and orders placed after it, whichever module you update first. Rules saved with the old codes are converted to the new format automatically when you run setup:upgrade, so you don't have to re-save them (module-shipping-table#83)
Version 1.3.13Sep 25, 2026
⚠️ Added two database foreign keys: mst_fraud_check_customer_lock.order_id → sales_order.entity_id and mst_fraud_check_lock_attempt.customer_id → customer_entity.entity_id, both ON DELETE SET NULL. Run setup:upgrade after updating
⚠️ Removed the unused admin controller Mirasvit\FraudCheck\Controller\Adminhtml\Order\SocialProfiles (route fraud_check/order/socialProfiles) — an exact copy of the order Fraud tab loader that nothing called. The Fraud tab on the order page works as before
Resolved the Adobe Commerce Marketplace code review finding on the Fraud Score edit page template, so the module passes Marketplace validation again
Fixed a crash when a custom fraud rule was saved through a request that did not contain the rule form (for example a hand-built or incomplete admin URL). Instead of an error page, you now see the Unable to find item to save message (pm[#1329]())
Fixed customer locks and refused-attempt records keeping references to orders and customer accounts that had been deleted. Deleting the order a lock came from, or a customer account, now clears the link automatically — the lock itself stays in force, so a blocked buyer is not let back through checkout, and the order number shown on the lock is kept
Fixed the "shiped" typo in the Products cannot be shipped, distance is not checked message on the order Fraud tab
Version 1.3.12Aug 26, 2026
Lock a customer — you can now stop a fraudulent buyer from ordering again instead of only flagging their orders. A locked buyer is refused when they try to place an order, so no order, invoice or stock reservation is created. The block covers every checkout path — logged-in customers, guests, and orders placed through the REST API or GraphQL. Lock enforcement ships switched off, so nothing changes for your store until you enable it (PROP-0079)
Lock / Unlock from the places you already work — lock or release a buyer straight from the order Fraud Risk Score tab, from the new Fraud Check tab on the customer card, or for many orders at once with the new Lock customer / Unlock customer mass actions in the Sales > Orders grid. A new Customer Lock column in the order grid shows at a glance whether the buyer behind each order is locked
Locked Customers page — a new Fraud Detection > Locked Customers screen lists every lock (who placed it, when, why, which order it came from, and who released it) together with a log of the order attempts that were refused. Access is controlled by a separate Lock / Unlock Customers permission, so you decide which admin roles may lock buyers
"Lock customer" rule outcome — custom fraud rules now offer Lock customer alongside Accept / Review / Reject. When such a rule matches an order, the buyer behind it is locked automatically during the scheduled fraud-score update. Order colours and fraud statuses are unaffected, and re-running the update never creates duplicate locks
Lock Customer settings — a new Fraud Detection > Lock Customer section lets you turn enforcement on, choose which identifiers a new lock matches (account only, account + email, or account + email + IP — IP matching is opt-in because shared connections can cause false positives), write the neutral message a blocked buyer sees at checkout, and set how many days refused attempts are kept before cron prunes them (90 by default)
Notice in My Account — a locked, logged-in customer sees your decline message on their account dashboard, so they learn they can't order before filling in a whole checkout
⚠️ This release adds two database tables — mst_fraud_check_customer_lock and mst_fraud_check_lock_attempt — so run setup:upgrade after updating. It also adds the configuration paths fraud_check/lock/enabled, fraud_check/lock/default_match_mode, fraud_check/lock/decline_message and fraud_check/lock/attempt_retention_days
Renamed the Order behaviour configuration settings group to Order Behavior and made both it and General Settings translatable, so the section titles now appear in your admin language
Fixed a PHP 8.4 deprecation warning raised while compiling the module on Magento 2.4.9
Version 1.3.11Aug 18, 2026
Hardened the admin fraud screens against broken or unsafe markup. All values printed into the page — the Accept/Review/Reject threshold bars, rule importance levels and rule on/off toggles on the Fraud Score edit and view pages, and the score indicators on the order Fraud tab — are now properly escaped, so unexpected data can no longer distort the layout or inject anything into the page
Version 1.3.10Aug 12, 2026
Fixed fraud rule conditions that use the is one of / is not one of operators. When you entered several comma- or semicolon-separated values (for example a list of countries, emails, or payment methods), the condition never matched and the rule was silently skipped when scoring orders. Such lists are now matched correctly again (pm[#565]())
Reasons to choose Mirasvit
Client focusing and satisfaction

These are our primary. A major portion of our new clients come from referrals from our existing clients. Our professional team of developers, marketers and support staff have invested the best knowledge and experience in the field into our work, so you know you can come back to us again and again.

Remarkable support

One year free and high quality support. We go to great lengths to provide maximum satisfaction with every module you have purchased in our store. By helping you with installation, configuration, answering your every question, we do all our best to eliminate any possible problems.

Risk-free Investment

30-days money back guarantee. If you are not satisfied with our extension performance for any reason, we provide a full refund.

Constant improvements and upgrades

We constantly add new features to all our modules, and are always interested in hearing your opinion and implementing your suggested features in our future developments.

Comprehensive Documentation

We provide an expanded user guide for every aspect of our extension, so you can find answers for all your burning questions.

Unencrypted source code of our products

You can customize extension according to your needs and requirements.

Usability and Performance

The Module is easy to install and upgrade, just follow our step-by-step user guide. Additionally, the extension is ready to use with the Hyvä theme.

Ready for Magento Cloud

No core modifications. The extension has been tested in a Magento Cloud environment and is fully compatible with it.

Loading...