Deals
The following services are included in this functional area:
Deals Download Service
The following services are included in this functional area:
Get Item Location Deals
Business Overview
This service allows the Store Inventory system to query Merchandising for deals that are present for a given item/location combination based on a specific date and source (supplier, partner) criteria. Merchandising will respond with details of the off-invoice deals that the item/location are part of based on the date that has been provided. These details will include the active and close dates and the discounts that are present on these deals.
Input Payload Details
Table 5-52 Get - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
sourceId |
Yes |
Number (10) |
This is the source supplier or warehouse. |
location |
Yes |
Number (10) |
This contains the destination location of the store order. |
locationType |
Yes |
String (1) |
This contains the destination location type of the store order. |
item |
Yes |
String (25) |
Contains the item number in the distro. |
notBeforeDate |
Yes |
date |
Contains the first date that the delivery of the order will be accepted. |
Sample Input Message
{
"sourceId": 2400,
"location": 6000,
"locationType": "S",
"item": "100100076",
"notBeforeDate": "2001-12-31"
}
Response Code: 200 (Success)
Table 5-53 GetResponse - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
items |
No |
Collection of Object |
References a collection of store order initiated deals. |
Table 5-54 Items - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
dealId |
Yes |
Number (10) |
Deal that applies to the order item. |
dealType |
Yes |
String (10) |
Contains the Deal Type |
activeDate |
Yes |
date |
Date the deal will become active. |
closeDate |
No |
date |
Date the deal will end or ended |
dealClass |
No |
String (6) |
Identifies the calculation class of the deal component. |
limitType |
No |
String (6) |
Identifies whether thresholds will be set up as quantity values, currency amount values or percentages. Deal limit types will be held on the codes table under a code type of DLLT (Deal Component Threshold Limits). It can only be NULL for an M-type deal (vendor funded markdown). Examples of theshold limits are Amount - total value of units (A) and Quantity - number of Units (Q). |
valueType |
No |
String (6) |
Identifies whether the discount values associated with the thresholds will be set up as qty values, currency amount values, percentages or fixed amounts. Valid values are Q for qty, A for currency amount, P for percentage or F for fixed amount. Qty threshold deals are only allowed on off-invoice discounts. Deal threshold value types will be held on the codes table under a code type of DLL2. It can only be NULL for an M-type deal (vendor funded markdown). |
lowerLimit |
Yes |
Number (20,4) |
Lower limit of the deal component. This is the minimum value that must be met in order to get the specified discount. This value will be either a currency amount or quantity value, depending on the value of the threshold limit type. |
upperLimit |
Yes |
Number (20,4) |
Upper limit of the deal component. This is the maximum value for which the specified discount will apply. This value will be either a currency amount or quantity value, depending on the threshold_limit_type of this deal component. |
value |
Yes |
Number (20,4) |
Value of the discount that will be given for meeting the specified thresholds for this deal component. |
Sample Response Message
{
"items": [
{
"dealId": 133578,
"dealType": "String",
"activeDate": "2001-12-31",
"closeDate": "2001-12-31",
"dealClass": "String",
"limitType": "String",
"valueType": "String",
"lowerLimit": 500,
"upperLimit": 10000,
"value": 20
}
]
}
Response Code: 400 (Error)
In case of error, the following standard error response will be returned. The element "validationErrors" will be present when input payload or input parameters are not as per the schema definition of this service. The element "businessError" will be present if the payload passes schema validation but exception is caught while processing business logic.
Sample Error Message
{
"status": "ERROR",
"message": "Error found in validation of input payload",
"validationErrors": [
{
"error": "must be one of Y, N",
"field": "createRecord.arg0.approveInd",
"inputValue": "X"
}
],
"businessError": [
"Error message"
]
}