Skip to main content

Loyalty

Manage loyalty rewards, promotions, and points for members.

Base URL: /api/v1/partner/loyalty

Endpoints Overview

MethodEndpointDescription
GET/rewardsGet Rewards List
POST/promotionsAdd Promotions
GET/promotionsGet Promotion List
GET/promotions/code/{promocode}Get Promotion List
GET/promotions/{promotionId}Get Promotion By Id
PUT/promotions/{promotionId}Update Promotions
DELETE/promotions/{promotionId}Delete Promotions
GET/rewards/members/{memberId}Get Rewards for member
GET/pointsGet Loyalty Points for member
POST/pointsUpdate Loyalty Points for Members
GET/activityGet Loyalty Activities

Get Rewards List

GET /api/v1/partner/loyalty/rewards

Retrieve a paginated list of loyalty rewards configured for the store. Results are sorted by points (ascending) and capped at 200 per page.

Query Parameters

ParameterTypeRequiredDescription
startintegerNoNumber of records to skip
limitintegerNoMaximum records to return

Response

Returns a paginated SearchResult of LoyaltyReward objects.

FieldTypeRequiredDescription
idstringNoUnique identifier
companyIdstringNoCompany identifier
shopIdstringNoShop identifier
createdlongNoCreated timestamp (epoch ms)
modifiedlongNoLast modified timestamp (epoch ms)
deletedbooleanNoWhether the record is deleted
updatedbooleanNoWhether the record has been updated
rewardNostringNoReward No
slugstringNoSlug
pointsintegerNoPoints (default: 0)
namestringYesName
detailstringNoDetail
activebooleanNoWhether active (default: true)
loyaltyTypestringNoLoyalty Type. One of: Regular, Promotion (default: Regular)
publishedbooleanNoPublished (default: false)
publishedDatelongNoPublished timestamp (epoch ms)
unpublishedDatelongNoUnpublished timestamp (epoch ms)
promotionIdstringNoPromotion identifier
productIdsstring[]NoProduct Ids
categoryIdsstring[]NoCategory Ids
vendorIdsstring[]NoVendor Ids
productTagsstring[]NoProduct Tags
discountAmtnumberNoDiscount Amt
startDatelongNoStart timestamp (epoch ms)
endDatelongNoEnd timestamp (epoch ms)
rewardTargetstringNoReward Target. One of: WholeCart, DiscountedSubtotal, DeliveryFee, AllSelectedProducts, OneFromProducts, OneFromCategories, OneFromVendors, OneFromProductTags (default: WholeCart)
assignedbooleanNoAssigned (default: true)
finalizedDiscountIdstringNoFinalized Discount identifier
requestIdstringNoRequest identifier

Add Promotions

POST /api/v1/partner/loyalty/promotions

Create a new promotion. The name field is required and must be unique within the shop. Promo codes must also be unique across all promotions. If salesChannels is empty or includes Ecommerce, the promotion is automatically marked as consumer-facing.

Request Body

FieldTypeRequiredDescription
namestringYesName
promoDescstringNoPromo Desc
discountAmtnumberNoDiscount Amt
promocodestringNoPromocode
promoCodeRequiredbooleanNoPromo Code Required (default: false)
consumerFacingbooleanNoConsumer Facing (default: false)
startDatelongNoStart timestamp (epoch ms)
endDatelongNoEnd timestamp (epoch ms)
activebooleanNoWhether active (default: true)
maxAvailableintegerNoMax Available (default: 0)
usageCountintegerNoUsage Count (default: 0)
enableMaxAvailablebooleanNoEnable Max Available (default: false)
limitPerCustomerintegerNoLimit Per Customer (default: 0)
enableLimitPerCustomerbooleanNoEnable Limit Per Customer (default: false)
restrictMemberGroupsbooleanNoRestrict Member Groups (default: false)
memberGroupIdsstring[]NoMember Group Ids
rulesPromotionRule[]NoRules
maxCashValuenumberNoMax Cash Value
enableBOGObooleanNoEnable B O G O (default: false)
versionstringNoVersion (default: Promotion.PromotionVersion.V1.name())
enableDayDurationbooleanNoEnable Day Duration (default: false)
dayStartTimeintegerNoDay Start timestamp (epoch ms)
dayEndTimeintegerNoDay End timestamp (epoch ms)
scalablebooleanNoScalable (default: false)
targetPriceRangebooleanNoTarget Price Range (default: false)
lowerPriceBoundnumberNoLower Price Bound
upperPriceBoundnumberNoUpper Price Bound
criteriaGroupsPromotionRuleGroup[]NoCriteria Groups
targetPromotionTargetRuleNoTarget (default: null)
exclusionsPromoProductExclusion[]NoExclusions
monbooleanNoMon (default: false)
tuesbooleanNoTues (default: false)
wedbooleanNoWed (default: false)
thurbooleanNoThur (default: false)
fribooleanNoFri (default: false)
satbooleanNoSat (default: false)
sunbooleanNoSun (default: false)
promoCodesstring[]NoPromo Codes
stackablebooleanNoStackable (default: true)
enablePromoCodebooleanNoEnable Promo Code (default: true)
enableMultiAppsbooleanNoEnable Multi Apps (default: false)
maxAppsintegerNoMax Apps (default: 0)
enableLimitPerXDaysbooleanNoEnable Limit Per X Days (default: false)
limitPerXDaysintegerNoLimit Per X Days (default: 0)

