Behavioral Action Campaigns
Overview
Behavioral Action (Trigger) campaigns reward customers for engaging with your brand outside of a purchase. When a customer completes an action, such as writing a product review or following your brand on social media, your system tells AIR this interaction has happened and the customer receives a reward.
In AIR, an SBA campaign is a campaign with type BEHAVIOURAL_ACTION and offer type NON_TRANSACTIONAL. It defines an action your system can trigger, and the reward the customer gets when you do.
| Reward Type | Customer Impact |
|---|---|
| Points | Receive points straight into their points account |
| Points optionally, with tier contributions | Receive points and progress toward the next loyalty tier |
| Coupon | Receive a coupon in their wallet |
| Zero reward | Action is recorded but pays nothing; used as an objective in a Quest |
| Stamp card | Receive one or more stamps on a stamp card campaign |
How SBA Campaigns Work
- You create an SBA campaign with a unique Action Reference and a reward.
- A customer completes the action outside AIR (for example, they follow your brand on social media).
- Your system calls the Triggers endpoint with the customer's
identityValueand the Action Reference. - AIR finds the matching trigger, creates and redeems a Behavioral Action account in the customer's wallet, and issues the reward.
AIR does not connect to any external platforms directly to detect customer actions. It is the responsibility of the retailer or a connected system, such as a Customer Data Platform, to detect the action and make the call to AIR.
Key Definitions
| Term | Definition |
|---|---|
| Action | The customer behaviour you want to reward, for example Like_Facebook_Post_Summer_Vacation. |
| Action Reference | The unique identifier your system sends to trigger the action. |
| Trigger | The API call that tells AIR a customer completed an action. |
| Behavioral Action account | The account AIR creates in the wallet when an action is triggered. It is created and redeemed in the same call. |
| Points Scheme | The scheme the reward points are credited from. |
| Rewards per Customer | The limit on how many times each customer can earn the reward. |
| Tier Membership Contributions | Optional points and transaction counts that count toward the customer's loyalty tier. |
| Zero Reward | A reward type that issues nothing and exists so the action can be a Quest objective. |
Prerequisites
Before you trigger an action, check the following.
Customer
- A wallet
- An identity. This is the value you pass in the trigger call.
- A points account (for points rewards)
Scheme
- A valid points scheme (
schemeId) to fund points rewards.
Wallet configuration
- A
defaultAccountStateset for thewalletTypeIdyou intend to use. - A wallet transaction type for each reward type you use, each with
defaultStatusanddefaultStatevalues:
| Reward Type | Wallet transaction type |
|---|---|
| Points | BEHAVIOURAL_ACTION_POINTS |
| Coupon | BEHAVIOURAL_ACTION_COUPON |
| Zero reward | BEHAVIOURAL_ACTION_ZERO_REWARD |
| Stamp card | BEHAVIOURAL_ACTION_STAMP_CARD |
{
"configuration": {
"defaultState": { "value": "ORIGINAL", "type": "string" },
"defaultStatus": { "value": "SETTLED", "type": "string" }
},
"unitId": 81400,
"name": "BEHAVIOURAL_ACTION_POINTS"
}
The defaultStatus and defaultState values are part of the standard AIR configuration. If your configuration does not include these, contact Eagle Eye to have them enabled.
Permissions (Dashboard users)
- Access to the Triggers menu to create campaigns, and to Behavioral Action accounts in Customer Care.
Use Cases
These examples use a retailer called Fabulous Retailer. Each one shows how to configure the reward section of the campaign via the AIR dashboard and via the POST /campaigns API call. All five share the same campaign settings, with the action and reward varying by scenario:
| Object | Value |
|---|---|
type | BEHAVIOURAL_ACTION |
offer.offerType | NON_TRANSACTIONAL |
settings.walletEnabled | true |
settings.defaultAccountClientState | A valid account client state, for example LOADED |
Theoffer.actions[].referencemust be a string with no spaces and only alphanumeric characters and underscores, for exampleLIKE_FACEBOOK_POST. Each Action Reference can be used by one campaign only, and it can't be edited after creation.
Scenario 1 – Points for a Product Review
Fabulous Retailer wants to reward customers with 50 points each time they write a product review, up to 5 times.
Reward Setup
| Object | Value |
|---|---|
| Reward type | Points |
| Points | 50 |
| Scheme | Retail points scheme |
| Rewards per Customer | 5 |
| Action Reference | write_product_review |
"offer": {
"offerType": "NON_TRANSACTIONAL",
"reward": {
"standard": {
"points": {
"schemeId":{schemeId},
"creditAmount": 50
}
}
},
"actions": [
{
"reference": "write_product_review",
"description": "Wrote a product review"
}
]
}Benefits of this SBA setup include:
- Simple to run, with a clear reward for a single action
- Rewards non-purchase engagement
- Limits per-customer cost with Rewards per Customer
Scenario 2 – Points with Tier Progress
Fabulous Retailer wants to give 50 points for following the brand on social media. The follow should also add 100 points and 1 transaction toward the customer's tier.
Reward Setup
| Object | Value |
|---|---|
| Reward type | Points |
| Points | 50 |
| Tier Membership Points | Fixed, 100 |
| Tier Membership Transaction | Enabled |
| Scheme | The scheme you created for Tiers |
| Action Reference | follow_brand_social |
"offer": {
"offerType": "NON_TRANSACTIONAL",
"reward": {
"standard": {
"points": {
"schemeId": 100802031,
"creditAmount": 50
}
},
"tierMembership": {
"points": {
"type": "FIXED",
"active": true,
"creditAmount": 100
},
"transactions": {
"active": true
}
}
},
"actions": [
{
"reference": "follow_brand_social",
"description": "Followed the brand on social media"
}
]
}
Tiers must be enabled at unit level. Enable Tier Membership Points and Tier Membership Transaction in Manage Types. Tier Membership Points can beMatch RewardorFixed.
Benefits of this SBA setup include:
- Lets engagement count toward tier status
- Rewards your most engaged customers beyond spend
- Works with the points reward without extra triggers
Scenario 3 – Coupon for Completing an Action
Fabulous Retailer wants to give a "Back to School" coupon when a customer likes a social media post.
Reward Setup
| Object | Value |
|---|---|
| Reward type | Coupon |
| Reward campaign | One ACTIVE coupon campaign |
| Action Reference | back_to_school |
"offer": {
"offerType": "NON_TRANSACTIONAL",
"reward": {
"standard": {
"coupon": {
"campaignId": ["100364018"]
}
}
},
"actions": [
{
"reference": "back_to_school",
"description": "Liked the Back to School post"
}
]
}
Only one coupon campaign can be added to thecampaignIdarray, and only ACTIVE campaigns can be selected.
Benefits of this SBA setup include:
- Gives customers a tangible reward to use on their next shop
- Links social engagement to in-store or online spend
- Gives you a way to drive a follow-up purchase
Scenario 4 – Zero Reward Action as a Quest Objective
Fabulous Retailer runs a Back to School Quest. The customer earns 5,000 points when they like a social media post and spend £50. Liking the post pays nothing by itself.
Reward Setup
| Object | Value |
|---|---|
| Reward type | Zero reward |
| Action Reference | back_to_school_like |
| Quest objective 1 | This SBA campaign |
| Quest objective 2 | Spend $50, get $5 off (discount basket campaign) |
"offer": {
"offerType": "NON_TRANSACTIONAL",
"reward": {
"standard": {
"zeroReward": true
}
},
"actions": [
{
"reference": "back_to_school_like",
"description": "Liked the Back to School post"
}
]
}Triggering the action redeems the SBA objective. When the customer has completed all objectives, AIR redeems the Quest and issues the Quest reward.
Benefits of this SBA setup include:
- Combines transactional and non-transactional objectives under a single reward
- Avoids paying out twice for the same journey
- Keeps the customer's wallet free of intermediate rewards
Zero reward can also contribute to tiers, either as tier points alone or as tier points together with tier transactions. Tier transactions on their own are not currently supported.
Scenario 5 – Stamp Card Reward
Fabulous Retailer wants a social action to add one stamp to a customer's stamp card.
Reward Setup
| Object | Value |
|---|---|
| Reward type | Stamp card |
| Stamp amount | 1 |
| Stamp card campaign | Existing stamp card campaign |
| Action Reference | SBA_STAMP_CARD |
"offer": {
"offerType": "NON_TRANSACTIONAL",
"reward": {
"standard": {
"stamps": [
{
"amount": 1,
"campaignId": "{campaignId}"
}
]
}
},
"actions": [
{
"reference": "SBA_STAMP_CARD",
"description": "Stamp card action"
}
]
}
Stamp card rewards can't be configured via the Dashboard. Use the API. Thestampsarray can hold more than one stamp card campaign, so one action can stamp several cards.
Triggering an Action
Call the Triggers endpoint in the Wallet API with the customer's identityValue and the Action Reference.
{
"walletTransaction": {
"reference": "Review reward 1"
},
"identityValue": "{identityValue}",
"triggers": [
{
"reference": "write_product_review"
}
]
}| Result | What happens |
|---|---|
| Identity not found | Returns Not found: Resource cannot be found. |
| Points reward | A wallet transaction of type BEHAVIOURAL_ACTION_POINTS with 1 CREATE and 1 REDEEM of the Behavioral Action account, and 1 CREDIT of points |
| Coupon reward | 1 CREATE and 1 REDEEM of the Behavioral Action account, and 1 CREATE of the coupon |
You can find the Behavioral Action account and its transactions in Customer Care.
Best Practices
- Choose Action References carefully. They are unique across campaigns and can't be edited. Use a clear, descriptive convention, for example
ACTION_CHANNEL_CAMPAIGN. - Use Rewards per Customer to cap cost. Without a limit, a customer can earn the reward every time your system triggers the action.
- Use a unique
walletTransaction.referenceper trigger so each reward can be traced. - Set up wallet transaction types before go-live. A missing type is the most common reason a trigger fails.
Updated 1 day ago
What’s Next
For more information on SRM Campaigns, see these pages:

