Reward Bank Configuration Guide
By following this guide, you can effectively configure and manage the Reward Bank feature, providing users with a flexible and engaging rewards experience. For an overview of the Reward Bank and its key components, see the Reward Bank Overview.
Integration Steps
Reward Bank Extension Configuration
Improved Email Configuration Coming Soon
Currently, you may need assistance from Support to configure Earned Reward Emails to direct users to the Reward Bank, and to ensure redemption emails are properly triggered.
This limitation will soon be addressed—our team is working on making this functionality fully self-service as part of the out-of-the-box Reward Bank experience.
-
Create new reward suppliers for redemption rewards with a dynamic 100% back value from the Account Rewards page. These rewards will later be used to configure rewards that users can use to redeem the accumulated rewards (see "[Select Redemption Options](#select-redemption-options) " section).Configure Dynamic Reward for Redemption
The "Minimum amount per reward a user can earn" can either be left empty or set to the brand’s minimum requirement (e.g., $0.01 for an Amazon gift card).
The "Maximum amount per reward a user can earn" should align with the brand's limit (e.g., $2,000 for an Amazon gift card) or the maximum value of rewards that can be redeemed at a time (this setting will be configured later in the Reward Bank extension). -
Install the Reward Bank Extension:
- Navigate to the Partners page > Extensions in your Extole account
- Locate and install the Reward Bank Extension

Collectible rewards are the rewards earned for each activity (ex. 15 points when you download the app, or $25 when your referred friend joins).
Collectible rewards are set up and managed only within the Reward Bank extension. If a reward supplier is removed from the system, any rewards issued by that supplier will no longer be available for customers to redeem. Existing rewards can be updated, or new ones can be added as needed.
- Click + New Collectible Reward
- Assign a unique name to the reward; Include the reward value to differentiate (e.g., "Collectible Reward $15")
- Add value and choose the denomination that aligns with your program flow.
- Enable the reward by toggling the "Enable" switch
- Dynamic Value (Optional):
Enable the dynamic toggle for percentage-based rewards (e.g., earning a 10% gift card commission on a purchase).
Configure the cashback percentage, and set the minimum and maximum dynamic reward amounts that a user can earn per transaction. Please ensure the maximum is set to a valid amount—if it stays at the default value of 0, the user will receive a reward of 0.
The reward value will be rounded to two decimal places.
You will use these rewards later on in your campaigns to link them to the rewardable events. See the "Update Program" section for more details on how to integrate these rewards into your promotional strategies.


Redemption options is where you will choose what type of rewards the Collectible points can be redeemed for, such as an Amazon or Visa Gift Card.
Choose previously configured dynamic rewards, not a specific reward amount.
An example of the dynamic reward configuration:

Value Limits:
Set minimum and maximum for monetary redemption amounts. These are based on the dollar amount of the rewards and should align with the maximum reward limits in place by the gift card provider.
Best Practice: Align with brand limits (e.g., $2,000 for Amazon gift cards)
Setting to 0 disables specific limits.
Redemption Rate:
Define the ratio of earned reward value to dollars, which by default is 1:1, meaning 1 point equals 1 dollar.
Example: With a 10-point ratio, users earn $1 for every 10 points

-
Scroll to the top and save all configuration modificationsSave Changes:
Customize Reward Bank Creatives -
The Bankable Rewards Redemption Email will be the email that is sent to the customer after they have redeemed their reward for a coupon or Tremendous Gift Card Reward. Click it to update the email templates to align with your design preferences, and hit 'Apply' to save your changes..Update Redemption Emails:
Notes:
- For Tremendous rewards, the emails require additional customization. Please submit a request for assistance to the Support Team.
- For Tango rewards, this email will not be sent, as Tango handles its own reward notification emails (for more information, see the “Redeem for Tango Rewards” section).

Use available variables to customize the appearance of the Redemption Center by clicking on the Bankable Rewards Redemption Center and hitting 'Apply' to save your changes..

