Emarsys

SAP Emarsys is an omnichannel customer engagement platform for email, SMS, push, web, and direct mail with AI-driven personalisation.

⚠️

This integration is currently in alpha. Configuration and behaviour may change.

Prerequisites

Complete these steps in Emarsys before configuring Signal.

Access your Emarsys account

Log in to the Emarsys Suite at suite.emarsys.com.

Create API credentials

Navigate to Admin > Security Settings > API Users. Click Create API User and configure:

  1. Give it a username (e.g. datafly_signal).
  2. Generate a password — store it securely.
  3. Assign the Contact Management and External Events permissions at minimum.
  4. Save.

Both the username (Wsse-Username) and password (used to compute Wsse-PasswordDigest) are required by Signal — the Wsse digest is computed automatically for each request.

Find your Customer ID

Your Emarsys Customer ID is shown in Admin > Account Settings. Copy it.

Identify your Contact Field IDs

Emarsys identifies contact fields by numeric IDs (not names). Common IDs:

FieldStandard ID
Email3
First name1
Last name2
Customer ID (external)1234 (custom field — varies)

Navigate to Admin > Field Editor to confirm the IDs for your account.

Configuration

FieldTypeRequiredDescription
api_usernamestringYesEmarsys API username (Wsse-Username).
api_passwordsecretYesEmarsys API password (used in Wsse-PasswordDigest computation).
customer_idstringYesYour Emarsys customer ID.
key_field_idstringNoNumeric field ID used as the contact key. Defaults to 3 (email).

Signal Setup

Quick Setup

  1. Navigate to Integrations in the sidebar.
  2. Open the Integration Library tab.
  3. Find Emarsys under the Marketing Automation category.
  4. Click Install, and fill in the required fields with the credentials gathered above.
  5. Click Install Integration.

API Setup

curl -X POST http://localhost:8084/v1/admin/integration-catalog/emarsys/install \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Emarsys",
    "variant": "default",
    "config": {
      "api_username": "datafly_signal",
      "api_password": "xxxxxxxxxxxxxxxxxxxx",
      "customer_id": "12345",
      "key_field_id": "3"
    },
    "delivery_mode": "server_side"
  }'

Event Mapping

Datafly EventEmarsys ConceptNotes
pageExternal eventSent via Trigger External Event API.
Product ViewedExternal eventForwarded with product properties.
Order CompletedExternal event with revenueMapped to a revenue-bearing external event.
identifyContact updateCreates or updates the contact via Contact API.

Identity

FieldSourceNotes
key_field (email by default)traits.emailThe contact key. Field ID 3 by default.
firstNametraits.first_nameMaps to Emarsys field 1.
lastNametraits.last_nameMaps to Emarsys field 2.

Emarsys events should be sent under the marketing consent category. Emarsys maintains its own opt-in/opt-out records — Signal forwards the visitor’s CMP consent state so contact updates can include opt-in field changes when appropriate.

Verify it’s working

  1. Trigger a test event from your website.
  2. In Emarsys, navigate to Contacts > Search and look up the test contact by email.
  3. View the contact’s External Events history to confirm Signal-delivered events.
  4. In Signal, check Live Events to confirm delivery with a 200 response status.

Troubleshooting

SymptomPossible CauseResolution
401 UnauthorizedInvalid Wsse credentialsVerify the API username and password in Admin > Security Settings > API Users.
500 InvalidKeyFieldkey_field_id doesn’t match Emarsys schemaCheck the field ID in Admin > Field Editor and update the config.
Contact not createdMissing required fieldsEnsure events include an email (or the field you configured as key_field_id).
External event not triggering automationEvent name not registeredExternal event names must be pre-registered in Emarsys before they can trigger automations.

Visit Emarsys API documentation for full reference.

See also