Managing DSN or Bounces is a critical step for building efficient emailing campaigns. This article aims at giving some clues to successfully handle this problem.
Summary:
Introduction
Definitions
Scenarios
Manage DSNs in the Global Script (advanced user)
First, there are few important things to understand:
This article will help you to retrieve the appropriate information from a DSNs allowing you to
process them efficiently. However, it is important to know that only 50% of SMTP Servers delivers Standard DSNs. This means that the clues that we will give you below are only relevant for 50% of the SMTP Server.
The different scenarios described below help you to configure how to process DSNs once they are in your project inbox. Therefore, we assume that you
have already configured:
- The incoming queues: DSNs are sent to the
SMTP sender address defined in the Header Properties. Therefore, you must
associate your project with the incoming queues corresponding to
this address.
- The Download conditions: Specifies which messages has to be downloaded within the project inbox.
Below, you will find three different scenarios:
- Scenario 1: When I receive a failed DSN, I want to increment by 1 a DSN field located in my
data source and I want to add in a DSN comments field the reason why the delivery failed.
- Scenario 2: When I receive a failed DSN with a temporary failure (= soft bounce), I want to increment by 1 a DSN field located in my data source. When I receive a
failed DSN with a permanent failure (= hard bounce), I want to delete the record from my
data source (available soon).
- Scenario 3: When I receive a DSN with a temporary failure (= soft bounce), I want to increment by 1 a DSN field located in my data source and I want to add in a DSN comments field the reason why the delivery failed. When I receive a DSN with a permanent failure (= hard bounce), I want to delete the record from my
data source (available soon).
|
Definitions: A DSN is a message created by the recipient mail server
that provides informations on the current status
of the message you sent and gives you access to the following data:
DSN Type: a DSN can have 5 different types:
-
Delivered: Indicates that the message has been sussessfully delivered. For receiving this DSN type, you need to indicate that you want to receive success DSNs in the mailer properties.
-
Relayed: If you have indicated in the
mailer properties that you want to receive DSN when the message is delivered (see
above), the
relayed DSN type warns you that the receiving mail server does not create DSN for successful delivery.
-
Expanded: Indicates that the message has been sussessfully delivered but forwarded directly to other email addresses. Therefore, it is possible that you receive new DSNs regarding the same message.
-
Failed: Indicates that the message delivery has failed. This can be due to many circumstances. To refine the processing of failed DSN
according to these circumstances, see Managing DSNs / Bounces.
-
Delayed:
Indicates that the message has not been successfully delivered but that
the mail server is still trying to deliver it. Therefore, it is possible that you receive new DSNs regarding the same message.
The delivery can be delayed for many circumstances. To refine the processing of
delayed DSN according to these circumstances, see Managing DSNs / Bounces.
DSN Original Recipient: The DSN Original Recipient allows you to know who was the receiver of the message.
DSN Status: The DSN Status is a code composed of three numerical fields separated by ".".
In a failed DSN, the first figure can be '4' or '5'. '5' represents
a permanent failure (= hard bounce) which means that
the message cannot be delivered in any way (domain does not exist, user does not exist,...). '4' represents a temporary failure (=
soft bounce) which means that
the message cannot be delivered for the moment (full mail box, busy SMTP Server,...). The second sub-field indicates the probable
source of any delivery anomalies, and the third sub-field denotes a precise error condition, if known. In order to have a full list of the DSN Status Codes, click here.
DSN Diagnostic Code: The DSN Diagnostic code is a short sentence that defines the DSN Status.
|
Scenario 1: When I receive a failed DSN, I want to increment by 1 a DSN field located in my
data source and I want to add in a DSN comments field the reason why the delivery failed.
- Go to Message Rules > Process Messages, click on Add Rules and enter a name for the rule.
Conditions:
- Click on Add Conditions.
- Select "Delivery Status Notification" and click on Next.
- Select "The message is a DSN" and only check the "failed" box. Click on OK.
Actions:
- Click on Add Actions.
- Select "Update a record in the datasource". Click on
Next.
- Select the list where the 'DSN' and 'DSN Comments' field is located.
Click on Next.
- A table presents you all the datasource fields
available and another one lets you add conditions
for updating the datasource. In order to configure
this process, you have to follow 2 steps:
- First, add a condition in order to tell the application which record has to be updated. For instance, when
I receive a DSN regarding the message I sent to steve@mydomain.com, I want the DSN field incremented
by 1 for this particular recipient. Thus, the first step
is to say that you want to update the record where the 'email' field
(1) is equal
(2) to the DSN original recipient (3).

- Second, I set the actions
-> Add in a DSN comments field the reason why the delivery failed: By clicking on
in front of the DSN Comments field, I am going to tell the application to
update the 'DSN Comments' field with the 'DSN Diagnostic
Code'.

-> Increment the DSN field by 1: By clicking on
in front of the DSN field, I am going to tell the application to increment by 1 the DSN field.

Manage DSNs in the Global Script (advanced user):
The application allows users who are familiar with script to manage DSNs through the Global Script (click on the collection name to access details and samples):
|