This applies only when using Tango Rewards.
To enable the use of Tango Rewards for redemptions, please follow these steps:
-
Configure a generic template in the Tango Rewards Genius , or reuse an existing one if it does not contain any hardcoded values.
-
Click Reward Bank Tango Gift Card Configuration
-
Add the Gift Card Template ID
-
Hit 'Apply' to save your changes.
Update Program
Link the Collectible Rewards to the 'Rules' section of your campaign. For more details on how to add or update the rewards, refer to Configuring the Rules of Your Program
When a customer earns a Collectible Reward, they will receive the Earned Reward email with a link to the Redemption Center. Reach out to Extole Support to configure this email to direct users to the Redemption Center.
If you have multiple banks, please contact the Extole Support Team to configure the email links to target the correct integration (for more details, refer to the Multiple Reward Banks: section).
Extole JWT (JSON Web Tokens) can be used to authenticate users to the Reward Bank via email. Set an appropriate expiration timeframe for the tokens—typically between 1 to 3 years, depending on your reward program’s objectives. For assistance with JWT configuration and email integration, please contact Extole Support.
Multiple Reward Banks:
For different programs and varying reward types, set up multiple Reward Bank extensions. Give each Reward Bank a unique name to make identification easier.
When using multiple integrations, include target=campaign_id:<REWARD_BANK_CAMPAIGN_ID>
in the links leading to the Reward Bank to ensure correct functionality.
Example link:
https://test.extole.io/zone/bankable_rewards_redemption_center?target=campaign_id:<CAMPAIGN_ID>&jwt=<JWT_TOKEN>
Reporting
Run the following reports to track Reward Bank activity:
Reward Bank Redeemed Rewards: Includes the rewards that have been redeemed, along with the associated collectible rewards.
Reward Bank Rewards Audit: Provides a detailed log of all collectible Reward Bank rewards, including their current statuses and history.
Reward Bank Rewards Summary: Offers an overview of the total reward activity, summarizing key metrics and redemption trends.
Access Reward Bank
This is the link structure you can use in the "Earned Reward" email to give users access to the Reward Bank.
https://<Program_Domain>/zone/bankable_rewards_redemption_center
(embeddable version) or https://<Program_Domain>/zone/bankable_rewards_redemption_center
(standalone version)
The user must access it as a verified consumer.
In case of emails, the verification is handled via a JWT token.
The JWT can be generated within the email creative and appended to the Reward Bank link to authorize the zone call.
Example links:
https://<Program_Domain>/zone/bankable_rewards_redemption_center
(embeddable version)

https://test.extole.io/zone/embedded_bankable_rewards_redemption_center
(standalone page)
Headless Integration
For advanced integration scenarios, use the following Reward Bank API endpoints via the Extole Customer API.
To successfully call these endpoints, replace theclient
with your program domain. For example, if Test Company were to call this endpoint, the URL would be:https://testcompany.extole.io/zone/bankable_rewards
.
You can find your program domain in the Tech Center of the My Extole .
Retrieve Bankable Rewards
A verified JWT or access token is required to retrieve the bankable reward.
GET <https://client.extole.io/zone/bankable_rewards>
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <VERIFIED CONSUMER ACCESS TOKEN>' \
Example of Response
[
{
"eligible_rewards": [
{
"reward_id": "a1cb349f29057e12025d7a73",
"reward_supplier_id": "0c50221129ae1d7231637ae0",
"face_value": "10.00",
"face_value_type": "POINTS"
},
{
"reward_id": "f8de452d70123a34019b6c8d",
"reward_supplier_id": "0c50221129ae1d7231637ae0",
"face_value": "10.00",
"face_value_type": "POINTS"
},
],
"redemption_suppliers": [
{
"reward_supplier_id": "b6da278e30069f11018e6b96",
"name": "Reward 1",
"type": "ACCOUNT_CREDIT"
},
{
"reward_supplier_id": "b3e4f4bbb7965e08269f9302",
"name": "Reward 2",
"type": "ACCOUNT_CREDIT"
}
],
"redemption_history": [
{
"reward_id": "c3d9b56f70481e2301f7a4b2",
"reward_supplier_id": "b6da278e30069f11018e6b96",
"face_value": "20.00",
"face_value_type": "USD"
}
],
"reward_parameters": {
"face_value_type": [
"USD"
],
"max_amount": 1000,
"min_amount": 0,
"ratio_of_value_to_dollars": 1
}
}
]
Redeem Bankable Rewards
A verified JWT or access token is required to retrieve the bankable reward.
POST <https://client.extole.io/api/v6/events>
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <VERIFIED CONSUMER ACCESS TOKEN>' \
Body:
{
"event_name": "redeem_rewards",
"data": {
"rewards": ["<REWARD ID TO REDEEM>"],
"reward_supplier_id": "<REWARD SUPPLIER ID USED FOR REDEMPTION>"
}
}
Example of Response
[
{
"id":"7436077304245789573"
}
]
Appendix:
Makegood Events Compatibility
The Reward Bank does not support makegood events created from the Create Event page.
Alternative Methods for Issuing Additional Rewards:
- Use API events
- Use file-based events
Forcing Makegood Events Compatibility:
To ensure the makegood events compatible with the Reward Bank, use prehandlers to update the "sandbox" parameter:
Condition | Value |
---|---|
Event Name | All EVENTS THAT ARE CREATED FROM /CREATE EVENT PAGE |
Prehandler JavaScript Action:
var sandbox = context.getProcessedRawEvent().getData().get('sandbox');
if (sandbox != null && (sandbox.toLowerCase().indexOf('campaign') > -1 || sandbox.toLowerCase().indexOf('CAMPAIGN') > -1) && sandbox.toLowerCase().indexOf('production') > -1) {
var extractedId = sandbox.match(/\d+/)[0];
context.log(" extractedId ----------->" + extractedId);
context.getEventBuilder().removeData(sandbox);
context.getEventBuilder().addData('sandbox', 'production-production');
context.getEventBuilder().addData('target', 'campaign_id:' + extractedId);
context.getEventBuilder().addData('journey.campaign_id', extractedId);
}
Notifications
Subscribe to notifications to monitor the redemption process:
Parameter | Value |
---|---|
Tags | reward-bank , component:<reward bank name (for filtering specific bank notifications) |
Notification Level | SOME (Warning) |
Updated 3 days ago