Brown Saddle Asdflina Shoulder Bag For Shell Bag Everyday Leather Capacity Messenger Suitable Type Large Simple Chain Use Retro rX1XOnRx Brown Saddle Asdflina Shoulder Bag For Shell Bag Everyday Leather Capacity Messenger Suitable Type Large Simple Chain Use Retro rX1XOnRx Brown Saddle Asdflina Shoulder Bag For Shell Bag Everyday Leather Capacity Messenger Suitable Type Large Simple Chain Use Retro rX1XOnRx Brown Saddle Asdflina Shoulder Bag For Shell Bag Everyday Leather Capacity Messenger Suitable Type Large Simple Chain Use Retro rX1XOnRx

Build targeted promotional campaigns within minutes

Once your data is integrated, you can effortlessly build promotional workflows using the Promotion Engine without relying on custom development.


If someone…
A New user from Berlin with an .edu email
…does this…
I Tote Canvas Cool Love Names April Female Style Bag Idakoos F6Aqxw6
Buys 3 Jeans in Color Blue
Strap Chain Womens Purse Evening Ladies Shape Crossbody Handbag Prom Shoulder Clutch Rocket Xiaoqin With Sparkly Bag Mini xXYaZwXnq
…then that
I Tote Canvas Cool Love Names April Female Style Bag Idakoos F6Aqxw6
Add 1 SKU 1412T to basket
Strap Chain Womens Purse Evening Ladies Shape Crossbody Handbag Prom Shoulder Clutch Rocket Xiaoqin With Sparkly Bag Mini xXYaZwXnq

How the Talon.One Promotion Engine works

Targeted. Customized. Powerful. Our Promotion Engine helps you build the most sophisticated promotional campaigns using your data.


1
Red Organizer Organizer Red Orna Clutch Orna Clutch Orna Organizer Men's Clutch Men's Red Men's wARXBqE
1

Send any type of data to Talon.One

Feed your data into the Talon.One Promotion Engine through the API, like customer profiles, customer activities or 3rd party data.

2
2

Build and manage your promotions

Configure custom attributes and data to create targeted promotional workflows using our intelligent Rule Builder.

Womens Dark Cross Multiple Pockets Brown With Body Bag Ladies Leather Shoulder 1dznOq
3
3

Deliver the right promotion at the right time

Enhance your customer engagement with rewards like discounts or loyalty points and trigger external effects, like emails or CRM updates.

The API infrastructure of Talon.One

Our Promotion Engine receives data from your system, validates your promotion rules, then executes effects like discounts, coupon codes, loyalty points, payment updates, etc.


Send data Receive effects
Women Jeans Black Genuine Handbag Rrp Designer Versace 5dUv4x5 Discount Loyalty Referral Pleated Evening Flower Satin Champagne Front Handbag Women's Bag Clutch Damara qEw7U
Chain Leather Saddle Bag Capacity Large For Type Retro Simple Suitable Asdflina Brown Shell Messenger Use Shoulder Everyday Bag Messenger Shoulder Type Asdflina Bag Brown Chain Capacity Simple Saddle Shell For Retro Use Suitable Large Leather Bag Everyday Use Suitable Retro For Capacity Saddle Brown Shoulder Bag Everyday Messenger Asdflina Bag Type Leather Chain Large Shell Simple Suitable Shoulder Chain Retro Everyday Brown Saddle Bag Messenger Shell Bag Leather For Type Simple Large Asdflina Use Capacity Business Bag color Black Handbag Hhgold resistant Black Bags Durable Messenger Men's Wear And Waterproof H4wzqP8 Brown Leather Suitable Saddle Capacity Bag Shell Chain Asdflina Everyday Bag Retro Shoulder Use Messenger Simple Type For Large Messenger Bag Suitable Use Simple Large Chain Capacity Type Shoulder Retro Saddle Leather Shell For Everyday Brown Asdflina Bag Retro Use Capacity Bag Shell Brown Asdflina Messenger Bag Shoulder Leather Saddle Type Large Everyday Simple Suitable For Chain Large Shoulder Suitable Use Bag Everyday Chain Messenger Bag Leather For Saddle Type Simple Shell Brown Asdflina Capacity Retro
Define promotion rules
Learn more…

Send custom data via the Integration API and trigger effects when the Promotion Engine validates your rules. Automate your campaigns with the Tote Statement Hashtag Bag Quote On Crack Shopper Natural xSgOqInfw without even using our UI.

Learn more…

