# QSR & dining

> Talon.One fits seamlessly into the QSR & dining ecosystem. It empowers brands to design and operate loyalty programs, personalized offers, referrals, and promotions across apps, kiosks, and delivery channels.

This page outlines integration approaches and use cases tailored to quick-service
restaurants and coffee chains.

## Use cases

### Loyalty programs

Use [loyalty programs](/docs/product/loyalty-programs/overview.md) with points,
[tiers](/docs/product/loyalty-programs/profile-based/use-loyalty-tiers.md), and
[stamps](/docs/product/achievements/overview.md#recurring-on-completion-achievements)
to reward frequency and drive next visits. Configure incentives in campaign
[rules](/docs/product/rules/overview), then issue free item rewards as [coupon
codes](/docs/product/campaigns/coupons/create-coupons.md). For example, create a loyalty
program where customers earn 10 points per dollar spent. After they reach 500 points, they
receive a coupon for a free beverage. Use tiers to offer silver members double points,
while gold members get free delivery for app purchases.

### Gamification

Use [achievements](/docs/product/achievements/overview.md) to
create challenges that reward desired behavior with a specific reward. Award badges or
bonus points with scheduled and conditional [rules](/docs/product/rules/overview.md), and
expose progress via [Integration API][iapi] effects to motivate completion at kiosk or app
checkout. Limit frequency and rewards per customer to avoid overuse.

For example, set up a daily purchase streak where the first consecutive day earns 20
points, the second day 30 points, and so on. After 5 days, they have earned 200 points,
which they can redeem for a free pastry. Notify customers of their progress via in-app
messages or email to encourage them to complete the challenge.

### Referrals

Every customer gets a unique [referral
code](/docs/product/campaigns/referrals/referral-overview.md) they can share with friends.
Once redeemed, Talon.One links the [advocate and
friend](/docs/product/tutorials/loyalty/loyalty-points-for-referral.md), allowing
differentiated rewards for each. This allows you to reward both parties for actions such as
the initial purchase, visit milestones, or future engagement.

For example, grant the advocate 50 loyalty points after the friend's first completed order
and give the friend a free drink coupon that they can redeem on their next visit.

### Personalized offers

Use [customer profile data](/docs/product/applications/display-customer-profiles.md)
and [order history](/docs/product/applications/display-customer-profiles.md#sessions)
to set up targeted incentives. Use [rules](/docs/product/rules/overview.md) to tailor
offers to the time of day, delivery channel, and preferences. Track the customer's response
with [events](/docs/dev/concepts/entities/events.md) to refine targeting and measure uplift.

For example, latte buyers receive a morning pastry discount, while late-night app
orders get a delivery fee waiver.

### Promotions

Offer combo [bundles](/docs/product/tutorials/sample-campaigns/bundle-campaign.md) like a
$5 meal deal to encourage purchases. Create [rules](/docs/product/rules/overview.md) to
nudge customers toward higher-margin items, promote new menu entries, or drive traffic
during off-peak hours. Use per-customer or per-store
[budgets](/docs/product/campaigns/settings/manage-campaign-budgets.md) to protect
margins during peak periods.

For example, run a limited-time "$5 burger, fries, and drink" bundle that only applies
during weekday afternoons, with per-store campaign budgets to cap the total discount
issued at each location.

### Store-based offers

Talon.One supports multi-location QSR brands with varying ownership models. Use
[stores](/docs/product/applications/display-stores.md) to segment campaigns by
location. Set [budgets](/docs/product/campaigns/settings/manage-campaign-budgets.md) at
the store level to control local spending, while maintaining brand-wide loyalty programs.
This allows a corporate business to run national promotions while individual franchisees
can create location-specific offers without impacting each other's budgets or inventory.

For example, configure a national breakfast loyalty offer that applies to all stores while
allowing individual franchisees to add a local "kids eat free on Tuesdays" promotion
limited to their own store.

## API endpoints

The [Integration API][iapi] is the primary API for real-time interaction with Talon.One.

The endpoints you work with depend on your use case, but these are generally the most relevant
endpoints for QSR & dining integrations:

| Endpoint                                                                                                            | Purpose                                                                                                           | Example                                                                                                                                                                                                                                                                                                                    |
| ------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Update customer session][iapi-update]                                                                              | Keep Talon.One in sync with a customer's order session, including items, quantities, and applied codes.           | As a customer builds a combo meal in your app, you update the session with the current items and total. Talon.One can evaluate upsell or bundle rules and return discount effects that you then apply to the order. This lets campaigns react instantly to cart changes and drive dynamic offers during the ordering flow. |
| [Track event][track]                                                                                                | Send real-time customer actions, such as app registrations, from your system to Talon.One.                        | Record a customer's first app sign-in or profile completion so you can automatically trigger a welcome reward or bonus loyalty points.                                                                                                                                                                                     |
| [List customer data][inventory]                                                                                     | Retrieve all Talon.One-managed data for a customer, such as their profile or loyalty information.                 | Determine that a customer has earned 500 loyalty points and is in silver tier. This allows you to surface eligible offers, for example a free side or drink, and let them redeem directly in the ordering flow.                                                                                                            |
| [List customer's loyalty transactions](/integration-api#tag/Loyalty/operation/getLoyaltyProgramProfileTransactions) | Fetch a customer's historical loyalty activity so you can display a points history and support service use cases. | Show a customer of your app that they recently earned 1000 points and spent 800 of them on a combo meal. This helps them understand how their balance was built and used over time.                                                                                                                                        |

## Concepts

Here's how Talon.One concepts map to typical QSR & dining concepts:

| Talon.One                                                                  | QSR & dining                                                                                                                                                                    |
| -------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Customer session](/docs/dev/concepts/entities/customer-sessions.md)       | A customer order session. For example, a customer building an order in your app, at a kiosk, or at a drive-through.                                                             |
| [Event](/docs/dev/concepts/entities/events.md)                             | A single occurrence of a customer action, for example, registering in your app.                                                                                                 |
| [Shop system](/docs/product/overview.md)                                   | The ordering system or delivery app integrated with Talon.One.                                                                                                                  |
| [Cart items](/docs/product/account/dev-tools/manage-cart-item-catalogs.md) | Menu items added to an order. For example, cappuccino, fries, pastries. Each item can include attributes like category (`Beverage`, `Dessert`), size, or customization options. |
| [Custom attributes](/docs/dev/concepts/attributes.md#custom-attributes)    | Menu-specific or order metadata (for example, `isVegan` or `deliveryMethod`).                                                                                                   |

[iapi]: /docs/dev/integration-api/overview.md
[track]: /integration-api#tag/Events/operation/trackEventV2
[iapi-update]: /integration-api#tag/Customer-sessions/operation/updateCustomerSessionV2
[inventory]: /integration-api#tag/Customer-profiles/operation/getCustomerInventory
