From Campaign to Offer
An Offer is never created in a vacuum. It is the published outcome of a Paylead proposal for a partner merchant that the Program Manager has reviewed and accepted.1
Paylead proposes a Campaign
Paylead submits a Campaign: a raw, unpublished commercial proposal carrying its conditions: eligible Brand, duration, playground range, channel, and targeting rules.
2
The Program Manager reviews it in Shift
The Program Manager reviews each Campaign in Shift and either publishes it as an Offer or rejects it. This is where the Program Manager sets how the playground is split between its own commission and the Cashback returned to the Consumer.
3
The Offer goes live
Once published, the Offer enters the Program catalog and starts surfacing to eligible Consumers.
A Campaign is Paylead’s draft proposal; an Offer is the curated, published promotion the Consumer sees. Only the Program Manager turns one into the other.
How an Offer funds the Program
Offers are not a cost: they are the revenue mechanism. When a Consumer transaction matches an active Offer (a Commissioned Transaction):- Paylead returns a playground to your Program for that transaction.
- The playground splits (per Offer, as the Program Manager decided at publication) between the Program Manager’s commission and the Consumer’s Cashback.
Offer types and states
An Offer’stype sets how the Consumer earns. It also tells you which member of perks is populated, so read type first and then the matching object.
A Loyalty Offer is a
CASHBACK Offer whose perks.cashback.frequency is true.
Two states change how you render an Offer:
What an Offer carries
Every Offer defines the terms a transaction must satisfy to be rewarded:- Eligible Brand: where the purchase must happen.
- A rate: the share of the playground returned to the Consumer.
- Validity period: the window during which the Offer is active.
- Channel: the transactional channel through which the purchase is rewarded: online, in-store, or both.
- Specific conditions: minimum and maximum amounts, capping, targeting.
perks. Read type first, then the matching member, where the rates and the eligibility amounts live.
The Offer listing returns the validity window, the channel, the rate, and every eligibility condition. The detail call adds three fields on top, marked Detail only in the tables below: description, legal_terms, and perks.cashback.loyalty_frequency.
Top level
perks.cashback (CASHBACK and LBS_CASHBACK Offers)
The two ceilings are distinct:
max_amount bounds the reward, max_eligible_amount bounds eligibility.
perks.voucher (VOUCHER Offers)
perks.coupon (UNIQUE_COUPON and GENERIC_COUPON Offers)
Fetch the catalog
The Paylead API exposes three entry points. Pick the one that matches your UI.- Group by Brand
- List all offers
- Get Offer details
Return one entry per Brand the Consumer is eligible for, with aggregated statistics. Use this for the catalog index screen.Each entry returns the Brand identity (
Code examples coming soon. The Paylead API (v2) is still under construction. Request and response examples for this section will be published once the contract is finalized. In the meantime, contact your Paylead account manager for early-access details.
id, name, logo, universe) plus two headline values: max_rate, the highest rate the Brand advertises across its Cashback and Voucher perks, and max_highlight_level, its highest prominence. For a Brand listed only through a coupon Offer, max_rate is null and max_highlight_level is NORMAL: the Brand aggregate covers Cashback and Vouchers only.Under perks, each perk the Brand carries reports its own active_offers_count: how many Offers of that type are currently active and visible to this Consumer, and therefore how many Offers the aggregate was computed over. It is always at least 1, since a perk is only reported when such an Offer exists.Filters: name, universe__name, perks__cashbacks, perks__vouchers, max_highlight_level.sort reorders it on max_highlight_level or max_rate (prefix - for descending). A “recommended Brands” surface passes an explicit sort, or is driven from the Offer listing.
legal_terms lives on the detail payloads, Offer detail and Brand detail. A list shows the logo, the channel, and the rate, and the Consumer reaches the legal terms on the detail screen before acting on the Offer.
Personalization: Offer Smart Ranking
Consumers do not see the catalog in a fixed order. Offer Smart Ranking personalizes the order of Offers per Consumer, using purchase habits, location, Brand power, and editorial spotlight. It improves catalog relevance and conversion, and requires the Consumer’s explicit consent to perform best. Computing a Consumer’s targeted Offers and the Smart Ranking of the catalog takes between 12 and 24 hours. This delay depends on:- How quickly the Consumer’s transaction history reaches Paylead.
- The quality of the data received.
- Paylead’s operational load, for example during a registration spike.
Display and filter behaviors
Three behaviors shape how you render and filter the catalog. The underlying fields are listed in What an Offer carries.- Boosted Offers:
perks.cashback.boostedmarks an active boost, andis_boosted=truefilters on it. Show a “Boosted” badge next tocashback_rate. - Loyalty Offers:
perks.cashback.frequencymarks them, on the listing and on the detail. The number of qualifying purchases required,loyalty_frequency, comes with the detail payload. - Consumed Offers: flagged
is_consumed=trueonce the per-Consumer cap is reached. Don’t hide them. Display a dimmed “Already claimed” state, and useis_consumed=falseonly on dedicated “available now” screens.
Code examples coming soon. The Paylead API (v2) is still under construction. Request and response examples for this section will be published once the contract is finalized. In the meantime, contact your Paylead account manager for early-access details.
What’s next
Reward lifecycle
Track Rewards generated when Consumers transact on an Offer.
Use an offer
How a Consumer redeems an Offer to earn a Reward.
Promote your program
Surface public Offers to prospects who are not Consumers yet.