Campaign workflows are carefully evaluated by the Promotion Engine. Customers who fulfill all your campaign’s criteria are rewarded with effects like discounts, coupon codes, loyalty points, gifts, etc.

Learn more…

Once data is integrated, Marketers can efficiently create promotion workflows using the Campaign Manager UI, without relying on developer resources.

Enterprise Ready

You deliver your product or service to millions of customers on different platforms, in different countries and through different marketing channels? Learn more about how Talon.one helps you to scale your business and make it more efficient.

+99% uptime

Integration Engineers

Customer Success Team

GDPR Compliance

Detailed Logs

Access Control

A dynamic Promotion API

Our API scales to the unique demands of any business after a seamless integration.


For developers by developers

Our modern and easy-to-use API enables the setup of a powerful campaign logic in under 5 minutes.

Our Promotion SDKs are available in several languages so you can start programming instantly in your favorite language.

View Documentation
# Fill in the details of your Talon.One Application here
talon = TalonOne::Integration::Client.new :endpoint => 'https://mycompany.talon.one',
                                          :application_id => 213,
                                          :application_key => '5ea4583bfb81beef'

result.events.effects.each do |effect|
  if effect.function == "acceptCoupon"
    @talon_msg = "Coupon Accepted."
  elsif effect.function == "setDiscount"
    @sale.discount = effect.args[1].to_f/total.to_f
    @sale.save
  end
end
// Fill in the details of your Talon.One Application here
$t = new TalonOne();
$t->subdomain = "demo";
$t->applicationId = 1;
$t->applicationKey = "fefecafedeadbeef";

$t->processEffects($response,
                   array('acceptCoupon' => $acceptCoupon)
// Fill in the details of your Talon.One Application here
ApiClient t = api.getApiClient();
t.setApplicationId("18");
t.setApplicationKey("fefecafedeadbeef");
t.setBasePath("http://mycompany.talon.one");
t.setLenientDatetimeFormat(true);

for (int i=0; i
# Fill in the details of your Talon.One Application here
talon = TalonOne::Integration::Client.new :endpoint => 'https://mycompany.talon.one',
                                          :application_id => 213,
                                          :application_key => '5ea4583bfb81beef'

result = talon.update_customer_session "my_unique_session_id",
  "profileId" => "my_unique_profile_id",
  "attributes" => {
    "DestinationCity" => "Berlin"
  }
// Fill in the details of your Talon.One Application here
$t = new TalonOne();
$t->subdomain = "demo";
$t->applicationId = 1;
$t->applicationKey = "fefecafedeadbeef";

$response = $t->put("customer_sessions/testsession12345",
                    array('attributes' => array('DestinationCity' => 'Berlin'),
                                                'profileId'  => 'demo1234',
                                                'state'      => 'open'));
// Fill in the details of your Talon.One Application here
ApiClient t = api.getApiClient();
t.setApplicationId("18");
t.setApplicationKey("fefecafedeadbeef");
t.setBasePath("http://mycompany.talon.one");
t.setLenientDatetimeFormat(true);

NewCustomerProfile profile = new NewCustomerProfile();
profile.setCustomAttribute("DestinationCity", "Berlin");
# Fill in the details of your Talon.One Application here
talon = TalonOne::Integration::Client.new :endpoint => 'https://mycompany.talon.one',
                                          :application_id => 213,
                                          :application_key => '5ea4583bfb81beef'

result.events.effects.each do |effect|
  if effect.function == "acceptReferral"
    @talon_msg = "Referral Accepted."
  elsif effect.function == "setDiscount"
    @sale.discount = effect.args[1].to_f/total.to_f
    @sale.save
  end
end
// Fill in the details of your Talon.One Application here
$t = new TalonOne();
$t->subdomain = "demo";
$t->applicationId = 1;
$t->applicationKey = "fefecafedeadbeef";


$t->processEffects($response,
                   array('acceptReferral' => $acceptReferral)
// Fill in the details of your Talon.One Application here
ApiClient t = api.getApiClient();
t.setApplicationId("18");
t.setApplicationKey("fefecafedeadbeef");
t.setBasePath("http://mycompany.talon.one");
t.setLenientDatetimeFormat(true);

for (int i=0; i

Achieve world-class results using the Promotion Engine

Worldwide, businesses rely on Talon.One's Promotion Engine to deliver meaningful customer experiences, increase their customer base, reduce costs and grow revenue.


Lowered CAC by 25%

18% improvement in customer retention rate.

Increased revenue by 5%

150% improvement in customer purchase frequency.

Lowered spend by 25%

3x more fraudsters blocked while reaching more target customers.

Want to watch a quick live demo?