Response

Returns a Promotion object.

FieldTypeRequiredDescription
idstringNoUnique identifier
companyIdstringNoCompany identifier
shopIdstringNoShop identifier
createdlongNoCreated timestamp (epoch ms)
modifiedlongNoLast modified timestamp (epoch ms)
deletedbooleanNoWhether the record is deleted
updatedbooleanNoWhether the record has been updated
productBasedbooleanNoProduct Based (default: false)
isBundleBasedbooleanNoIs Bundle Based (default: false)
consumerFacingbooleanNoConsumer Facing (default: false)
companyPromoIdstringNoCompany Promo identifier
referralCodebooleanNoReferral Code (default: false)
namestringNoName
promoDescstringNoPromo Desc
discountAmtnumberNoDiscount Amt
promocodestringNoPromocode
referralPrefixstringNoReferral Prefix
promoCodeRequiredbooleanNoPromo Code Required (default: false)
consumerFacingbooleanNoConsumer Facing (default: false)
startDatelongNoStart timestamp (epoch ms)
endDatelongNoEnd timestamp (epoch ms)
activebooleanNoWhether active (default: true)
maxAvailableintegerNoMax Available (default: 0)
usageCountintegerNoUsage Count (default: 0)
enableMaxAvailablebooleanNoEnable Max Available (default: false)
limitPerCustomerintegerNoLimit Per Customer (default: 0)
enableLimitPerCustomerbooleanNoEnable Limit Per Customer (default: false)
restrictMemberGroupsbooleanNoRestrict Member Groups (default: false)
memberGroupIdsstring[]NoMember Group Ids
rulesPromotionRule[]NoRules
promotionTypestringNoPromotion Type. One of: Cart, Product, DeliveryFee, BOGO (default: Cart)
maxCashValuenumberNoMax Cash Value
enableBOGObooleanNoEnable B O G O (default: false)
enableDayDurationbooleanNoEnable Day Duration (default: false)
dayStartTimeintegerNoDay Start timestamp (epoch ms)
dayEndTimeintegerNoDay End timestamp (epoch ms)
scalablebooleanNoScalable (default: false)
targetPriceRangebooleanNoTarget Price Range (default: false)
lowerPriceBoundnumberNoLower Price Bound
upperPriceBoundnumberNoUpper Price Bound
versionstringNoVersion. One of: V1, V2, V3 (default: V1)
referralPointsnumberNoReferral Points
criteriaGroupsPromotionRuleGroup[]NoCriteria Groups
targetPromotionTargetRuleNoTarget (default: null)
exclusionsPromoProductExclusion[]NoExclusions
rankdiscountrankNoRank (default: Lowest)
monbooleanNoMon (default: false)
tuesbooleanNoTues (default: false)
wedbooleanNoWed (default: false)
thurbooleanNoThur (default: false)
fribooleanNoFri (default: false)
satbooleanNoSat (default: false)
sunbooleanNoSun (default: false)
promoCodesstring[]NoPromo Codes
promoSourcestringNoPromo Source. One of: Manual, MemberGroup (default: Manual)
stackablebooleanNoStackable (default: true)
importIdstringNoImport identifier
lowestPriceFirstbooleanNoLowest Price First (default: false)
assignedbooleanNoAssigned (default: true)
finalizedDiscountIdstringNoFinalized Discount identifier
restrictConsumerTypesbooleanNoRestrict Consumer Types (default: false)
consumerTypesstring[]NoConsumer Types
salesChannelssaleschannel[]NoSales Channels
autoApplybooleanNoAuto Apply (default: false)
enableMultiAppliesbooleanNoEnable Multi Applies (default: false)
maxAppliesintegerNoMax Applies (default: 0)
groupProductsBystringNoGroup Products By. One of: None, Brand, Category, Vendor (default: None)
enableUsageCooldownInDaysbooleanNoEnable Usage Cooldown In Days (default: false)
thirdPartyLoyaltyEnabledbooleanNoThird Party Loyalty Enabled (default: false)
usageCooldownInDaysintegerNoUsage Cooldown In Days (default: 0)

