How can we help?

Contact management


Contacts are the foundation of your database. They're the people you communicate with through channels in your Cordial account.

Each contact is represented as a record in your database that's uniquely identified by its primary or secondary identifier keys, which are determined during implementation.

Your account can use multiple contact identifiers, including custom values you may currently use across other platforms.

If your account was set up with email address as the primary key and you wish to make a change, please submit a support request for instructions on changing the primary key to a different value.

Subscribe status

Contacts can be associated with multiple channels (email, SMS, push, etc.), with each channel containing a subscribe status of either Subscribed, Unsubscribed, or None. SMS contacts who have not completed the double opt-in process will have the subscribe status of pendingDOI.

Messages classified as promotional are only sent to subscribed contacts. Transactional messages are sent to contacts with any subscription status. This enables you to send transactional messages, like order confirmations and password resets, to contacts even if they aren't subscribed to your promotional communications. 

How Cordial stores contacts

A contact is stored as a record in the Contact Collection that contains all data related to that contact. This data can be used when building audiences for segmentation, triggering message sends, personalizing message content, and building reports.   

A contact record may contain:

  • Channel association (set by Cordial)
    • Email address
    • SMS number
    • Device IDs
  • Contact attributes (added by the client)
    • First name
    • Last name
    • Address
  • List association (added by the client)
  • Cart items (added by the contact)

All event data (contact activities) associated with a contact is stored in the event data collection.

Contact record example

Below is a simple example of how a contact is stored in the Cordial database as a JSON object. (Some data has been omitted for easier viewing.) List association and cart items are also part of the contact record.

In the following example, the reserved channel attribute contains the email address. The custom attributes contain address (a geo attribute), first name, last name, age, and birthday. The lists attribute contains the contact's list association.

    "channels": {
      "email": {
        "address": "",
        "subscribeStatus": "subscribed",
        "unsubscribedAt": ""
    "firstName": "Garvin",
    "lastName": "Fred",
    "age": "46",
    "birthday": "2001-05-22T07:00:00+0000",
    "address": {
      "street_address": "555 Truss Ave",
      "postal_code": "92108",
      "country": "United States of America",
      "state": "CA",
      "city": "San Diego",
      "tz": "America/Los_Angeles",
      "loc": {
        "lat": "32.7773",
        "lon": "-117.1008"
      "countryISO": "US",
      "auto": false
    "lists": [

View contact record from the Contact Profile page

1. Log in to Cordial and navigate to Contacts > Contact Profile and select the contact from the Select Contact pop-up.

2. Select View As JSON at the top of the Contact Profile page.

View contact record during message creation

During message creation you can use the Smarty utility JSON Pretty Print to view the contact record in JSON format.

Paste the below code into the HTML editor of your message and click Preview. From here, you can view the specified contact's record with all attributes, list association, and cart items (if available).


In the next article, you can learn how to import contacts.



Please sign in to leave a comment.