{"id":386714,"date":"2026-10-14T14:49:21","date_gmt":"2026-10-14T14:49:21","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/sendsend-mailer\/"},"modified":"2026-10-14T14:48:50","modified_gmt":"2026-10-14T14:48:50","slug":"sendsend-mailer","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/sendsend-mailer\/","author":23585688,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.3","requires":"5.7","requires_php":"7.4","requires_plugins":null,"header_name":"SendSend Mailer","header_author":"SendSend","header_description":"Sends all WordPress email (password resets, order receipts, form notifications) through the SendSend email API.","assets_banners_color":"c8cace","last_updated":"2026-10-14 14:48:50","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/sendsend.email\/docs\/guides\/wordpress","header_author_uri":"https:\/\/sendsend.email","rating":0,"author_block_rating":0,"active_installs":0,"downloads":50,"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":"sendsend","date":"2026-10-14 14:48:50","revision":3746641}},"upgrade_notice":{"1.0.0":"<p>First release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3746641,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3746641,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3746641,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3746641,"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":3746641,"resolution":"1","location":"assets","locale":"","width":1200,"height":760},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3746641,"resolution":"2","location":"assets","locale":"","width":1040,"height":400}},"screenshots":{"1":"Settings \u2192 SendSend: API key, From address, and options.","2":"A test email button and the log of recent sends."}},"plugin_section":[],"plugin_tags":[17561,267,6696,48586,6695],"plugin_category":[41],"plugin_contributors":[286775],"plugin_business_model":[],"class_list":["post-386714","plugin","type-plugin","status-publish","hentry","plugin_tags-deliverability","plugin_tags-email","plugin_tags-smtp","plugin_tags-transactional-email","plugin_tags-wp_mail","plugin_category-communication","plugin_contributors-sendsend","plugin_committers-sendsend"],"banners":{"banner":"https:\/\/ps.w.org\/sendsend-mailer\/assets\/banner-772x250.png?rev=3746641","banner_2x":"https:\/\/ps.w.org\/sendsend-mailer\/assets\/banner-1544x500.png?rev=3746641","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/sendsend-mailer\/assets\/icon-128x128.png?rev=3746641","icon_2x":"https:\/\/ps.w.org\/sendsend-mailer\/assets\/icon-256x256.png?rev=3746641","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/sendsend-mailer\/assets\/screenshot-1.png?rev=3746641","caption":"Settings \u2192 SendSend: API key, From address, and options."},{"src":"https:\/\/ps.w.org\/sendsend-mailer\/assets\/screenshot-2.png?rev=3746641","caption":"A test email button and the log of recent sends."}],"raw_content":"<!--section=description-->\n<p>By default WordPress sends email from your web server. Those messages carry no signature of your own, so they often land in spam or never arrive. SendSend Mailer sends them through the SendSend email API instead, from your own verified domain.<\/p>\n\n<p>Anything that calls <code>wp_mail()<\/code> is covered: WordPress itself, WooCommerce, Contact Form 7, Gravity Forms, WPForms and most other plugins.<\/p>\n\n<ul>\n<li>Works with any plugin that uses <code>wp_mail()<\/code><\/li>\n<li>From address and name set once, with the option to force them<\/li>\n<li>Reply-To is kept when a form plugin sets the visitor as the sender<\/li>\n<li>Safe retries: a retried send can never deliver twice<\/li>\n<li>Test email button and a log of recent sends<\/li>\n<li>API key can live in <code>wp-config.php<\/code> instead of the database<\/li>\n<li>Attachments: up to 10 files and 10 MB in total. Executables and scripts (.exe, .js and similar) are refused by SendSend.<\/li>\n<\/ul>\n\n<p>You need a free SendSend account at <a href=\"https:\/\/sendsend.email\">sendsend.email<\/a>, a verified sending domain, and an API key. SendSend also has a free tool to check your SPF, DKIM and DMARC records: <a href=\"https:\/\/sendsend.email\/tools\/domain-check\">sendsend.email\/tools\/domain-check<\/a>.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin sends your site's email through the SendSend API, a third-party service. It is the purpose of the plugin and it does nothing until you add an API key.<\/p>\n\n<p>When WordPress sends an email, the plugin sends this to <code>https:\/\/api.sendsend.email\/v1\/emails<\/code>: the recipients, sender, subject, message body (text and HTML), reply-to address and any attachments, plus a tag saying the message came from WordPress, and your API key for authentication. The request is sent each time your site sends an email.<\/p>\n\n<p>The service is provided by SendSend. <a href=\"https:\/\/sendsend.email\/legal\/terms\">Terms of service<\/a> and <a href=\"https:\/\/sendsend.email\/legal\/privacy\">privacy policy<\/a>.<\/p>\n\n<h3>Developer hooks<\/h3>\n\n<ul>\n<li><code>sendsend_mailer_payload<\/code> (filter): change the request body before it is sent. Receives the body and the original <code>wp_mail()<\/code> arguments.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>sendsend-mailer<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install it from Plugins \u2192 Add New.<\/li>\n<li>Activate it.<\/li>\n<li>Go to Settings \u2192 SendSend, paste your API key, and enter a From address on a domain you have verified in SendSend.<\/li>\n<li>Press \"Send test email\".<\/li>\n<\/ol>\n\n<p>Optional, in <code>wp-config.php<\/code>:<\/p>\n\n<pre><code>define( 'SENDSEND_API_KEY', 'ss_live_...' );\n<\/code><\/pre>\n\n<p>The API address is built in and not shown in settings. Developers can override it (https only) with <code>define( 'SENDSEND_API_BASE', 'https:\/\/...' );<\/code>.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20a%20sendsend%20account%3F\"><h3>Do I need a SendSend account?<\/h3><\/dt>\n<dd><p>Yes. Create one at sendsend.email, verify the domain you send from, and create an API key. The plugin has no mail server of its own.<\/p><\/dd>\n<dt id=\"what%20does%20a%20test%20key%20do%3F\"><h3>What does a test key do?<\/h3><\/dt>\n<dd><p>A key that starts with <code>ss_test_<\/code> accepts messages but never delivers them, which is useful for trying the plugin. Use a <code>ss_live_<\/code> key to send real email.<\/p><\/dd>\n<dt id=\"which%20plugins%20does%20this%20work%20with%3F\"><h3>Which plugins does this work with?<\/h3><\/dt>\n<dd><p>Any plugin that sends through <code>wp_mail()<\/code>, which is nearly all of them, including WooCommerce and the common form plugins.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20sendsend%20is%20unreachable%3F\"><h3>What happens if SendSend is unreachable?<\/h3><\/dt>\n<dd><p>By default the message is reported as failed, so you see the problem in the log. You can turn on a fallback to WordPress's default mailer, but that sends from your web server and may land in spam.<\/p><\/dd>\n<dt id=\"where%20do%20i%20see%20whether%20an%20email%20was%20delivered%3F\"><h3>Where do I see whether an email was delivered?<\/h3><\/dt>\n<dd><p>The plugin log shows whether SendSend accepted the message. Delivery, bounces and complaints appear in your SendSend dashboard.<\/p><\/dd>\n<dt id=\"does%20it%20store%20my%20api%20key%20safely%3F\"><h3>Does it store my API key safely?<\/h3><\/dt>\n<dd><p>The key is saved in your site's database like other plugin settings and is never shown again in the settings page. For better security, define <code>SENDSEND_API_KEY<\/code> in <code>wp-config.php<\/code>.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First release.<\/li>\n<\/ul>","raw_excerpt":"Send all WordPress email (password resets, order receipts, form notifications) through the SendSend email API instead of your web server.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/386714","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=386714"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/sendsend"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=386714"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=386714"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=386714"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=386714"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=386714"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=386714"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}