{"id":399526,"date":"2026-11-05T21:25:02","date_gmt":"2026-11-05T21:25:02","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/mailtester-ninja-email-verification\/"},"modified":"2026-11-05T21:24:40","modified_gmt":"2026-11-05T21:24:40","slug":"mailtester-ninja-email-verification","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/mailtester-ninja-email-verification\/","author":23599898,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.4","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"MailTester Ninja Email Verification","header_author":"MailTester Ninja","header_description":"Blocks fake, mistyped and disposable email addresses in Contact Form 7, WPForms, Gravity Forms, WooCommerce, registrations and comments with a real-time check against the recipient's mail server.","assets_banners_color":"674a49","last_updated":"2026-11-05 21:24:40","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/mailtester.ninja\/integrations\/wordpress\/","header_author_uri":"https:\/\/mailtester.ninja\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":270,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"mailtesterninja","date":"2026-11-05 21:24:40","revision":3786778}},"upgrade_notice":{"1.0.0":"<p>First release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3786778,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3786778,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3786778,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3786778,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3786778,"resolution":"1","location":"assets","locale":"","width":1280,"height":1450},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3786778,"resolution":"2","location":"assets","locale":"","width":725,"height":847},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3786778,"resolution":"3","location":"assets","locale":"","width":1280,"height":1100}},"screenshots":{"1":"Settings: API key, forms to protect and what to refuse.","2":"Contact Form 7: a mistyped address is refused before the message is sent.","3":"WooCommerce checkout: the order cannot be placed with an address that does not exist."}},"plugin_section":[],"plugin_tags":[1152,2182,18971,286,130711],"plugin_category":[45],"plugin_contributors":[290960],"plugin_business_model":[],"class_list":["post-399526","plugin","type-plugin","status-publish","hentry","plugin_tags-contact-form-7","plugin_tags-email-validation","plugin_tags-email-verification","plugin_tags-woocommerce","plugin_tags-wpforms","plugin_category-ecommerce","plugin_contributors-mailtesterninja","plugin_committers-mailtesterninja"],"banners":{"banner":"https:\/\/ps.w.org\/mailtester-ninja-email-verification\/assets\/banner-772x250.png?rev=3786778","banner_2x":"https:\/\/ps.w.org\/mailtester-ninja-email-verification\/assets\/banner-1544x500.png?rev=3786778","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/mailtester-ninja-email-verification\/assets\/icon-128x128.png?rev=3786778","icon_2x":"https:\/\/ps.w.org\/mailtester-ninja-email-verification\/assets\/icon-256x256.png?rev=3786778","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/mailtester-ninja-email-verification\/assets\/screenshot-1.png?rev=3786778","caption":"Settings: API key, forms to protect and what to refuse."},{"src":"https:\/\/ps.w.org\/mailtester-ninja-email-verification\/assets\/screenshot-2.png?rev=3786778","caption":"Contact Form 7: a mistyped address is refused before the message is sent."},{"src":"https:\/\/ps.w.org\/mailtester-ninja-email-verification\/assets\/screenshot-3.png?rev=3786778","caption":"WooCommerce checkout: the order cannot be placed with an address that does not exist."}],"raw_content":"<!--section=description-->\n<p>MailTester Ninja Email Verification checks every email address entered in your forms in real time, against the recipient's mail server, without sending any email. When an address does not exist, the visitor sees a message and can correct it before the form is sent.<\/p>\n\n<p>You get fewer bounces, fewer fake sign-ups and leads you can actually reach.<\/p>\n\n<h4>Where it works<\/h4>\n\n<ul>\n<li>Contact Form 7 (email fields)<\/li>\n<li>WPForms (email fields, with or without confirmation)<\/li>\n<li>Gravity Forms (email fields)<\/li>\n<li>WooCommerce checkout, both the classic checkout and the Checkout block<\/li>\n<li>WooCommerce account registration<\/li>\n<li>WordPress registration<\/li>\n<li>Comments and product reviews from visitors who are not logged in<\/li>\n<\/ul>\n\n<p>Each place can be switched on or off in Settings &gt; MailTester Ninja.<\/p>\n\n<h4>What is refused<\/h4>\n\n<ul>\n<li>Addresses that do not exist on their mail server<\/li>\n<li>Domains that cannot receive email<\/li>\n<li>Disposable addresses (optional, on by default)<\/li>\n<li>Catch-all domains (optional, off by default: these domains accept every address, so the mailbox cannot be confirmed)<\/li>\n<\/ul>\n\n<p>Full mailboxes, temporary errors and servers that cannot be checked are always accepted. If MailTester Ninja does not answer within the delay you choose (10 seconds by default), the address is accepted: your forms never stop working because of the verification.<\/p>\n\n<h4>Built for privacy<\/h4>\n\n<ul>\n<li>Only the email address is sent, when the form is submitted.<\/li>\n<li>MailTester Ninja keeps no copy of the addresses it verifies.<\/li>\n<li>The plugin keeps verdicts for a few days in your own database, under a hashed key, to save your quota when the same address comes back. It never stores the addresses themselves.<\/li>\n<li>The plugin adds a paragraph to the privacy policy guide of WordPress.<\/li>\n<\/ul>\n\n<h4>Free to start<\/h4>\n\n<p>A free API token allows 50 checks a day, one every 30 seconds, which suits a small site. Paid plans start at $6.99 a week for 100,000 checks a day.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to the MailTester Ninja API (https:\/\/happy.mailtester.ninja) to verify email addresses. It is needed to tell whether an address exists.<\/p>\n\n<ul>\n<li>What is sent: the email address entered in the form, and your API key.<\/li>\n<li>When: each time a visitor submits a form, checkout, registration or comment where the verification is switched on, and when you use the test tool on the settings page. An address checked in the last few days is not sent again.<\/li>\n<li>Nothing is sent before you enter an API key.<\/li>\n<\/ul>\n\n<p>The service is provided by MailTester Ninja (Unlimited &amp; Limited, London, United Kingdom).<\/p>\n\n<ul>\n<li>Terms of use: https:\/\/mailtester.ninja\/terms-of-use\/<\/li>\n<li>Privacy policy: https:\/\/mailtester.ninja\/privacy\/<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate the plugin from Plugins &gt; Add New.<\/li>\n<li>Get an API key: a free API token at https:\/\/mailtester.ninja\/free-email-verification-api\/ or a paid key at https:\/\/mailtester.ninja\/verify-emails-unlimited\/<\/li>\n<li>Open Settings &gt; MailTester Ninja, paste the key and save.<\/li>\n<li>Choose where to check addresses, then use \"Test an address\" to see a verdict.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20send%20an%20email%20to%20the%20address%3F\"><h3>Does it send an email to the address?<\/h3><\/dt>\n<dd><p>No. MailTester Ninja talks to the recipient's mail server and stops before any message is sent.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20the%20api%20is%20slow%20or%20unreachable%3F\"><h3>What happens if the API is slow or unreachable?<\/h3><\/dt>\n<dd><p>The address is accepted. The settings page shows the last problem met, for example an expired key or the free daily limit.<\/p><\/dd>\n<dt id=\"will%20it%20refuse%20real%20customers%3F\"><h3>Will it refuse real customers?<\/h3><\/dt>\n<dd><p>Only addresses that the mail server rejects, domains without a mail server and, if you keep the option, disposable addresses are refused. Full mailboxes, catch-all domains (unless you choose otherwise) and temporary errors are accepted. You can also list domains or addresses to always accept.<\/p><\/dd>\n<dt id=\"which%20key%20should%20i%20use%3F\"><h3>Which key should I use?<\/h3><\/dt>\n<dd><p>A free API token (50 checks a day, one every 30 seconds) is enough to try the plugin and for small sites. For busier forms, a paid key allows 100,000 checks a day or more.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20the%20woocommerce%20checkout%20block%3F\"><h3>Does it work with the WooCommerce Checkout block?<\/h3><\/dt>\n<dd><p>Yes. The address is checked when the order is placed, in the classic checkout and in the Checkout block.<\/p><\/dd>\n<dt id=\"is%20my%20data%20stored%3F\"><h3>Is my data stored?<\/h3><\/dt>\n<dd><p>MailTester Ninja keeps no copy of the addresses it verifies. On your site, the plugin keeps verdicts under a hashed key for up to a week, plus monthly counters of checked and refused addresses.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First release: Contact Form 7, WPForms, Gravity Forms, WooCommerce (classic checkout, Checkout block, registration), WordPress registration and comments.<\/li>\n<\/ul>","raw_excerpt":"Refuse fake, mistyped and disposable email addresses in Contact Form 7, WPForms, Gravity Forms, WooCommerce, registrations and comments.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/399526","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=399526"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/mailtesterninja"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=399526"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=399526"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=399526"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=399526"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=399526"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=399526"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}