Skill Level: Intermediate


Are we able to define email headers using the XML transact interface?

  • Yes. You can possibly use regular personalization and include the ‘ID’ somewhere in the message body itself. There should be no difference searching for it there as in a header field. You need a unique search string to go with the ‘ID’. The search string would not have to be visible within the HTML body.

How does Watson Campaign Automation handle Transact Message delivery failures?

There are several delivery failures that Transact messages can experience.

Transient Delivery Failures

Transact messages can experience these delivery failures:

  • Hard bounce
  • Soft bounce
  • Bounce-after

Hard Bounces

Hard bounces do not typically auto-correct and Transact does not retry them. For example, a user ID does not exist at an ISP. Once a hard bounce occurs, it follows Bounce Processing per the Undeliverable/Bounce settings for the organization.

Soft Bounces

Some soft bounces are similar to hard bounces and Transact does not retry them (for example, a contact’s full mailbox would cause a “bounce” and Transact would not try sending it again).

For other soft bounces and transient delivery issues, Transact will retry the sending process for a period of time (examples of such issues include ISP throttling email rates or ISP connection failures). The default retry interval is currently set to five minutes. Transact will attempt to resend undelivered messages after the retry interval passes.


A bounce-after, also related to soft bounces and transient failures (for example, an ISP not accepting mail due to limitations), has a retry interval of 24 hours. If the message still does not deliver after the retry, Transact flags the message as a “bounce” and processes it according to organization settings.

Note: Yahoo.com Domains: Bounce-after retry interval for yahoo.com domains is set to 30 hours.  

Can a canceled Transact Campaign ID be reused?

No. You will have to create and activate a new campaign and enter the new campaign ID in your XML code. This will replace the canceled campaign ID.

Can I use more than one Campaign ID in a Transact XML submission?

No. You can only use one Campaign ID in an HTTP submission file or an FTP batch file. Transact can only send one transactional mailing per session, therefore only one campaign can be used per XML submission.

Does Watson Campaign Automation automatically update Transact when changes are made?

Information edited on either Watson Campaign Automation or Transact, has to be synchronized between the two programs.

Changes in Watson Campaign Automation

If you make a change within Watson Campaign Automation, such as adding a List, changing a Template, creating a Campaign, or adding an IP Address for submitting XML documents, allow up to 10 minutes for Transact to become aware of these changes.

Submitting information through XML

Information that is submitted through XML Submit Document synchronizes with Watson Campaign Automation after a short time. Information is added to the List, and hyperlinks are tracked through this mechanism. After submitting information through the XML Submit Document, allow up to 1 minute for the information to be synchronized.

Note: If a recipient receives an email and clicks on a hyperlink before synchronization has occurred, the link will work, but it may not be tracked.

Does Transact XML support CSS style sheets?

Transact does support CSS style sheets within a CDATA tag inside any HTML you provide in your transactional request.


The CSS styles can be in the following formats:

  • Inline styles
  • Internal style sheet
  • Externally linked style sheet

For additional information, please refer to the Transact XML User and Developer Guide.

Appending a query string value to a URL link

If you have a link in your Transact mailing template and you want to append a value as a parameter within the URL, you’ll need to use personalization.

An example of a parameter added to a URL: <a href=”http://www.example.com?value=%%VALUE%%”>


In order to append personalization values from Transact XML to a URL link declared in a mailing one must remember to save and personalize that value in the xml. Here is an example in xml:


For further information, reference the Transact XML User and Developer Guide.

Which type of suppression lists does Transact XML support?

Transact XML supports FCC, domain, prefix, and global- level suppression. You’ll find
the FCC, Domain, and prefixes that are not allowed for your particular organization within the Email Blocking section. Go To Settings > Org. Admin. > Email Blocking.

Transact XML does not support organization level suppression

Transact XML only supports global suppression as the design of Transact is to send an email based on some sort of recipient action.

It is up to you to handle your opt outs and undeliverables by exporting these metrics from your reports or you can export the Master Suppression List manually or by using the Engage Export List API.

Note: The Suppression list is built based on opt-outs and undeliverables. If a contact’s email
address is undeliverable (or if they mark your email as abuse via their email service provider), Transact adds their email address to a dedicated list of undeliverable and suppressed email addresses (also referred to as an ‘Org Master Suppression List‘).  

