Mail sending scripts: RFC compliance

All email scripts that send an email via our servers must conform to RFC standards.

A Request for Comments (RFC) is a formal document from the Internet Engineering Task Force (IETF) that are considered Internet standards. If your email script’s coding is not RFC compliant, our outgoing mail servers will reject the email.

Common reasons for RFC non–compliance:

The email’s date header is too far in the past or future.

    • To resolve this, your script will need to be updated to use the correct current date. If our email server rejected your message due to this reason, the following message will be provided in the bounce message:
  someone@example.com
    SMTP error from remote mail server after end of data:
    host outbound.cpt.host-h.net [123.45.67.89]:
    550 Date header far in the past/future.

 The email script is adding, or contains, more than one of the same header.

  • If the email generated by your email script, contains, for example, more than one ‘To:’ headers, our server will reject the message. To resolve this, ensure that your email script only adds one of each required header to the email it sends. If our email server rejected your message due to this reason, the following message will be provided in the bounce message:
  someone@example.com
    SMTP error from remote mail server after end of data:
    host outbound.cpt.host-h.net [123.45.67.89]:
    550 Messages should have one or no Message-ID headers, not 2.

The email address listed as the sender does not exist.

  • The email address that is specified within the ‘envelope sender’ header needs to be an email address that exists. If the email address does not exist our mail server will reject your message. If our email server rejected your message due to this reason, the following message will be provided in the bounce message:
  host outbound.cpt.host-h.net [123.45.67.89]:
    550-Verification failed for <someone@example.com>
    550-Previous (cached) callout verification failure
    550 Invalid sender <someone@example.com>

The content exceeds the maximum number of allowed characters in a single line.

  • The maximum number of characters a single line may contain is 998 characters according to RFC 5322 2.1.1 To resolve this, it would be required that line breaks (new line characters) be implemented into the code to avoid the content being sent as one line, but rather broken up into separate lines. If our email server rejected your message due to this reason, the following message will be provided in the bounce message:
someone@example.com
    SMTP error from remote mail server after end of data:
    host outbound.cpt.host-h.net [123.45.67.89]:
    550 Maximum line length exceeded (see RFC 5322 2.1.1).