POST posSupportAPI/promotion/redeem
The Redeem Promotion method. This request applies Fishbowl promotions for the specified promotions code to the specified POS order. The API will validate and apply the discount based on the Promotion details and restrictions associated with the Promotions code.
Request Information
URI Parameters
None.
Body Parameters
The Redeem Promotion request object.
RedeemPromotionRequestName | Description | Type | Additional information |
---|---|---|---|
couponCode |
The promotion code. |
string |
Required |
bill |
The POS transaction (check) details. |
Bill |
Required |
managerOverride |
When the ManagerOverride object exists and the ManagerOverrideValue is greater than $0.00, the redemption request is identified as a Manager Override request and the Manager Override rules apply. |
ManagerOverride |
None. |
isAuthorization |
If the Redemtion is not commited and it only represents an authorization |
boolean |
None. |
isOnline |
If the Promotion is Online Only |
boolean |
None. |
member |
The member details associated with the transaction. |
Member |
None. |
revenueCenter |
A POS may have multiple RevenueCenters. |
integer |
None. |
managerSwipe |
A Manager Swipe may be required by an offer |
boolean |
None. |
hasPOSDiscount |
Indicates if POS discount is part of the check |
boolean |
None. |
hasAutoDiscount |
Indicates if Auto discount is part of the check |
boolean |
None. |
redemptionChannel |
Indicates the Redemption Channel for the request. |
integer |
None. |
loyaltyMember |
The loyalty member details associated with the transaction. |
LoyaltyMember |
None. |
Request Formats
application/json, text/json
{ "couponCode": "sample string 1", "bill": { "checkNumber": 1, "server": { "id": "sample string 1", "fullName": "sample string 2" }, "manager": { "id": "sample string 1", "fullName": "sample string 2" }, "transactionDateTime": "2024-05-18T03:14:21.3572923-04:00", "businessDate": "2024-05-18T03:14:21.3572923-04:00", "orderTypeId": 1, "total": 1.0, "staffSelected": true, "billLineItems": [ { "itemId": 1, "quantity": 1.0, "amount": 1.0, "itemName": "sample string 1", "selected": true, "matchedPOS": true, "isCombo": true, "parentItemId": "sample string 2", "sizeId": 1 }, { "itemId": 1, "quantity": 1.0, "amount": 1.0, "itemName": "sample string 1", "selected": true, "matchedPOS": true, "isCombo": true, "parentItemId": "sample string 2", "sizeId": 1 } ] }, "managerOverride": { "managerOverrideValue": 1.0, "redemption": { "id": "sample string 1", "discountAmount": 2.0, "discountId": 3, "receiptText": "sample string 4", "outcome": { "id": 1, "name": "sample string 2", "message": "sample string 3" }, "discountUniqueIdentifier": "sample string 5" } }, "isAuthorization": true, "isOnline": true, "member": { "id": "sample string 1", "emailAddress": "sample string 2", "deviceId": "sample string 3" }, "revenueCenter": 2, "managerSwipe": true, "hasPOSDiscount": true, "hasAutoDiscount": true, "redemptionChannel": 1, "loyaltyMember": { "loyaltyNumber": "sample string 1" } }
application/xml, text/xml
<RedeemPromotionRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/OfferManagementPOSSupport.Models"> <Bill> <BillLineItems> <BillLineItem> <Amount>1</Amount> <IsCombo>true</IsCombo> <ItemId>1</ItemId> <ItemName>sample string 1</ItemName> <MatchedPOS>true</MatchedPOS> <ParentItemId>sample string 2</ParentItemId> <Quantity>1</Quantity> <Selected>true</Selected> <SizeId>1</SizeId> </BillLineItem> <BillLineItem> <Amount>1</Amount> <IsCombo>true</IsCombo> <ItemId>1</ItemId> <ItemName>sample string 1</ItemName> <MatchedPOS>true</MatchedPOS> <ParentItemId>sample string 2</ParentItemId> <Quantity>1</Quantity> <Selected>true</Selected> <SizeId>1</SizeId> </BillLineItem> </BillLineItems> <BusinessDate>2024-05-18T03:14:21.3572923-04:00</BusinessDate> <CheckNumber>1</CheckNumber> <Manager> <FullName>sample string 2</FullName> <Id>sample string 1</Id> </Manager> <OrderTypeId>1</OrderTypeId> <Server> <FullName>sample string 2</FullName> <Id>sample string 1</Id> </Server> <StaffSelected>true</StaffSelected> <Total>1</Total> <TransactionDateTime>2024-05-18T03:14:21.3572923-04:00</TransactionDateTime> </Bill> <CouponCode>sample string 1</CouponCode> <HasAutoDiscount>true</HasAutoDiscount> <HasPOSDiscount>true</HasPOSDiscount> <IsAuthorization>true</IsAuthorization> <IsOnline>true</IsOnline> <LoyaltyMember> <LoyaltyNumber>sample string 1</LoyaltyNumber> </LoyaltyMember> <ManagerOverride> <ManagerOverrideValue>1</ManagerOverrideValue> <Redemption> <DiscountId>3</DiscountId> <DiscountUniqueIdentifier>sample string 5</DiscountUniqueIdentifier> <DisountAmount>2</DisountAmount> <Id>sample string 1</Id> <Outcome> <Id>1</Id> <Message>sample string 3</Message> <Name>sample string 2</Name> </Outcome> <ReceiptText>sample string 4</ReceiptText> </Redemption> </ManagerOverride> <ManagerSwipe>true</ManagerSwipe> <OMMember> <DeviceId>sample string 3</DeviceId> <EmailId>sample string 2</EmailId> <Id>sample string 1</Id> </OMMember> <RedemptionChannel>1</RedemptionChannel> <RevenueCenter>2</RevenueCenter> </RedeemPromotionRequest>
application/x-www-form-urlencoded
Response Information
Resource Description
RedeemPromotionResponseName | Description | Type | Additional information |
---|---|---|---|
redemption |
The redemption details. |
Redemption |
Required |
promotion |
The promotion details. |
Promotion |
Required |
selectablePromotion |
Selectable Promotion Details (only returned if promotion is determined to be “Selectable Promotion” type). |
SelectablePromotion |
None. |
result |
The result object. |
Result |
Required |
Response Formats
application/json, text/json
{ "redemption": { "id": "sample string 1", "discountAmount": 2.0, "discountId": 3, "receiptText": "sample string 4", "outcome": { "id": 1, "name": "sample string 2", "message": "sample string 3" }, "discountUniqueIdentifier": "sample string 5" }, "promotion": { "id": 1 }, "selectablePromotion": { "eligibleBillLineItems": [ { "itemId": 1, "quantity": 1.0, "amount": 1.0, "itemName": "sample string 1", "selected": true, "matchedPOS": true, "isCombo": true, "parentItemId": "sample string 2", "sizeId": 1 }, { "itemId": 1, "quantity": 1.0, "amount": 1.0, "itemName": "sample string 1", "selected": true, "matchedPOS": true, "isCombo": true, "parentItemId": "sample string 2", "sizeId": 1 } ], "quantity": 1 }, "result": { "statusCode": 1, "description": "sample string 2", "exceptionTrackingMoniker": "sample string 3" } }
application/xml, text/xml
<RedeemPromotionResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/OfferManagementPOSSupport.Models"> <Promotion> <Id>1</Id> </Promotion> <Redemption> <DiscountId>3</DiscountId> <DiscountUniqueIdentifier>sample string 5</DiscountUniqueIdentifier> <DisountAmount>2</DisountAmount> <Id>sample string 1</Id> <Outcome> <Id>1</Id> <Message>sample string 3</Message> <Name>sample string 2</Name> </Outcome> <ReceiptText>sample string 4</ReceiptText> </Redemption> <Result> <Description>sample string 2</Description> <ExceptionTrackingMoniker>sample string 3</ExceptionTrackingMoniker> <StatusCode>1</StatusCode> </Result> <SelectablePromotion> <EligibleBillLineItems> <BillLineItem> <Amount>1</Amount> <IsCombo>true</IsCombo> <ItemId>1</ItemId> <ItemName>sample string 1</ItemName> <MatchedPOS>true</MatchedPOS> <ParentItemId>sample string 2</ParentItemId> <Quantity>1</Quantity> <Selected>true</Selected> <SizeId>1</SizeId> </BillLineItem> <BillLineItem> <Amount>1</Amount> <IsCombo>true</IsCombo> <ItemId>1</ItemId> <ItemName>sample string 1</ItemName> <MatchedPOS>true</MatchedPOS> <ParentItemId>sample string 2</ParentItemId> <Quantity>1</Quantity> <Selected>true</Selected> <SizeId>1</SizeId> </BillLineItem> </EligibleBillLineItems> <Quantity>1</Quantity> </SelectablePromotion> </RedeemPromotionResponse>