What does STATUS and SEND STATUS mean in Transact XML Responses?

When you are sending Transact mailings, you might receive an XML response from Watson Campaign Automation with both <STATUS> and <SEND_STATUS> tags. Sometimes they are returning different values.

For example, you might see <STATUS>1</STATUS> along with <SEND_STATUS>0</SEND_STATUS> within your response. What do they mean?


Transact allows for including one or more recipients to be sent in one <XTMAILING> request. Through the XML response, Transact sends<STATUS>, which is a description of errors that are generated when processing the submission.


0 – Did not encounter any errors during the send; all recipients sent.

1 – Encountered errors during the send; some or all recipients were not sent.

2 – Encountered errors with the XML submission; no recipients were sent; no recipient error details that are provided, only the request-level error.

That means the <STATUS> value does not display any details about individual recipients. It indicates that the Transact recipients in this request are all sent, partially sent, or none is sent.

For <SEND_STATUS>, it is a recipient-level error code. It signifies the status of the send to the recipient.

0 – No errors were encountered during the send.

1 – Encountered an error during the send, will not retry the send.

2 – Request received; send cached for later send.

When <SEND_STATUS>=1, it means that recipient is not sent and is not going to be retried. For example, you are sending to admin@company.com“, where “admin” is a prohibited email prefix on Watson Campaign Automation Email Blocking list. That email address is always suppressed no matter how many times you retry your request from your end. In this case, we recommend your system capture and read <ERROR_CODE> for details on why this recipient is not sent a mailing.

When <SEND_STATUS>=2 is displayed, it means that recipient is not sent currently because the mail server is not available (normally happens under maintenance a window, or other mail server issues). However, the recipient is sent as soon as the mail server is online and available.

What happens to OAuth authentication during downtime?

OAuth authentication during downtime depends on whether the access tokens are new or if they currently exist and have been validated.

Note: IP authentication will always work in downtime.

Existing Access Tokens

If Transact XML (HTTP) is in downtime, such as during a release, valid OAuth access tokens will authenticate as they should.

New Access Tokens

New access tokens cannot be generated during downtime. This is true for both completely new access tokens, as well as tokens generated due to expiration during the downtime window.

What Version of the HTTP Protocol Does XML API and Transact XML Speak?

In order to have the most widespread compatibility, XML API and XML Transact speak HTTP 1.1.


If you notice that responses returned by Watson Campaign Automation / Transact has broken XML or out of place characters, you should check that you are not using HTTP 1.0 to make your requests.

Will Transact work with my company’s existing IT system?

Transact allows for easy, seamless integration with existing IT systems using our XML API set. Messages can be sent immediately or batched for bulk processing at a scheduled time. Whether you’re sending a few messages at a time or millions, Watson Campaign Automation can handle the load of high-volume sends.

Messages are created in real time and personalized based on your company’s unique business rules. Watson Campaign Automation helps ensure messages reach your customers’ inboxes and provides detailed tracking reports to monitor opens and clicks.


  1. Are hyperlinks submitted within Transact XML code tracked?

    Yes. Transact can track hyperlinks that are submitted within the XML CDATA, using Dynamic Link Leader (DLL) URL encoding. When encoded links are submitted within the XML document, Watson Campaign Automation tracks clicked URLs and the tracked data is available in reports within Watson Campaign Automation.

    Note: This information is used to create trackable links within the XML submission. This information does not apply to links created within the mailing body.

    To configure an XML Submission with tracked links, follow the steps below:

    1. Convert the URLs in the submission to DLL encoded links.
    2. If URLs contain personalization, add elements for each field to the SAVE_COLUMNS section and to the PERSONALIZATION section with the correct value for the recipient.
    3. Make sure that the recipient list contains the fields corresponding to the personalization elements defined in the XML submission i.e. custom fields.
    4. Perform a test send, click links and make sure that the redirected URL contains the correct URL and personalization substitutions.
    5. Check reporting after allowing enough time for the tracking to roll up and display.
    Note: IMC Support specifies the server for the URL.

     Links that are dynamically generated on the sending system are included in the XML using the CDATA tag, in the Personalization section, within a CDATA section.

1 comment on"Transact XML FAQs"

  1. Can i set hard bounces to be undeliverables on an Organisation level, while soft bounce on a list level?

Join The Discussion

Your email address will not be published. Required fields are marked *