Get Promotion List

GET /api/v1/partner/loyalty/promotions

Retrieve a paginated list of all promotions, sorted alphabetically by name. Results are capped at 200 per page.

Query Parameters

ParameterTypeRequiredDescription
startintegerNoNumber of records to skip
limitintegerNoMaximum records to return

Response

Returns a paginated SearchResult of Promotion objects.

FieldTypeRequiredDescription
idstringNoUnique identifier
companyIdstringNoCompany identifier
shopIdstringNoShop identifier
createdlongNoCreated timestamp (epoch ms)
modifiedlongNoLast modified timestamp (epoch ms)
deletedbooleanNoWhether the record is deleted
updatedbooleanNoWhether the record has been updated
productBasedbooleanNoProduct Based (default: false)
isBundleBasedbooleanNoIs Bundle Based (default: false)
consumerFacingbooleanNoConsumer Facing (default: false)
companyPromoIdstringNoCompany Promo identifier
referralCodebooleanNoReferral Code (default: false)
namestringNoName
promoDescstringNoPromo Desc
discountAmtnumberNoDiscount Amt
promocodestringNoPromocode
referralPrefixstringNoReferral Prefix
promoCodeRequiredbooleanNoPromo Code Required (default: false)
consumerFacingbooleanNoConsumer Facing (default: false)
startDatelongNoStart timestamp (epoch ms)
endDatelongNoEnd timestamp (epoch ms)
activebooleanNoWhether active (default: true)
maxAvailableintegerNoMax Available (default: 0)
usageCountintegerNoUsage Count (default: 0)
enableMaxAvailablebooleanNoEnable Max Available (default: false)
limitPerCustomerintegerNoLimit Per Customer (default: 0)
enableLimitPerCustomerbooleanNoEnable Limit Per Customer (default: false)
restrictMemberGroupsbooleanNoRestrict Member Groups (default: false)
memberGroupIdsstring[]NoMember Group Ids
rulesPromotionRule[]NoRules
promotionTypestringNoPromotion Type. One of: Cart, Product, DeliveryFee, BOGO (default: Cart)
maxCashValuenumberNoMax Cash Value
enableBOGObooleanNoEnable B O G O (default: false)
enableDayDurationbooleanNoEnable Day Duration (default: false)
dayStartTimeintegerNoDay Start timestamp (epoch ms)
dayEndTimeintegerNoDay End timestamp (epoch ms)
scalablebooleanNoScalable (default: false)
targetPriceRangebooleanNoTarget Price Range (default: false)
lowerPriceBoundnumberNoLower Price Bound
upperPriceBoundnumberNoUpper Price Bound
versionstringNoVersion. One of: V1, V2, V3 (default: V1)
referralPointsnumberNoReferral Points
criteriaGroupsPromotionRuleGroup[]NoCriteria Groups
targetPromotionTargetRuleNoTarget (default: null)
exclusionsPromoProductExclusion[]NoExclusions
rankdiscountrankNoRank (default: Lowest)
monbooleanNoMon (default: false)
tuesbooleanNoTues (default: false)
wedbooleanNoWed (default: false)
thurbooleanNoThur (default: false)
fribooleanNoFri (default: false)
satbooleanNoSat (default: false)
sunbooleanNoSun (default: false)
promoCodesstring[]NoPromo Codes
promoSourcestringNoPromo Source. One of: Manual, MemberGroup (default: Manual)
stackablebooleanNoStackable (default: true)
importIdstringNoImport identifier
lowestPriceFirstbooleanNoLowest Price First (default: false)
assignedbooleanNoAssigned (default: true)
finalizedDiscountIdstringNoFinalized Discount identifier
restrictConsumerTypesbooleanNoRestrict Consumer Types (default: false)
consumerTypesstring[]NoConsumer Types
salesChannelssaleschannel[]NoSales Channels
autoApplybooleanNoAuto Apply (default: false)
enableMultiAppliesbooleanNoEnable Multi Applies (default: false)
maxAppliesintegerNoMax Applies (default: 0)
groupProductsBystringNoGroup Products By. One of: None, Brand, Category, Vendor (default: None)
enableUsageCooldownInDaysbooleanNoEnable Usage Cooldown In Days (default: false)
thirdPartyLoyaltyEnabledbooleanNoThird Party Loyalty Enabled (default: false)
usageCooldownInDaysintegerNoUsage Cooldown In Days (default: 0)

