Bounce-back Promotions¶
Bounce-back promotions are a promotion type that entice a customer to "bounce back" or return to buy more from the retailer at a later date or time in the future. Unlike a regular promotion where the qualification and reward are in the same transaction (i.e. I buy $100 in a transaction and get $10 off that transaction), in a bounce-back promotion, the customer qualifies for the reward in transaction A and the reward is provided for some future transaction B. Bounce-back promotion rewards are typically provided to the customer via a coupon (printed on a receipt), provided as an electronic coupon, or via a customer specific reward that can be prompted and accepted or declined at checkout.
Bounce-back Promotion Setup¶
Bounce-back promotions are created by defining two promotions, the first promotion (Promotion #1) defines the qualifications needed to obtain the bounce-back reward. The reward definition on Promotion #1 contains a bounce-back (PROMO_CODE) reward, but can also provide other non bounce-back rewards as well. The second promotion defines the reward that will be obtained by using the bounce-back reward. In the example below, Promotion Definition #1 defines a promotion that states if the customer purchases $100 or more of Dept 10 merchadise, excluding Class 5 merchandise, then the customer will receive a bounce-back reward of $10 on a future purchase. Transacation A represents a transaction where this bounce-back reward was achieved and presented to the customer on the receipt. Promotion Definition #2 reporesents the value of the bounce-back reward. The bounce-back reward can leverage any reward type including AMT, PCT, PRICE, PRICE_TOTAL, etc. Additional restrictions can also be added to the bounce-back reward definition in Promotion Definition #2 including additional qualifications (i.e. you must have a $10 in your basket to use the bounce-back reward, etc.)

The full capabilities of the promotion engine can be leveraged in bounce-back promotion definitions, both for the promotion that defines what it takes to get the bounce-back reward (Promotion Definition #1 in the example) as well as the promotion that defines what the bounce-back reward provides (Promotion Definition #2 in the example).
The unique aspects of bounce-back promotion setup are as follows:
| Promo Defn # | Component | Description |
|---|---|---|
| Promotion Definition #1 | Reward | Reward type code must be "PROMO_CODE" |
| Promotion Definition #1 | Reward | Reward value is not set (null) |
| Promotion Definition #1 | RewardPromoCode | A new RewardPromoCode definition must be set up and associated with the Reward to dictate how the instance of the bounce-back reward will be created |
| Promotion Definition #2 | Reward | Define the reward for the bounce-back reward itself |
Returns¶
In a standard promotion, the reward is applied in the same transaction in which it was qualified. This makes the return process simpler and more straight forward because as soon as the reward is applied, the reward amount is proprated appropriately to one or more items in the current transaction, and if any items in the transaction are returned, the customer receives back the prorated value for the return. For example, a standard promotion definition of Buy $100 in a transaction and get $10 off of that transaction with a sample transaction of 5, $20 items translates as follows:
| item # | Regular Price | Discount | Return Price |
|---|---|---|---|
| 1 | $20.00 | $2.00 | $18.00 |
| 2 | $20.00 | $2.00 | $18.00 |
| 3 | $20.00 | $2.00 | $18.00 |
| 4 | $20.00 | $2.00 | $18.00 |
| 5 | $20.00 | $2.00 | $18.00 |
However, if the same promotion is defined with a bounce-back reward, the transaction looks as follows and the return value becomes more complicated.
| item # | Regular Price | Discount | Return Price |
|---|---|---|---|
| 1 | $20.00 | $0.00 | $20.00 |
| 2 | $20.00 | $0.00 | $20.00 |
| 3 | $20.00 | $0.00 | $20.00 |
| 4 | $20.00 | $0.00 | $20.00 |
| 5 | $20.00 | $0.00 | $20.00 |
If the customer returns one of the above items, they no longer qualified for the bounce-back regardless of whether they have already used it or not. The following flowchart describes how returns are handled for transactions that resulted in a bonce-back promotion being given.

Bounce-back Reward Transaction Data¶
Promotion activity is stored in sales/transaction tables for any promotion that applies to a transaction. The RetailTransPriceModifier and RetailLineItemPriceModifier models both store detailed information about promotions that where rewarded in a transaction. In addition to these models, the PromoCodeLiineItem model stores information about bounce-back rewards that were EARNED, REDEEMED or INVALIDATED as part of a transaction.
| Element | Description |
|---|---|
| deviceId | The device on which the transaction occurred (transaction key) |
| businessDate | The business date on which the transaction occurred (transaction key) |
| sequenceNumber | The sequence number for the transaction (transaction key) |
| promoCodeId | The unique id for the bounce-back reward acted upon in this transaction |
| origiinPromotionId | The promotionId that originated the bounce-back reward acted upon in this transaction |
| rewardPromotionId | the promotionId that defines the reward for the bounce-back reward acted upon in this transaction |
| code | The numeric code (can be represented as a barcode) for the bounce-back reward acted upon in this transaction |
| promoCodeEventType | The event that happened for the bounce-back reward acted upon in this transaction (EARNED, REDEEMED, INVALIDATED) |