Setting up your email
How to use your new mailbox in an email app and send email from your website. You'll need your email address and the password you were given.
These settings are the same for every mailbox. Only the email address and password change.
Incoming mail (IMAP)
mail.mailions.com993[email protected]Outgoing mail (SMTP)
mail.mailions.com587[email protected] can't send as [email protected].Add a new account
Enter your email address and password. If the app asks, choose manual setup and account type IMAP.
Enter the settings above
Use the incoming (IMAP) and outgoing (SMTP) values from the table. The username is always the full email address.
Send yourself a test
Send an email to a different address (e.g. a Gmail account) and reply to it, so you know sending and receiving both work.
Your website sends mail by connecting to the SMTP server above. No special API is needed, because every language and CMS supports SMTP. Pick your platform:
WordPress
Install the free WP Mail SMTP plugin, choose Other SMTP, then enter: host mail.mailions.com, encryption TLS, port 587, authentication on, and your email and password. Set From Email to the same mailbox. Then use the plugin's Email Test tab.
PHP (PHPMailer)
<?php
use PHPMailer\PHPMailer\PHPMailer;
require 'vendor/autoload.php'; // composer require phpmailer/phpmailer
$mail = new PHPMailer(true);
$mail->isSMTP();
$mail->Host = 'mail.mailions.com';
$mail->Port = 587;
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->SMTPAuth = true;
$mail->Username = getenv('SMTP_USER'); // [email protected]
$mail->Password = getenv('SMTP_PASS');
$mail->setFrom('[email protected]', 'Your Company');
$mail->addAddress('[email protected]');
$mail->addReplyTo($_POST['email'], $_POST['name']); // visitor's address
$mail->Subject = 'New contact form message';
$mail->Body = $_POST['message'];
$mail->send();
Laravel (.env)
MAIL_MAILER=smtp
MAIL_HOST=mail.mailions.com
MAIL_PORT=587
MAIL_ENCRYPTION=tls
[email protected]
MAIL_PASSWORD=your-mailbox-password
[email protected]
Node.js (Nodemailer)
// npm install nodemailer
const nodemailer = require('nodemailer');
const transporter = nodemailer.createTransport({
host: 'mail.mailions.com',
port: 587,
secure: false, // STARTTLS is negotiated automatically on 587
auth: { user: process.env.SMTP_USER, pass: process.env.SMTP_PASS },
});
await transporter.sendMail({
from: '"Your Company" <[email protected]>',
to: '[email protected]',
replyTo: visitorEmail, // so "Reply" goes to the visitor
subject: 'New contact form message',
text: message,
});
Python
import os, smtplib
from email.message import EmailMessage
msg = EmailMessage()
msg["From"] = "[email protected]"
msg["To"] = "[email protected]"
msg["Reply-To"] = visitor_email
msg["Subject"] = "New contact form message"
msg.set_content(message)
with smtplib.SMTP("mail.mailions.com", 587) as s:
s.starttls()
s.login(os.environ["SMTP_USER"], os.environ["SMTP_PASS"])
s.send_message(msg)
"Authentication failed"
Check that the username is the full email address and that the password is correct.
"Sender address rejected"
The From address doesn't match the mailbox you logged in with. See the note under connection settings.
Connection times out from your website
Some shared hosts and cloud providers block outgoing SMTP. Make sure you're using port 587 (not 25), and ask your host to allow outgoing connections to mail.mailions.com on port 587.
Still stuck? Email [email protected].