Get Promotion List

GET /api/v1/partner/loyalty/promotions/code/{promocode}

Look up a promotion by its promo code or referral code. If the code matches the company's referral code prefix, the system looks up the referring member and returns their information along with the active referral promotion. Otherwise, performs a standard promo code lookup.

Path Parameters

ParameterTypeDescription
promocodestringThe promocode

Response

Returns a PromotionMemberResult object.

FieldTypeRequiredDescription
idstringNoUnique identifier
companyIdstringNoCompany identifier
shopIdstringNoShop identifier
createdlongNoCreated timestamp (epoch ms)
modifiedlongNoLast modified timestamp (epoch ms)
deletedbooleanNoWhether the record is deleted
updatedbooleanNoWhether the record has been updated
productBasedbooleanNoProduct Based (default: false)
isBundleBasedbooleanNoIs Bundle Based (default: false)
consumerFacingbooleanNoConsumer Facing (default: false)
companyPromoIdstringNoCompany Promo identifier
namestringNoName
promoDescstringNoPromo Desc
discountAmtnumberNoDiscount Amt
promocodestringNoPromocode
referralPrefixstringNoReferral Prefix
promoCodeRequiredbooleanNoPromo Code Required (default: false)
consumerFacingbooleanNoConsumer Facing (default: false)
startDatelongNoStart timestamp (epoch ms)
endDatelongNoEnd timestamp (epoch ms)
activebooleanNoWhether active (default: true)
maxAvailableintegerNoMax Available (default: 0)
usageCountintegerNoUsage Count (default: 0)
enableMaxAvailablebooleanNoEnable Max Available (default: false)
limitPerCustomerintegerNoLimit Per Customer (default: 0)
enableLimitPerCustomerbooleanNoEnable Limit Per Customer (default: false)
restrictMemberGroupsbooleanNoRestrict Member Groups (default: false)
memberGroupIdsstring[]NoMember Group Ids
rulesPromotionRule[]NoRules
promotionTypestringNoPromotion Type. One of: Cart, Product, DeliveryFee, BOGO (default: Cart)
maxCashValuenumberNoMax Cash Value
enableBOGObooleanNoEnable B O G O (default: false)
enableDayDurationbooleanNoEnable Day Duration (default: false)
dayStartTimeintegerNoDay Start timestamp (epoch ms)
dayEndTimeintegerNoDay End timestamp (epoch ms)
scalablebooleanNoScalable (default: false)
targetPriceRangebooleanNoTarget Price Range (default: false)
lowerPriceBoundnumberNoLower Price Bound
upperPriceBoundnumberNoUpper Price Bound
versionstringNoVersion. One of: V1, V2, V3 (default: V1)
referralPointsnumberNoReferral Points
criteriaGroupsPromotionRuleGroup[]NoCriteria Groups
targetPromotionTargetRuleNoTarget (default: null)
exclusionsPromoProductExclusion[]NoExclusions
rankdiscountrankNoRank (default: Lowest)
monbooleanNoMon (default: false)
tuesbooleanNoTues (default: false)
wedbooleanNoWed (default: false)
thurbooleanNoThur (default: false)
fribooleanNoFri (default: false)
satbooleanNoSat (default: false)
sunbooleanNoSun (default: false)
promoCodesstring[]NoPromo Codes
promoSourcestringNoPromo Source. One of: Manual, MemberGroup (default: Manual)
stackablebooleanNoStackable (default: true)
importIdstringNoImport identifier
lowestPriceFirstbooleanNoLowest Price First (default: false)
assignedbooleanNoAssigned (default: true)
finalizedDiscountIdstringNoFinalized Discount identifier
restrictConsumerTypesbooleanNoRestrict Consumer Types (default: false)
consumerTypesstring[]NoConsumer Types
salesChannelssaleschannel[]NoSales Channels
autoApplybooleanNoAuto Apply (default: false)
enableMultiAppliesbooleanNoEnable Multi Applies (default: false)
maxAppliesintegerNoMax Applies (default: 0)
groupProductsBystringNoGroup Products By. One of: None, Brand, Category, Vendor (default: None)
enableUsageCooldownInDaysbooleanNoEnable Usage Cooldown In Days (default: false)
thirdPartyLoyaltyEnabledbooleanNoThird Party Loyalty Enabled (default: false)
usageCooldownInDaysintegerNoUsage Cooldown In Days (default: 0)
referralCodestringNoReferral Code
memberIdstringNoMember identifier

