SMTP Configuration
Use Quolle as an SMTP relay from any framework, CMS, or no-code tool that supports SMTP — no SDK installation required.
SMTP credentials
Use these settings in any application that asks for an SMTP server:
| Setting | Value |
|---|---|
| Host | smtp.quolle.com |
| Port | 587 |
| Security | STARTTLS (required) |
| Username | Your API key (starts with qle_) |
| Password | Your API key (same value as username) |
Same key for username and password. SMTP authentication uses your API key
as both username and password. Create an API key under Dashboard → API Keys.
Laravel
Add these to your .env file:
MAIL_MAILER=smtp
MAIL_HOST=smtp.quolle.com
MAIL_PORT=587
MAIL_USERNAME=qle_your_api_key
MAIL_PASSWORD=qle_your_api_key
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=hello@mail.yourdomain.com
MAIL_FROM_NAME="${APP_NAME}"
Then send mail as usual with Laravel's Mail facade:
Mail::to('customer@example.com')->send(new WelcomeMail());
Django
Add to your settings.py:
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.quolle.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = 'qle_your_api_key'
EMAIL_HOST_PASSWORD = 'qle_your_api_key'
DEFAULT_FROM_EMAIL = 'hello@mail.yourdomain.com'
Send emails using Django's built-in send_mail:
from django.core.mail import send_mail
send_mail(
subject='Welcome!',
message='Thanks for signing up.',
from_email='hello@mail.yourdomain.com',
recipient_list=['customer@example.com'],
html_message='<h1>Welcome!</h1>',
)
Nodemailer (Node.js)
import nodemailer from "nodemailer";
const transporter = nodemailer.createTransport({
host: "smtp.quolle.com",
port: 587,
secure: false, // STARTTLS — do NOT use port 465
auth: {
user: "qle_your_api_key",
pass: "qle_your_api_key",
},
});
await transporter.sendMail({
from: '"Acme" <hello@mail.yourdomain.com>',
to: "customer@example.com",
subject: "Welcome!",
html: "<h1>Welcome to Acme</h1>",
});
WordPress (WP Mail SMTP)
Install the free WP Mail SMTP plugin, then configure under Settings → WP Mail SMTP → General:
- Set Mailer to Other SMTP
- SMTP Host:
smtp.quolle.com - SMTP Port:
587 - Encryption: TLS (STARTTLS)
- Auto TLS: On
- Authentication: On
- SMTP Username: your API key (
qle_…) - SMTP Password: your API key (same value)
- From Email: your verified address, e.g.
noreply@mail.yourdomain.com - Save and use Email Test to confirm delivery
Bubble.io
In your Bubble app, go to Settings → Email:
- Enable Use a custom email provider
- Email address: your verified address
- Click Configure and enter the SMTP settings above
- Bubble uses these credentials for all system emails and workflow email actions
FlutterFlow
In FlutterFlow, navigate to Settings → Firebase → Custom SMTP (or your email integration panel) and enter:
- Host:
smtp.quolle.com - Port:
587 - Username: your API key
- Password: your API key
- From: your verified sender address
No-code tools and STARTTLS. If your tool asks for SSL vs TLS, choose
TLS / STARTTLS on port 587. Do not use SSL on port 465 — it is not supported.
Ruby on Rails
# config/environments/production.rb
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: 'smtp.quolle.com',
port: 587,
domain: 'yourdomain.com',
user_name: 'qle_your_api_key',
password: 'qle_your_api_key',
authentication: 'plain',
enable_starttls_auto: true
}
Troubleshooting
| Problem | Solution |
|---|---|
| Connection refused on port 587 | Check that your server's outbound port 587 is open. Some cloud providers block it by default — use their firewall/security group settings to allow outbound TCP 587. |
| Authentication failed | Make sure you are using an API key (starts with qle_) as both username and password. Confirm the key exists and is not deleted. |
| 535 Relay not permitted | Your from address must use a verified domain. Add and verify your domain first. |
| TLS handshake error | Set encryption to STARTTLS (not SSL). Port 587 with STARTTLS is the only supported mode. |