Skip to main content

Fetching loyalty ledger in Iterable

This is a guide to integrating Iterable with Talon.One. This guide will walk you through setting up and using the Talon.One endpoint that Iterable uses to receive Loyalty Ledger information for a particular user.

After setup, Iterable will be able to automatically request user-specific loyalty ledger information directly from Talon.One. For example, you can send an email that dynamically populates the number of loyalty points each customer has accrued.

Talon.One requirements

  1. You have an Application and campaign in Talon.One.
  2. You have a least one customer profile in Talon.One. This profile also exists in Iterable.
  3. You have set up a loyalty program for your Application. For more information, see the Product docs.
  4. Your loyalty program contains awarded points.

Iterable requirements

  1. You have created a campaign and template.
  2. You have a way to identify a given customer across Talon.One and Iterable. In this tutorial, we assume a customer's Talon.One integrationId also exists in Iterable. For example, You can create a new property on your Iterable customer profiles called talonone_id to store Talon.One's integration ID.

Creating 3rd-party API key

Let's generate a Talon.One API key that we will use for a 3rd-party service, in our case, Iterable.

  1. In your Talon.One Application, click Settings > Developer settings.

  2. Click Create API Key.

  3. For Do you want to use this API Key with a 3rd party service?, select Yes.

  4. From Platform, select Iterable.

  5. Select an expiration date, and click Create API Key.

  6. Copy the key for later use.


    You cannot display the API key after this step. If you lose the value, create a new API key.

The integration endpoint for loyalty

To get the loyalty information of the given customer in Iterable, we call the following endpoint:

GET loyalty

See API Docs

Generating the URI

Generate the URI with the following form.

  • You can use Iterable field values in the URI using the {{my_field_value}} notation, for example &recipientIntegrationID={{id}}.
  • Iterable supports campaign-related merge parameters, such as {{campaignId}} and {{campaignName}}, which are generated at campaign send time.

You can now use this URI inside Iterable.

Configuring Iterable

Creating a data feed

In Iterable, create a new data feed to retrieve the loyalty information:

  1. Click Content > Data Feeds > Create New Feed.
  2. Choose a name, for example Talon.One loyalty.
  3. In URL, paste the generated URI.
  4. Set Format to JSON.
  5. In Authorization token, type ApiKey-v1 and enter the API generated earlier.

Creating a template and linking the data feed

  1. Create an Iterable template that will be used for your marketing campaign.

  2. In the Advanced Options tab, select your Talon.One data feed.

    For more information about data feeds, see the Iterable docs.

  3. Reference the loyalty information in the email template by using square brackets and based on the response structure shown in the example above. For example, you can display the user's current balance with: [[ledger.currentBalance]].

    See the Iterable Docs.

  4. Check the template and placement of the data feed response by using the Preview with data tool.

  5. Click Load template feed to bring the data feed response data into the template.