Get Promotion By Id

GET /api/v1/partner/loyalty/promotions/{promotionId}

Retrieve a single promotion by its ID.

Path Parameters

ParameterTypeDescription
promotionIdstringThe promotion i d

Response

Returns a Promotion object.

FieldTypeRequiredDescription
idstringNoUnique identifier
companyIdstringNoCompany identifier
shopIdstringNoShop identifier
createdlongNoCreated timestamp (epoch ms)
modifiedlongNoLast modified timestamp (epoch ms)
deletedbooleanNoWhether the record is deleted
updatedbooleanNoWhether the record has been updated
productBasedbooleanNoProduct Based (default: false)
isBundleBasedbooleanNoIs Bundle Based (default: false)
consumerFacingbooleanNoConsumer Facing (default: false)
companyPromoIdstringNoCompany Promo identifier
referralCodebooleanNoReferral Code (default: false)
namestringNoName
promoDescstringNoPromo Desc
discountAmtnumberNoDiscount Amt
promocodestringNoPromocode
referralPrefixstringNoReferral Prefix
promoCodeRequiredbooleanNoPromo Code Required (default: false)
consumerFacingbooleanNoConsumer Facing (default: false)
startDatelongNoStart timestamp (epoch ms)
endDatelongNoEnd timestamp (epoch ms)
activebooleanNoWhether active (default: true)
maxAvailableintegerNoMax Available (default: 0)
usageCountintegerNoUsage Count (default: 0)
enableMaxAvailablebooleanNoEnable Max Available (default: false)
limitPerCustomerintegerNoLimit Per Customer (default: 0)
enableLimitPerCustomerbooleanNoEnable Limit Per Customer (default: false)
restrictMemberGroupsbooleanNoRestrict Member Groups (default: false)
memberGroupIdsstring[]NoMember Group Ids
rulesPromotionRule[]NoRules
promotionTypestringNoPromotion Type. One of: Cart, Product, DeliveryFee, BOGO (default: Cart)
maxCashValuenumberNoMax Cash Value
enableBOGObooleanNoEnable B O G O (default: false)
enableDayDurationbooleanNoEnable Day Duration (default: false)
dayStartTimeintegerNoDay Start timestamp (epoch ms)
dayEndTimeintegerNoDay End timestamp (epoch ms)
scalablebooleanNoScalable (default: false)
targetPriceRangebooleanNoTarget Price Range (default: false)
lowerPriceBoundnumberNoLower Price Bound
upperPriceBoundnumberNoUpper Price Bound
versionstringNoVersion. One of: V1, V2, V3 (default: V1)
referralPointsnumberNoReferral Points
criteriaGroupsPromotionRuleGroup[]NoCriteria Groups
targetPromotionTargetRuleNoTarget (default: null)
exclusionsPromoProductExclusion[]NoExclusions
rankdiscountrankNoRank (default: Lowest)
monbooleanNoMon (default: false)
tuesbooleanNoTues (default: false)
wedbooleanNoWed (default: false)
thurbooleanNoThur (default: false)
fribooleanNoFri (default: false)
satbooleanNoSat (default: false)
sunbooleanNoSun (default: false)
promoCodesstring[]NoPromo Codes
promoSourcestringNoPromo Source. One of: Manual, MemberGroup (default: Manual)
stackablebooleanNoStackable (default: true)
importIdstringNoImport identifier
lowestPriceFirstbooleanNoLowest Price First (default: false)
assignedbooleanNoAssigned (default: true)
finalizedDiscountIdstringNoFinalized Discount identifier
restrictConsumerTypesbooleanNoRestrict Consumer Types (default: false)
consumerTypesstring[]NoConsumer Types
salesChannelssaleschannel[]NoSales Channels
autoApplybooleanNoAuto Apply (default: false)
enableMultiAppliesbooleanNoEnable Multi Applies (default: false)
maxAppliesintegerNoMax Applies (default: 0)
groupProductsBystringNoGroup Products By. One of: None, Brand, Category, Vendor (default: None)
enableUsageCooldownInDaysbooleanNoEnable Usage Cooldown In Days (default: false)
thirdPartyLoyaltyEnabledbooleanNoThird Party Loyalty Enabled (default: false)
usageCooldownInDaysintegerNoUsage Cooldown In Days (default: 0)

Update Promotions

PUT /api/v1/partner/loyalty/promotions/{promotionId}

Update an existing promotion. Send the full Promotion object in the request body. The same uniqueness constraints apply for name and promo codes as when creating.

Path Parameters

ParameterTypeDescription
promotionIdstringThe promotion i d

Request Body

FieldTypeRequiredDescription
idstringNoUnique identifier
companyIdstringNoCompany identifier
shopIdstringNoShop identifier
createdlongNoCreated timestamp (epoch ms)
modifiedlongNoLast modified timestamp (epoch ms)
deletedbooleanNoWhether the record is deleted
updatedbooleanNoWhether the record has been updated
productBasedbooleanNoProduct Based (default: false)
isBundleBasedbooleanNoIs Bundle Based (default: false)
consumerFacingbooleanNoConsumer Facing (default: false)
companyPromoIdstringNoCompany Promo identifier
referralCodebooleanNoReferral Code (default: false)
namestringNoName
promoDescstringNoPromo Desc
discountAmtnumberNoDiscount Amt
promocodestringNoPromocode
referralPrefixstringNoReferral Prefix
promoCodeRequiredbooleanNoPromo Code Required (default: false)
consumerFacingbooleanNoConsumer Facing (default: false)
startDatelongNoStart timestamp (epoch ms)
endDatelongNoEnd timestamp (epoch ms)
activebooleanNoWhether active (default: true)
maxAvailableintegerNoMax Available (default: 0)
usageCountintegerNoUsage Count (default: 0)
enableMaxAvailablebooleanNoEnable Max Available (default: false)
limitPerCustomerintegerNoLimit Per Customer (default: 0)
enableLimitPerCustomerbooleanNoEnable Limit Per Customer (default: false)
restrictMemberGroupsbooleanNoRestrict Member Groups (default: false)
memberGroupIdsstring[]NoMember Group Ids
rulesPromotionRule[]NoRules
promotionTypestringNoPromotion Type. One of: Cart, Product, DeliveryFee, BOGO (default: Cart)
maxCashValuenumberNoMax Cash Value
enableBOGObooleanNoEnable B O G O (default: false)
enableDayDurationbooleanNoEnable Day Duration (default: false)
dayStartTimeintegerNoDay Start timestamp (epoch ms)
dayEndTimeintegerNoDay End timestamp (epoch ms)
scalablebooleanNoScalable (default: false)
targetPriceRangebooleanNoTarget Price Range (default: false)
lowerPriceBoundnumberNoLower Price Bound
upperPriceBoundnumberNoUpper Price Bound
versionstringNoVersion. One of: V1, V2, V3 (default: V1)
referralPointsnumberNoReferral Points
criteriaGroupsPromotionRuleGroup[]NoCriteria Groups
targetPromotionTargetRuleNoTarget (default: null)
exclusionsPromoProductExclusion[]NoExclusions
rankdiscountrankNoRank (default: Lowest)
monbooleanNoMon (default: false)
tuesbooleanNoTues (default: false)
wedbooleanNoWed (default: false)
thurbooleanNoThur (default: false)
fribooleanNoFri (default: false)
satbooleanNoSat (default: false)
sunbooleanNoSun (default: false)
promoCodesstring[]NoPromo Codes
promoSourcestringNoPromo Source. One of: Manual, MemberGroup (default: Manual)
stackablebooleanNoStackable (default: true)
importIdstringNoImport identifier
lowestPriceFirstbooleanNoLowest Price First (default: false)
assignedbooleanNoAssigned (default: true)
finalizedDiscountIdstringNoFinalized Discount identifier
restrictConsumerTypesbooleanNoRestrict Consumer Types (default: false)
consumerTypesstring[]NoConsumer Types
salesChannelssaleschannel[]NoSales Channels
autoApplybooleanNoAuto Apply (default: false)
enableMultiAppliesbooleanNoEnable Multi Applies (default: false)
maxAppliesintegerNoMax Applies (default: 0)
groupProductsBystringNoGroup Products By. One of: None, Brand, Category, Vendor (default: None)
enableUsageCooldownInDaysbooleanNoEnable Usage Cooldown In Days (default: false)
thirdPartyLoyaltyEnabledbooleanNoThird Party Loyalty Enabled (default: false)
usageCooldownInDaysintegerNoUsage Cooldown In Days (default: 0)

