{"id":389969,"date":"2026-10-23T18:28:22","date_gmt":"2026-10-23T18:28:22","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/mersal-smtp\/"},"modified":"2026-10-24T05:16:19","modified_gmt":"2026-10-24T05:16:19","slug":"mersal-smtp","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/mersal-smtp\/","author":18567752,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.2.0","stable_tag":"1.2.0","tested":"7.1.3","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"Mersal SMTP","header_author":"Mersal","header_description":"Sends every WordPress email (WooCommerce, forms, password resets\u2026) through the SMTP accounts on your Mersal account, with rotation, failover, automatic retry, your own sender name and reply-to address, and live SMTP server status.","assets_banners_color":"7c739f","last_updated":"2026-10-24 05:16:19","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/mersal.it\/apps#wordpress","header_author_uri":"https:\/\/mersal.it","rating":0,"author_block_rating":0,"active_installs":0,"downloads":72,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.1":{"tag":"1.1.1","author":"mirrororganization","date":"2026-10-23 18:28:07","revision":3762212},"1.2.0":{"tag":"1.2.0","author":"mirrororganization","date":"2026-10-24 05:16:19","revision":3762756}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon.svg":{"filename":"icon.svg","revision":3762212,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3762224,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3762224,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.1","1.2.0"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"Dashboard with today's sending, delivery and per-account totals.","2":"The SMTP accounts on your Mersal account, with live status.","3":"Rotation methods.","4":"Email log."}},"plugin_section":[],"plugin_tags":[17561,267,6696,286,6695],"plugin_category":[41,45],"plugin_contributors":[286857],"plugin_business_model":[],"class_list":["post-389969","plugin","type-plugin","status-publish","hentry","plugin_tags-deliverability","plugin_tags-email","plugin_tags-smtp","plugin_tags-woocommerce","plugin_tags-wp_mail","plugin_category-communication","plugin_category-ecommerce","plugin_contributors-mirrororganization","plugin_committers-mirrororganization"],"banners":{"banner":"https:\/\/ps.w.org\/mersal-smtp\/assets\/banner-772x250.png?rev=3762224","banner_2x":"https:\/\/ps.w.org\/mersal-smtp\/assets\/banner-1544x500.png?rev=3762224","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/mersal-smtp\/assets\/icon.svg?rev=3762212","icon":"https:\/\/ps.w.org\/mersal-smtp\/assets\/icon.svg?rev=3762212","icon_2x":false,"generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Mersal SMTP takes over <code>wp_mail()<\/code>: WooCommerce emails, contact forms, password resets and everything else your site sends go out through the SMTP accounts saved on your <a href=\"https:\/\/mersal.it\">Mersal<\/a> account.<\/p>\n\n<ul>\n<li><strong>Sign in with your Mersal account<\/strong> \u2014 SMTP passwords stay on Mersal and never reach your site.<\/li>\n<li><strong>Rotation methods<\/strong> \u2014 round-robin, weighted, primary with backups, least used or random.<\/li>\n<li><strong>Failover<\/strong> \u2014 if an account fails, the message is retried on the next one, and the failing account rests for a while.<\/li>\n<li><strong>Limits and routing<\/strong> \u2014 per-account hourly and daily limits and routing rules.<\/li>\n<li><strong>Your sender identity<\/strong> \u2014 keep the sender name, use the site name, a fixed name, a template or the account name, and set a reply-to address.<\/li>\n<li><strong>Live server status<\/strong> \u2014 see the state of each SMTP server on your Mersal account and test it from the dashboard.<\/li>\n<li><strong>Email log<\/strong> \u2014 every message with the server that carried it, its delivery status and any error.<\/li>\n<li><strong>Your language<\/strong> \u2014 the dashboard follows your WordPress language. Translations ship for Arabic, French, Spanish, German, Portuguese (Brazil), Italian, Turkish, Russian, Dutch, Indonesian, Persian, Urdu, Hindi, Japanese and Chinese (Simplified), with a right-to-left layout for Arabic, Persian and Urdu. More languages can be added on translate.wordpress.org.<\/li>\n<\/ul>\n\n<p>Until a Mersal account is linked, the plugin does not touch <code>wp_mail()<\/code> and WordPress sends email as usual.<\/p>\n\n<h4>Credits<\/h4>\n\n<p>Fonts bundled with the dashboard: Cairo and Inter (SIL Open Font License 1.1) and Material Symbols (Apache License 2.0). Licenses are in <code>includes\/suite\/assets\/fonts\/LICENSES.txt<\/code>.<\/p>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>A <a href=\"https:\/\/mersal.it\">Mersal<\/a> account with SMTP accounts on it. Mersal is a paid messaging service; the plan on your account decides which SMTP accounts and how many emails are available. See the plans on <a href=\"https:\/\/mersal.it\/apps#wordpress\">mersal.it<\/a>.<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>This plugin is a connector for the Mersal messaging service (https:\/\/mersal.it), operated by Mersal. It cannot send email without it. It talks to the service only after you link your Mersal account from the plugin's dashboard, and only to these endpoints on mersal.it:<\/p>\n\n<ul>\n<li><strong>Linking your account<\/strong> \u2014 <code>\/wordpress\/sso<\/code> opens in your browser so you can sign in; <code>\/api\/wordpress\/user\/me<\/code> checks the sign-in token; <code>\/api\/wordpress\/site<\/code> registers your site's address (site URL and plugin name) with your account.<\/li>\n<li><strong>Reading your SMTP accounts<\/strong> \u2014 <code>\/api\/wordpress\/gateways<\/code> and <code>\/api\/wordpress\/smtp\/servers<\/code> return the SMTP accounts and their status. This runs when you open the dashboard and on a schedule.<\/li>\n<li><strong>Sending email<\/strong> \u2014 <code>\/api\/email\/send<\/code> receives each email your site sends: recipients, subject, message body, headers, sender name and attachments. Mersal delivers it through your SMTP accounts.<\/li>\n<li><strong>Testing a server<\/strong> \u2014 <code>\/api\/wordpress\/smtp\/servers\/test<\/code> when you press \"Test\" on a server.<\/li>\n<li><strong>Delivery status<\/strong> \u2014 <code>\/api\/wordpress\/smtp\/status<\/code> receives the IDs of queued messages to report whether they were delivered (can be turned off in the settings).<\/li>\n<li><strong>Account notifications<\/strong> \u2014 <code>\/api\/wordpress\/notifications<\/code> returns messages from Mersal about your account, shown in the dashboard bell.<\/li>\n<\/ul>\n\n<p>Each request carries the token or API key of your linked account. Nothing is sent before an account is linked, and unlinking stops all requests.<\/p>\n\n<ul>\n<li>Terms of service: https:\/\/mersal.it\/pages\/terms-of-service\/135<\/li>\n<li>Privacy policy: https:\/\/mersal.it\/pages\/privacy-policy\/134<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Install the plugin from Plugins \u2192 Add New, or upload the <code>mersal-smtp<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate it and open <strong>Mersal Plugins \u2192 Mersal SMTP Pool<\/strong>.<\/li>\n<li>Follow the setup wizard: sign in with your Mersal account, choose a rotation method and send a test email.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20a%20mersal%20account%3F\"><h3>Do I need a Mersal account?<\/h3><\/dt>\n<dd><p>Yes. The SMTP accounts live on your Mersal account and the plugin sends through them. Without a linked account the plugin stays out of the way and WordPress mails as usual.<\/p><\/dd>\n<dt id=\"are%20my%20smtp%20passwords%20stored%20on%20my%20site%3F\"><h3>Are my SMTP passwords stored on my site?<\/h3><\/dt>\n<dd><p>No. They stay on Mersal; the site only holds the token of your linked account.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20every%20account%20fails%3F\"><h3>What happens if every account fails?<\/h3><\/dt>\n<dd><p>The message is recorded as failed in the email log with the error, and WordPress's <code>wp_mail_failed<\/code> action fires as usual.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20woocommerce%20and%20form%20plugins%3F\"><h3>Does it work with WooCommerce and form plugins?<\/h3><\/dt>\n<dd><p>Yes. Anything that sends with <code>wp_mail()<\/code> goes through Mersal SMTP.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Translations: the dashboard now follows the WordPress language of each user instead of its own Arabic\/English switch.<\/li>\n<li>Translations: 15 languages bundled \u2014 Arabic, French, Spanish, German, Portuguese (Brazil), Italian, Turkish, Russian, Dutch, Indonesian, Persian, Urdu, Hindi, Japanese and Chinese (Simplified). The plugin is ready for translate.wordpress.org.<\/li>\n<li>Right-to-left layout follows the WordPress language (Arabic, Persian, Urdu).<\/li>\n<li>The test email and its subject are sent in the dashboard's language.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Security: the sign-in return from mersal.it is checked with a WordPress nonce before the token or error is accepted.<\/li>\n<li>Security: the \"Refresh status\" link on the servers screen carries a nonce.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>First release on WordPress.org.<\/li>\n<li>Fonts are bundled with the plugin; nothing is loaded from third-party CDNs.<\/li>\n<li>The dashboard only lists Mersal plugins that are installed.<\/li>\n<\/ul>","raw_excerpt":"Send every WordPress email through the SMTP accounts on your Mersal account, with rotation, failover, retries and live server status.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/389969","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=389969"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/mirrororganization"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=389969"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=389969"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=389969"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=389969"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=389969"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=389969"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}