---
schema_version: "1"
id: 0e0c0cd58f734994c62b239cf5417160b5ce0af86661689d4b11cf8e749d2f09
title: Promotion
collection: legacydeveloper
version: current
locale: en-us
portal_url: https://docs.salesforce.com/legacydeveloper/current/en-us/object_reference/sforce_api_objects_promotion.md
canonical_url: https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_promotion.htm
source_site: developer.salesforce.com
content_type: documentation
content_hash: 2c255b6bc0c3e91a398936cd9c630b080396268e1c348e6c942eb088178680de
description: Represents a promotion for B2B or D2C stores. This object is available in API version 52.0 and later.
---
# Promotion

Represents a promotion for B2B or D2C stores. This object is available in API version 52.0 and later.

## Supported Calls

create(), delete(), describeLayout(), describeSObjects(), getDeleted(), getUpdated(), query(), retrieve(), search(), undelete(), update(), upsert()

## Special Access Rules

Some of the fields on the Promotion object are available only if the B2B Commerce or D2C Commerce license is enabled.

## Fields

| Field | Details |
| --- | --- |
| AreQualItemsExclFromDiscounts | 
Type

boolean

Properties

Create, Defaulted on create, Filter, Group, Sort, Update

Description

Exclude qualifying items from discount. You can use this field to create buy-one-get-one promotions. The default value is false. This field is available in API version 56.0 and later.



 |
| CurrencyIsoCode | 

Type

picklist

Properties

Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update

Description

Available only for orgs with the multicurrency feature enabled. Contains the ISO code for any currency allowed by the organization.



 |
| Description | 

Type

textarea

Properties

Create, Filter, Nillable, Sort, Update

Description

Description of the promotion.



 |
| DiscountOrder | 

Type

picklist

Properties

Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update

Description

Indicates whether to apply discounts first to the least expensive products or to the most expensive products.

Possible values are:

- LeastExpensive
- MostExpensive

The default value is MostExpensive.

This field is available in API version 56.0 and later.



 |
| DiscountRestriction | 

Type

picklist

Properties

Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update

Description

Indicates whether to restrict the products that can be discounted based on the least expensive qualifying product.

Possible values are:

- LeastExpensive
- None

The default value is None.

This field is available in API version 56.0 and later.



 |
| DisplayName | 

Type

string

Properties

Create, Filter, Group, Nillable, Sort, Update

Description

Display name of the promotion.



 |
| EndDateTime | 

Type

dateTime

Properties

Create, Filter, Nillable, Sort, Update

Description

Date and time when the promotion ends.



 |
| ExclusivityType | 

Type

picklist

Properties

Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update

Description

Determines whether a promotion can be combined with other promotions.

Possible values are:

- No - Can be combined with other promotions.
- Class - Can’t be combined with a promotion of the same class (product, order, or shipment), but allows for promotions of separate classes to be combined. For example, an order discount on top of a product discount.
- Global - Only promotion that can be applied to the order, regardless of class.

The default value is Class.

This field is available in API version 58.0 and later.



 |
| IsActive | 

Type

boolean

Properties

Create, Defaulted on create, Filter, Group, Sort, Update

Description

Indicates whether the promotion is active (true) or inactive (false).

The default value is false.



 |
| IsApproachingDiscountApplicable | 

Type

boolean

Properties

Create, Defaulted on create, Filter, Group, Sort, Update

Description

Indicates that the promotion shows an approaching discount message. Set an approaching discount threshold value on the PromotionQualifier object. This field is available in API version 64.0 and later.

The default value is false.



 |
| IsAutomatic | 

Type

boolean

Properties

Create, Defaulted on create, Filter, Group, Sort, Update

Description

Determines whether the promotion is automatic or manual. If the promotion is automatic, it automatically applies to eligible carts with no buyer action required. if the promotion is manual, the buyer applies a coupon to redeem the promotion.

The default value is false.



 |
| IsCommercePromotion | 

Type

boolean

Properties

Create, Defaulted on create, Filter, Group, Sort, Update

Description

Indicates if the promotion is a B2B Commerce promotion (true) or not (false).

The default value is false.



 |
| IsTiered | 

Type

boolean

Properties

Create, Defaulted on create, Filter, Group, Sort

Description

Indicates whether the promotion uses promotion tiers (true) or not (false). This value can’t be changed.

The default value is false.

A tiered promotion can have up to 10 associated tiers.

This field is available in API version 57.0 and later.



 |
| LastReferencedDate | 

Type

dateTime

Properties

Filter, Nillable, Sort

Description

The timestamp for when the current user last viewed a record related to this record.



 |