Response

Returns a Promotion object.

FieldTypeRequiredDescription
idstringNoUnique identifier
companyIdstringNoCompany identifier
shopIdstringNoShop identifier
createdlongNoCreated timestamp (epoch ms)
modifiedlongNoLast modified timestamp (epoch ms)
deletedbooleanNoWhether the record is deleted
updatedbooleanNoWhether the record has been updated
productBasedbooleanNoProduct Based (default: false)
isBundleBasedbooleanNoIs Bundle Based (default: false)
consumerFacingbooleanNoConsumer Facing (default: false)
companyPromoIdstringNoCompany Promo identifier
referralCodebooleanNoReferral Code (default: false)
namestringNoName
promoDescstringNoPromo Desc
discountAmtnumberNoDiscount Amt
promocodestringNoPromocode
referralPrefixstringNoReferral Prefix
promoCodeRequiredbooleanNoPromo Code Required (default: false)
consumerFacingbooleanNoConsumer Facing (default: false)
startDatelongNoStart timestamp (epoch ms)
endDatelongNoEnd timestamp (epoch ms)
activebooleanNoWhether active (default: true)
maxAvailableintegerNoMax Available (default: 0)
usageCountintegerNoUsage Count (default: 0)
enableMaxAvailablebooleanNoEnable Max Available (default: false)
limitPerCustomerintegerNoLimit Per Customer (default: 0)
enableLimitPerCustomerbooleanNoEnable Limit Per Customer (default: false)
restrictMemberGroupsbooleanNoRestrict Member Groups (default: false)
memberGroupIdsstring[]NoMember Group Ids
rulesPromotionRule[]NoRules
promotionTypestringNoPromotion Type. One of: Cart, Product, DeliveryFee, BOGO (default: Cart)
maxCashValuenumberNoMax Cash Value
enableBOGObooleanNoEnable B O G O (default: false)
enableDayDurationbooleanNoEnable Day Duration (default: false)
dayStartTimeintegerNoDay Start timestamp (epoch ms)
dayEndTimeintegerNoDay End timestamp (epoch ms)
scalablebooleanNoScalable (default: false)
targetPriceRangebooleanNoTarget Price Range (default: false)
lowerPriceBoundnumberNoLower Price Bound
upperPriceBoundnumberNoUpper Price Bound
versionstringNoVersion. One of: V1, V2, V3 (default: V1)
referralPointsnumberNoReferral Points
criteriaGroupsPromotionRuleGroup[]NoCriteria Groups
targetPromotionTargetRuleNoTarget (default: null)
exclusionsPromoProductExclusion[]NoExclusions
rankdiscountrankNoRank (default: Lowest)
monbooleanNoMon (default: false)
tuesbooleanNoTues (default: false)
wedbooleanNoWed (default: false)
thurbooleanNoThur (default: false)
fribooleanNoFri (default: false)
satbooleanNoSat (default: false)
sunbooleanNoSun (default: false)
promoCodesstring[]NoPromo Codes
promoSourcestringNoPromo Source. One of: Manual, MemberGroup (default: Manual)
stackablebooleanNoStackable (default: true)
importIdstringNoImport identifier
lowestPriceFirstbooleanNoLowest Price First (default: false)
assignedbooleanNoAssigned (default: true)
finalizedDiscountIdstringNoFinalized Discount identifier
restrictConsumerTypesbooleanNoRestrict Consumer Types (default: false)
consumerTypesstring[]NoConsumer Types
salesChannelssaleschannel[]NoSales Channels
autoApplybooleanNoAuto Apply (default: false)
enableMultiAppliesbooleanNoEnable Multi Applies (default: false)
maxAppliesintegerNoMax Applies (default: 0)
groupProductsBystringNoGroup Products By. One of: None, Brand, Category, Vendor (default: None)
enableUsageCooldownInDaysbooleanNoEnable Usage Cooldown In Days (default: false)
thirdPartyLoyaltyEnabledbooleanNoThird Party Loyalty Enabled (default: false)
usageCooldownInDaysintegerNoUsage Cooldown In Days (default: 0)

