Coupons are individual redeemable codes in Loyalty Management and Salesforce Commerce — "member 12345 was issued code SAVE10-XYZ123, valid through April 30." Each Coupon links to a parent Promotion (which defines the discount mechanics) and tracks who got it, when, and whether it's been redeemed. Coupons are records, not codes — the same Promotion can have many Coupons issued to many members.
- Confirm Loyalty Management or Commerce is licensed
Coupons are part of the Loyalty Management / Commerce data model. Without those licenses, the object isn't available.
- Build the parent Promotion first
App Launcher → Promotions → New. Define the discount type (% off / fixed amount / BOGO) and rules. The Coupon references the Promotion.
- Open the Coupons tab (or from a Promotion → Coupons related list)
App Launcher → Coupons.
- Click New
Top-right.
- Set Coupon Code (unique identifier)
Often auto-generated for personalized codes. The code is what the customer enters at checkout.
- Link the parent Promotion
Required — drives the discount math.
- Link the Issued-To party (Loyalty Member or Account)
Tracks who received the coupon. Reports key off this for personalization analytics.
- Set Effective From / To dates
Validity window. Outside this range, the coupon is rejected at checkout.
- Set Status (Issued / Redeemed / Expired / Cancelled)
Lifecycle status. Issued is the default; Salesforce auto-flips to Redeemed on use, Expired past the To date.
- Save
Coupon is now redeemable in the configured time window.
Required. Unique.
Required. Defines the discount.
Required. Validity window.
- Coupons differ from Promotions. A Promotion defines the rule ("every member who enters code SAVE10 gets 10% off"); Coupons are individual issued instances of that rule. Don't confuse them — reports on Coupon-level data give per-member analytics; Promotion-level only gives campaign-level.
- Coupon Code uniqueness is enforced at the org level. Bulk-issuing thousands of personalized codes requires careful generation logic to avoid collisions.
- Auto-status transitions (Issued → Redeemed → Expired) depend on commerce / loyalty automation. Without the proper Cloud automations active, statuses stay manual — the Coupon stays Issued forever even after redemption.