| LastViewedDate | 

Type

dateTime

Properties

Filter, Nillable, Sort

Description

The timestamp for when the current user last viewed this record. If this value is null, it’s possible that this record was referenced and not directly accessed.



 |
| MaximumUsageCount | 

Type

int

Properties

Create, Filter, Group, Nillable, Sort, Update

Description

Maximum number of times the promotion can be applied to a cart. If left blank, the default value is 1. This field is available in API version 56.0 and later.



 |
| Name | 

Type

string

Properties

Create, Filter, Group, idLookup, Sort, Update

Description

Name of the promotion.



 |
| Objective | 

Type

textarea

Properties

Create, Filter, Nillable, Sort, Update

Description

More information, if any, about the purpose of the promotion.



 |
| OwnerId | 

Type

reference

Properties

Create, Defaulted on create, Filter, Group, Sort, Update

Description

The ID of the user who created the promotion.

This is a polymorphic relationship field.

Relationship Name

Owner

Relationship Type

Lookup

Refers To

Group, User



 |
| PriorityNumber | 

Type

int

Properties

Create, Filter, Group, Nillable, Sort, Update

Description

Priority for the promotion. The priority determines which promotions apply first. The lower the number, the higher the priority.



 |
| QualifierCriteria | 

Type

picklist

Properties

Create, Filter, Group, Nillable, Restricted picklist, Sort, Update

Description

If a promotion has multiple qualifiers, this field determines whether all qualifiers must be met or whether any must be met for the promotion to apply.

Possible values are:

- All
- Any

The default value is 'All'.

This field is available in API version 53.0 and later.



 |
| StartDateTime | 

Type

dateTime

Properties

Create, Filter, Nillable, Sort, Update

Description

Date and time when the promotion begins.



 |
| TargetCriteria | 

Type

picklist

Properties

Create, Filter, Group, Nillable, Restricted picklist, Sort, Update

Description

If a promotion has multiple targets, indicates whether a cart must meet the criteria for any target or the criteria for all targets.

Possible values are:

- All
- Any

This field is available in API version 56.0 and later.



 |
| TermsAndConditions | 

Type

textarea

Properties

Create, Nillable, Update

Description

Terms and conditions the buyer accepts before applying the promotion.

This field is available in API version 53.0 and later.



 |

## Associated Objects

This object has the following associated objects. If the API version isn’t specified, they’re available in the same API versions as this object. Otherwise, they’re available in the specified API version and later.

[PromotionFeed](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_associated_objects_feed.htm "StandardObjectNameFeed is the model for all feed objects associated with standard objects. These objects represent the posts and feed-tracked changes of a standard object.")

Feed tracking is available for the object.

[PromotionHistory](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_associated_objects_history.htm "StandardObjectNameHistory is the model for all history objects associated with standard objects. These objects represent the history of changes to the values in the fields of a standard object.")

History is available for tracked fields of the object.

[PromotionShare](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_associated_objects_share.htm "StandardObjectNameShare is the model for all share objects associated with standard objects. These objects represent a sharing entry on the standard object.")

Sharing is available for the object.

#### See Also

- [Promotion](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_promotion.htm "Represents a promotion for B2B or D2C stores. This object is available in API version 52.0 and later.")
- [PromotionMarketSegment](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_promotionmarketsegment.htm "Represents a market segment within B2B Commerce that promotions can be assigned to. This object is available in API version 52.0 and later.")
- [PromotionQualifier](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_promotionqualifier.htm "Represents the product, product category, or order that you want to target with your promotion qualifier in a B2B or D2C store. This object is available in API version 52.0 and later.")
- [PromotionSegment](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_promotionsegment.htm "Represents a promotion segment, which you can assign to different stores or buyer groups, allowing them to access the promotion. This object is available in API version 52.0 and later.")
- [PromotionSegmentBuyerGroup](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_promotionsegmentbuyergroup.htm "Represents a promotion segment, associated with a buyer group, and used for B2B Commerce. This object is available in API version 52.0 and later.")
- [PromotionSegmentSalesStore](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_promotionsegmentsalesstore.htm "Represents a promotion segment, associated with a store, and used for B2B Commerce. This object is available in API version 52.0 and later.")
- [PromotionTarget](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_promotiontarget.htm "Represents the product, product category, or order that you want to target with your promotion in a B2B Store or D2C store. This object is available in API version 52.0 and later.")
- [PromotionTier](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_promotiontier.htm "Represents a tier of a promotion that includes multiple tiers. A promotion can have up to 10 tiers. This object is available in API version 57.0 and later.")