Delete Promotions

DELETE /api/v1/partner/loyalty/promotions/{promotionId}

Soft-delete a promotion. The promotion is marked as deleted but not physically removed from the database.

Path Parameters

ParameterTypeDescription
promotionIdstringThe promotion i d

Get Rewards for member

GET /api/v1/partner/loyalty/rewards/members/{memberId}

Retrieve all rewards that a specific member qualifies for based on their current loyalty points. Each reward includes its state (Available if the member has enough points, Locked otherwise) and discount information.

Path Parameters

ParameterTypeDescription
memberIdstringThe member i d

Response

Returns a paginated SearchResult of LoyaltyMemberReward objects.

FieldTypeRequiredDescription
rewardIdstringNoReward identifier
rewardNamestringNoReward Name
rewardDescriptionstringNoReward Description
pointsRequiredintegerNoPoints Required
memberIdstringNoMember identifier
rewardStatestringNoReward State. One of: Used, Available, Locked (default: Locked)
usedDatelongNoUsed timestamp (epoch ms)
availableDatelongNoAvailable timestamp (epoch ms)
discountInfostringNoDiscount Info
typestringNoType. One of: REWARD, OFFER (default: REWARD)
expirationDatestringNoExpiration timestamp (epoch ms)
redemptionsAvailablelongNoRedemptions Available

Get Loyalty Points for member

GET /api/v1/partner/loyalty/points

Retrieve the current loyalty point balance for a member. You can identify the member by either memberId or consumerUserId — provide at least one.

Query Parameters

ParameterTypeRequiredDescription
memberIdstringNomember i d
consumerUserIdstringNoconsumer user i d

Response

Returns a MemberLoyaltyPoints object.

FieldTypeRequiredDescription
memberIdstringNoMember identifier
loyaltyPointsnumberNoLoyalty Points
lifetimePointsnumberNoLifetime Points

Update Loyalty Points for Members

POST /api/v1/partner/loyalty/points

Adjust a member's loyalty points. The action field determines the operation: Add (adds to both current and lifetime points), Subtract (reduces current balance only), or Replace (sets the current balance to an exact value). The points value must be non-negative. Provide either memberId or consumerUserId to identify the member.

Request Body

FieldTypeRequiredDescription
memberIdstringNoMember identifier
consumerUserIdstringNoConsumer User identifier
actionstringNoAction
notestringNoNote
pointsnumberNoPoints

Response

Returns a MemberLoyaltyPoints object.

FieldTypeRequiredDescription
memberIdstringNoMember identifier
loyaltyPointsnumberNoLoyalty Points
lifetimePointsnumberNoLifetime Points

Get Loyalty Activities

GET /api/v1/partner/loyalty/activity

Retrieve a paginated activity log of loyalty point changes for a member. Each entry includes the activity type (Accrue, Usage, Add, Subtract, Replace), amount, date, and associated transaction details. Results are capped at 100 per page. Identify the member by memberId or consumerUserId.

Query Parameters

ParameterTypeRequiredDescription
memberIdstringNomember i d
consumerUserIdstringNoconsumer user i d
startintegerNoNumber of records to skip
limitintegerNoMaximum records to return

Response

Returns a paginated SearchResult of LoyaltyActivityLog objects.

FieldTypeRequiredDescription
idstringNoUnique identifier
companyIdstringNoCompany identifier
shopIdstringNoShop identifier
createdlongNoCreated timestamp (epoch ms)
modifiedlongNoLast modified timestamp (epoch ms)
deletedbooleanNoWhether the record is deleted
updatedbooleanNoWhether the record has been updated
activityTypestringNoActivity Type. One of: Accrue, Usage, Add, Subtract, Replace, Subtract, Replace (default: Accrue)
memberIdstringNoMember identifier
employeeIdstringNoEmployee identifier
transactionIdstringNoTransaction identifier
rewardNostringNoReward No
rewardIdstringNoReward identifier
referralMemberIdstringNoReferral Member identifier
amountnumberNoAmount
referralAmountnumberNoReferral Amount
activityDatelongNoActivity timestamp (epoch ms)
transNostringNoTrans No
notestringNoNote
sourcestringNoSource (default: null)
springbigTypestringNoSpringbig Type. One of: REDEMPTION, VISIT, ADJUSTMENTS, ERROR, ALL, ALL
namestringNoName