Skip to main content
Soft identification, sometimes called “soft login” or “soft ID”, allows identification of a contact who has arrived at a webpage via an email link. When your Customer Engagement environment is configured for soft identification, an encrypted JSON is sent in the link’s query string, which has the following form:
In this data is contained all the information needed to identify the contact and present them with a personalized web experience. When decrypted, the JSON has the following structure:
  • contactId: The unique ID for the contact in Customer Engagement, used for subsequent API-calls to get all relevant information about a contact
  • email: The contact’s email address
  • id: The contact’s identification key as defined in Customer Engagement (for example, “email”)
  • dateTime: The time and date the link was generated (V.5)
  • discoveryKey: The contact’s identifier for Voyado Product Discovery (optional)
To include the discoveryKey from Voyado Product Discovery, ask your Voyado team to set it up for you.
Be careful about the access a user is granted via a soft login. A soft login link is a convenient method of identification but it can also be easily shared in error, for example by a user forwarding an email containing the link to a friend.

Decoding the message

1

Extracting the value

Extract the value string from the parameter “eClub”
2

Decoding the string

Decoding the string from URL-safe Base64”:
  • Replace all “-” with “+”
  • Replace all “_” with “/”
  • Add padding characters, based on the length
  • Decode the string using normal Base64 decoding
3

Extracting the data

The initialization vector is stored in the first 16 bytes; the remainder is the encoded message”
4

Decrypting the message

With the shared key and initialization vector from step 3, decrypt the message using AES-256 (CBC)

Encoding the message

1

Data format

The data is sent as a JSON with the structure shown in the example above.
2

Encrypting data

This JSON string is then encrypted using AES-256 and the shared key which both the customer and Voyado have (it was exchanged during implementation) and a unique initialization vector for each message.
3

Preparing data

The initialization vector and the encrypted string are concatenated, Base64 encoded and modified for URL inclusion (URL-safe Base64).
4

Sending data

The complete encoded string is then sent as the query-string parameter “eClub”.
The shared key used is 32 characters long, using no special characters, only a-z, A-Z, 0-9.
An example of such a key is: DaqfT7Ys6tGqM3zbesEKpmacTJEqBCp2. There are online tools available for creating keys, such as Strong Random Password Generator.