Error: 554 Transaction failed
The server permanently refused the message, usually for spam, blocklist or authentication reasons. Read the detail, fix the cause, then resend.
Shown by SMTP-based sending (Other SMTP, Zoho Mail, the backup SMTP transport); some API services pass it on
The test result or the error log shows a reply starting with 554, for example 554 Transaction failed, 554 5.7.1 Message rejected or 554 Message rejected due to spam.
This article is for site owners who see a 554 reply. It most often comes through Other SMTP or Zoho Mail, and some API services include 554 in their own error text when a receiving server refuses a message.
What this error means
Reply code 554 is a general, permanent failure. The server decided not to accept this message and will not change its mind if you resend it unchanged. It is the reply servers use when no more specific code fits, or when they do not want to say exactly which check failed. The text after the code is your best clue.
Common causes
- The message was judged to be spam, because of its content, links or attachments.
- Your sending IP, or a domain linked in the message, is on a blocklist the server uses.
- The From Email domain fails SPF, DKIM or DMARC checks, and the domain's DMARC policy tells servers to reject.
- The server refused unauthenticated or relayed mail, for example with Authentication off.
- The message breaks a policy, such as a forbidden attachment type or a size limit.
- Your provider has restricted your account because of complaints or bounces.
How to fix
- Read the full reply
Open the error in CRM-NG SMTP → Tools → Debug Events. Words like "spam", "blocked", "policy", "DMARC" or a link to a blocklist tell you which path to take.
- Check authentication
For Other SMTP, go to CRM-NG SMTP → Settings → General and make sure Authentication is on with the right SMTP Username and SMTP Password.
- Fix SPF, DKIM and DMARC
Publish the records your mail provider gives you for the domain in From Email. Turn on Force From Email so every message uses that domain.
- Check blocklists
Look up your sending IP and your domain on a public blocklist checker. Follow each list's removal steps, or ask your host or provider.
- Review the content
Remove URL shorteners, odd attachments and spammy wording from the message templates that failed.
- Send a test
Go to CRM-NG SMTP → Tools → Email Test, fill in Send To and press Send Email.
Verify it worked
The test page shows "Test email sent successfully! Check your inbox to confirm delivery." On the same page, the Deliverability and domain authentication section should show SPF and DMARC records found.
Notes
- Sending directly from a shared web server is a frequent cause of blocklist problems. A dedicated mail service usually solves it.
- The backup SMTP transport does not retry permanent recipient errors.
