Using Coupons as Qualifiers

Salesforce B2C Commerce uses coupons as a promotion qualifier. You can configure coupons that vary by origin, such as generated external to B2C Commerce, by B2C Commerce, or custom defined, and by redemption limits. You can also import and export coupon codes to external email marketing systems.

Coupons exist independent of promotions and campaigns and can be enabled or disabled outside of a promotion or campaign, but you can also assign a coupon to a campaign or a promotion. In this case, the coupon lifetime is defined by the lifetime of the promotion and campaign that uses it. The expired date of the promotion is used as the coupon code expired date.

An individual coupon can be associated with one or more promotions; an individual promotion can be associated with zero or more coupons. Coupons can be associated with campaigns and inherited by all promotions within that campaign. You can disinherit the coupon specification at the promotion level, and extend that coupon specification at the promotion level.

Note: Coupons must be created in order to be available for association with a promotion. If you delete the coupon, the promotion still exists with the coupon specified but labeled as 'missing'.

A customer must enter the coupon code into the shopping cart to qualify for the promotion. B2C Commerce compares the code to its list of authorized codes, and if appropriate, enables the promotion and the discount. A coupon can qualify a customer for one or more promotions.

In B2C Commerce there are three types of coupons:
Coupon Type Definition Source
Merchant-defined single code One fixed coupon code per coupon can be used multiple times. Maintained by the merchant. Can be added and deleted in Business Manager.
Merchant-defined multiple code List of codes per coupon, typically imported from an external system. Each code can be used multiple times. Maintained by the merchant. Can be added and deleted in Business Manager.
System-generated Codes generated by B2C Commerce. Issued through export or the scripting API. Format managed through Business Manager.

Single-Code Coupons

Configure single code coupons if you want to:

  • Issue one coupon with exactly one code with a redemption limit of 1.

    For example, to reward a customer for store loyalty.

  • Issue a coupon with exactly one code with a fixed or unlimited redemption limit (a blank redemption limit results in unlimited redemptions).

    For example, in the case of a mass email promotion to friends and family, you could limit the timeframe that the coupon is active instead of a specific number of redemptions.

Multi-Code Coupons

Configure multi-code coupons when you want to:

  • Issue one coupon with multiple codes with a redemption limit of 1.

    For example, to send out one coupon code to a group of loyal customers that they (each customer) can redeem once.

  • Issue one coupon with multiple codes and a fixed or unlimited redemption limit (a blank redemption limit represents unlimited redemptions).

    For example, you send out one code to each of your employees in a "friends and family" campaign, with an unlimited redemption limit. This enables the employees to forward the code to their family and friends and you can later see which employee drove the most revenue to the site.

System-Generated Coupons

Because only a small number of coupon codes are actually redeemed, generating all valid codes in advance is inefficient. B2C Commerce can generate codes as needed. Use system-generated coupons when you don't want to create coupon codes, don't have an external system to generate coupon codes, or need to publish a very large number of codes. System-generated coupon codes follow the format:

AFDR-3FE3-6HUJ-45ER

You can optionally specify a prefix, such as "SUMMER" in:

SUMMER-AFDR-3FE3-6HUJ-45ER

B2C Commerce uses an algorithm to determine whether a customer submitted code is valid. When issuing a system-generated code, B2C Commerce returns a single coupon code out of the set of available (not yet issued) codes. Issuing a code doesn't reserve the code for a specific customer or limit the redemption of this code in the future. Issuing a code simply removes it from the set of available (not yet issued) codes.