7th May 2021


Everything to know to use Talon.One efficiently.

How can I add custom attributes to coupons?

  1. Open Account > Dev Tools > Attributes > Create attribute.
  2. In Associated Entity, select Coupon. This makes the attribute a coupon attribute.
  3. You should enter the remainder of the necessary information and save your new attribute.

You can now use this attribute inside the Rule Engine to trigger effects based on the attribute of your coupon.

How does Talon.One manage customer instances?

Each customer's data is isolated from others. Each customer has triple redundant deployment instances of the Talon.One API and application server for data protection.

On database-level, Talon.One uses twice redundant servers in warm-standby to ensure high availability of the API.

For more information, see Server infrastructure.

Why doesn't Talon.One support Google Tag Manager?

Only using Talon.One via the browser isn't recommended for a few reasons:

  1. Requests from browsers can be falsified. Traffic from browsers cannot be trusted. For instance, a customer can send a fake request to a game promotion claiming they are someone else.
  2. Your server manages actions such as discounts applied to orders and item prices. Because server calls must be made, Talon.One cannot only be called via the browser.

You can track special actions with browser JavaScript in Talon.One, if necessary. However, avoid rewarding customers for behaviors they can fake.

Where can I find the requests sent to Talon.One?

In the Campaign Manager, open Account > Dev Tools > API Log, or open (your subdomain).talon.one/developer/api_log.

What's the best practice regarding all opened sessions? Should these be destroyed?

You don't have to destroy any session.

The usual flow is:

  1. When a user enters a page/app, create a session using the user-id as session identifier.
  2. At the end of the user's journey (creating a cart, registration/login, checkout process), the user clicks on checkout. At this stage, trigger a final Update a Customer Session request containing: "state": "closed".

For more information about states, see the Integration checklist.

How does Talon.One process cart contents?

For example, a user has 2 products in his cart: business carts and booklets.

The cart must be sent using the cartItems array in the payload when you update a user session.

Within this array, each item is an object with multiple attributes (built-in and custom ones). In this case, let's assume the item category of item A is "category": "businesscards. The category of item B is "category": "booklets".

Now, you can create a condition based on the category, for example if category equals booklets.

If you use a coupon code, created or imported in Talon.one, close the session in which the coupon code was used. Closing the session marks the coupon code as redeemed in Talon.One.

If you want to disable a coupon code without user interaction, open an anonymous session containing the coupon code. After creating this session, close the session to trigger the coupon redemption in the backend.

Is a new customer session required for every step of the customer during their journey?

No. Open a session when a user enters your site and close it after their journey is complete. You can leave the session open if the user disconnects or leaves the page and open the same session again after the user reconnects.

In other words, one journey (containing all user interactions) for one user must be represented as one session.

Further information:

How are sessions handled after an anonymous user has logged in?

  1. When an anonymous user enters the page, create a session using the userID or an empty string as the profile ID.
  2. After the user's logged in, change the profile ID in the current session to the user's customerID.

The session is now connected to this logged-in user.

We recommend calling the Update a Customer Profile for every change in the user profile to keep the user information stored in Talon.one updated.

Are coupon codes always unique, or can they be used multiple times across different campaigns?

The coupon codes are always unique in one application and can never be generated twice across different campaigns.

Should I transfer the same session payload for every call of Update customer session?

No. Everything you once pass in a session stays in the session until you overwrite it with different values. As long as you don't send empty parameters like: “cartitems”: [], parameters will not be overwritten.

What is the difference between the AdvocateProfile entity and the Profile entity?

If you have an active referral campaign you can use the advocate's profile entity to get data from the advocate of the current user.

Is there a limit on the number of parallel opened sessions per customer profile?

No, There is no limit.

How many times is a webhook retried after receiving a timeout or a 500 error?

A webhook is retried 10 times.

Can you import existing coupons into Talon.One?

You can upload coupons into Talon.One over API using the coupon import endpoint.

You cannot upload the codes in the frontend at this point.

Is the validation of coupon codes case sensitive?

You can set this during the application creation step. It can be either: sensitive, insensitive-uppercase or insensitive-lowercase.

Is it possible to set a daily redemption limit of coupon codes?

You cannot create time-dependent budget limits at the moment.

Use the Management API in combination with a cronjob to increase the limit (+1000) of a campaign at midnight.

Can I clear/delete all the data of a campaign or an application?

To delete a campaign:

  1. Click Apps and open the campaign to delete.
  2. Click Settings > Delete and click the Delete button.

To delete an application:

  1. Click Apps and select the application to delete.
  2. Click Settings > Delete and click Delete Application.

What timezone should I use in my API calls?

Certain properties in the API expect timestamps, like the createdBefore property in various GET endpoints. You can use any timezone. Talon.One will convert it to UTC internally.

Still need help? Get in touch!
Last updated on 7th May 2021

Was this article helpful?

Thank you! You have already voted

If you’d like a member of our support team to respond to you, please send a note to support@talon.one