Applying offers

Learn how to identify and apply active offers for a member in a point-of-sale or ecommerce environment.

Overview

This article explains how to apply Offers a user is eligible for to a transaction in a point-of-sale system or ecommerce store.

Offers are always on and do not require redemption by the user. They should be automatically applied when the user’s loyalty ID is identified.

Example offers:

  • 10% off all transactions

  • 20% off a specific SKU

  • $5 off when you spend $30 or more

In the Loyalty Engine, Offers differ from Vouchers in that Offers are designed to be automatically applied at POS and do not require the user to first acquire or redeem a Voucher.

Offers can also be targeted to specific Audiences — for example, giving all users in a Staff Audience a 10% discount on all their purchases. The Loyalty Engine handles the segmentation and offer eligibility, and returns any offers a user is eligible for via the GET /rewards endpoint when called as a user.

For more details on how offers work conceptually, see the Offers section in our Product Docs.


Implementation steps

1

Identify the member

Retrieve the member’s loyalty ID via POS (e.g. scanning a QR code or manual entry).

For ecommerce platforms, ensure the user is logged in and authenticated.

2

Get the user’s offer list

Call the GET /rewards endpoint on the WLL Rewards API as the user (or via user impersonation).

Filter the results to type: offer.

The response will include a list of active offers the user is eligible for, and their associated discounts objects.

3

Apply discounts in POS

Use the discounts object from each returned offer to determine what discount to apply (e.g. percentage, fixed amount, SKU-specific).

Apply any relevant discounts automatically within your POS or ecommerce checkout logic.

See Processing discount objects for more information.

4

Report discounts in the transaction payload (optional)

If your integration reports transactions to the Loyalty Engine, include any discounts you applied in the transaction payload.

You can:

  • Include the applied discount amounts under the relevant tenders, or

  • Add each discount as a line item.

Including the offer name and/or ID is recommended for tracking offer usage and performance.

Last updated

Was this helpful?