Postmark
On this page
Connect CRM-NG SMTP to Postmark with a Server API Token, a verified sender, and the right message stream.
This guide shows you how to send your WordPress email through Postmark, a transactional email service known for fast, reliable delivery. It suits sites whose mail matters: password resets, receipts, booking confirmations. Postmark offers a free developer allowance for testing; check its site for current limits.
The Postmark mailer sends through Postmark's API with a Server API Token. Postmark organises mail into servers and message streams, and it keeps transactional mail strictly apart from bulk mail.
Before you start
- A Postmark account (sign up at
https://postmarkapp.com/). New accounts start in test mode and need approval before sending to any address. - A domain you control, with access to its DNS records.
- Administrator access to your WordPress site.
Step 1: Verify your sender or domain
- Sign in to Postmark
Go to
https://account.postmarkapp.com/and sign in. - Open Sender Signatures
Open Sender Signatures from the top menu.
- Add your domain
Choose Add Domain or Signature, then add your domain (recommended) or a single address.
- Publish the records
For a domain, Postmark shows a DKIM TXT record and a Return-Path CNAME record. Add them at your DNS provider and press Verify next to each one.
- Request approval
While in test mode you can only send to addresses on your own domain. Look for the prompt to request account approval, describe your site, and wait for Postmark to approve it.
Step 2: Get the Server API Token
- Open your server
Open Servers and choose the server for this site, or create one named after the site.
- Open API Tokens
Inside the server, open the API Tokens tab (the plugin's Get Server API Token link goes to
https://account.postmarkapp.com/api_tokens). - Copy the token
Copy the Server API token. Do not use the Account API token: it manages your account and cannot send mail.
Step 3: Connect in CRM-NG SMTP
- Choose the mailer
In WordPress, open CRM-NG SMTP → Settings → General and set Mailer to Postmark.
- Paste the token
Paste the token into Server API Token.
- Set the stream
Leave Message Stream ID empty to use the default transactional stream, or enter a stream ID as described below.
- Set the sender
Set From Email to an address on your verified domain (or the exact address you verified) and set From Name. Tick Force From Email so other plugins cannot use an unverified address.
- Save
Press Save Settings.
Message stream
A message stream is a lane inside a Postmark server. Each server starts with a transactional stream whose ID is outbound (shown as "Default Transactional Stream"), and you can add more streams, including broadcast streams for newsletters.
- Leave Message Stream ID empty for normal website mail. CRM-NG SMTP then sends through the default transactional stream.
- Enter a stream ID when you want website mail in its own lane, for example to keep form notices apart from shop receipts in Postmark's reports. Find the ID on the stream's settings page in Postmark; it is the short code, not the display name.
- Use a broadcast stream only for bulk mail such as newsletters. Postmark does not allow bulk mail on transactional streams, and sending it there can get your account restricted.
If the stream ID does not exist on the server that owns your token, Postmark refuses the message.
Send a test email
Open CRM-NG SMTP → Tools → Email Test, enter your address in Send To, and press Send Email. In Postmark, open the server and the stream's Activity tab to see the message. See Sending a test email.
The domain check on the test page looks for spf.mtasv.net in your SPF record. Postmark's custom Return-Path record takes care of SPF alignment, so a passing DKIM and Return-Path in Postmark matter most. See Adding DNS records.
Troubleshooting
- The token is wrong, or you used the Account token: 401 Unauthorized or Forbidden and Invalid API key
- The recipient bounced or complained before (Postmark calls this an inactive recipient): Email address in suppression list
- The From Email has no sender signature: 553 Sender address rejected
- The account is still in test mode, or has reached its limit: Email sending limit reached
- Mail arrives in spam: Emails landing in spam
