Skip to content
Splashify Pro
Docs

SMTP Setup

Send email through Splashify Pro from any app that supports SMTP — WordPress, Django, Magento, Mailchimp Mandrill replacements, n8n, Zapier, Microsoft Power Automate, Apple Mail, Outlook, or any custom backend using a standard SMTP library.

When to use SMTP vs the REST API: SMTP is a drop-in option for legacy apps and most CMS/eCommerce platforms — no code changes, just paste these credentials into your app's email settings. The Send Email REST API is faster and gives you per-message status polling. Both go through the same DKIM-signed pipeline and bill identically.

Server credentials

Username is literally emailapikey — not your email address, not your account ID. The string emailapikey tells our SMTP relay that the password field carries an API key (instead of an email/password pair). The actual identity is encoded in the API key itself.

Port 25 is not supported. Most cloud providers block outbound port 25 to prevent spam relay abuse. Use 587 (STARTTLS) or 465 (SSL).

Prerequisites

  1. Plan with email_marketing enabled — free during trial; paid plans need the Email Marketing feature flag set on your plan.
  2. A verified sender domain at Settings → Email Domain. The From address you set must be on a domain you've verified (SPF + DKIM CNAME + DMARC). Without verification the relay rejects with 550 5.7.1 sender domain not verified.
  3. A sk_live_… API key from Settings → Developer. Treat it like a password — anyone holding it can send mail on your behalf.

Sender Information

Quick verify with swaks

swaks (Swiss Army Knife for SMTP) is the fastest way to confirm credentials work before wiring them into your app:

bash
swaks \
  --to [email protected] \
  --from [email protected] \
  --header "Subject: Splashify Pro SMTP test" \
  --body "Hello from SMTP relay" \
  --server smtp.splashifypro.com \
  --port 587 \
  --tls \
  --auth LOGIN \
  --auth-user emailapikey \
  --auth-password sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxx

A 250 2.0.0 Ok: queued as <message-id> response confirms the relay accepted your message.

Platform setup

WordPress (WP Mail SMTP)

  1. Install the WP Mail SMTP plugin.
  2. Settings → WP Mail SMTP → Other SMTP.
  3. Fill in:
    • SMTP Host: smtp.splashifypro.com
    • Encryption: TLS
    • SMTP Port: 587
    • Auto TLS: ON
    • Authentication: ON
    • SMTP Username: emailapikey
    • SMTP Password: your sk_live_… key
    • From Email: an address on your verified domain
    • From Name: your store / brand name
  4. Save → click Send a Test Email.

PHPMailer

text
<?php
use PHPMailer\PHPMailer\PHPMailer;
$mail = new PHPMailer(true);
$mail->isSMTP();
$mail->Host       = 'smtp.splashifypro.com';
$mail->SMTPAuth   = true;
$mail->Username   = 'emailapikey';
$mail->Password   = 'sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxx';
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Port       = 587;
$mail->setFrom('[email protected]', 'Your Brand');
$mail->addAddress('[email protected]');
$mail->Subject = 'Order #1234 confirmed';
$mail->Body    = 'Thanks for your order!';
$mail->send();

Python (smtplib)

python
import smtplib
from email.mime.text import MIMEText

msg = MIMEText("Thanks for your order!")
msg["Subject"] = "Order #1234 confirmed"
msg["From"]    = "[email protected]"
msg["To"]      = "[email protected]"

with smtplib.SMTP("smtp.splashifypro.com", 587) as server:
    server.starttls()
    server.login("emailapikey", "sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxx")
    server.send_message(msg)

Node.js (nodemailer)

javascript
const nodemailer = require("nodemailer");

const transporter = nodemailer.createTransport({
  host: "smtp.splashifypro.com",
  port: 587,
  secure: false, // STARTTLS upgrade — set true only when using port 465
  auth: {
    user: "emailapikey",
    pass: "sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  },
});

await transporter.sendMail({
  from: '"Your Brand" <[email protected]>',
  to: "[email protected]",
  subject: "Order #1234 confirmed",
  text: "Thanks for your order!",
  html: "<p>Thanks for your order!</p>",
});

Django (settings.py)

python
EMAIL_BACKEND       = "django.core.mail.backends.smtp.EmailBackend"
EMAIL_HOST          = "smtp.splashifypro.com"
EMAIL_PORT          = 587
EMAIL_USE_TLS       = True
EMAIL_HOST_USER     = "emailapikey"
EMAIL_HOST_PASSWORD = "sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxx"
DEFAULT_FROM_EMAIL  = "Your Brand <[email protected]>"

Laravel (.env)

bash
MAIL_MAILER=smtp
MAIL_HOST=smtp.splashifypro.com
MAIL_PORT=587
MAIL_USERNAME=emailapikey
MAIL_PASSWORD=sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxx
MAIL_ENCRYPTION=tls
[email protected]
MAIL_FROM_NAME="Your Brand"

Magento 2

System → Configuration → Sales → Sales Emails + SMTP On module:

  • Host: smtp.splashifypro.com
  • Port: 587
  • Auth: Login
  • Username: emailapikey
  • Password: your sk_live_… key
  • TLS: Yes
  • SSL: No

n8n / Zapier / Power Automate

Pick the Send Email (SMTP) node and supply the four credentials above. The same form maps 1:1.

Pricing

Same per-email pricing as the REST API, because emails sent over SMTP go through the identical pipeline: ₹0.03 per email, marketing or transactional.

The first 100 emails per day are free. Above that, your wallet is charged per email.

Marketing vs transactional classification: an SMTP submission is treated as transactional by default (₹0.03/email, the same price as marketing). If you want it counted as marketing (campaigns or list-based blasts), use the in-app Campaign builder which stamps the right category.

Deliverability essentials

Email deliverability depends on you setting up DNS correctly on your sending domain. The relay does its part (DKIM signing, IP reputation management, bounce/complaint loops), but recipient inboxes will check yours.

Verify all three at Settings → Email Domain before going live.

Limits

Hitting any limit returns a standard SMTP failure code your library will surface — 421 for connection limits, 550 for content/policy rejections, 535 for auth failures.

Status codes

Tracking sent messages

Every SMTP-sent message is visible in /email under Send Volume (Today / 7d / 30d) and rolled into the Source breakdown → Transactional / API card alongside REST API sends.

Per-recipient delivery status, opens, clicks, bounces, and complaints are written to your account's audit trail. Pull individual statuses via the REST status endpoint using the Message-ID header that the SMTP server returns in the 250 response.

Security notes

  • Rotate API keys if a key has been exposed (committed to git, shared in support channel, etc). Old keys are revocable from Settings → Developer; SMTP connections using a revoked key get 535 5.7.0 authentication revoked immediately.
  • Use environment variables for the password in your code — never hardcode sk_live_… keys in source files.
  • Restrict by IP (Pro plan +): pin a key to a list of allowed source IPs from /settings/developer. Connections from outside the list get 535 5.7.0 IP not authorised.
  • TLS is enforced — connections that don't upgrade to TLS via STARTTLS get terminated after the EHLO with 530 5.7.0 must issue STARTTLS first.

Troubleshooting

Need help