Mirror of Oracle documentation
Converted for search and offline reading. Authoritative source: Oracle. Diagrams and some complex tables are simplified — check the PDF when in doubt.
Javascript
Note
Several of the ReST services that may impact inventory or conflicts with data processing happening during nightly batch should not be used during the restricted nightly batch window.
Common Characteristics
Security
Services are secured using J2EE-based security model.
-
Realm-based User Authentication: This verifies users through an underlying Realm. The username and password are passed using HTTP basic authentication.
-
Role-based Authorization: This assigns users to roles; authenticated users can access the services with Merchandising or Sales Audit application roles or custom roles that are assigned to:
-
For Merchandising MERCH_SERVICE_ACCESS_PRIV
-
For Sales Audit MERCH_SERVICE_ACCESS_PRIV
-
-
The communication between the server and client is encrypted using one-way SSL. In non-SSL environments the encoding defaults to BASE-64 so it is highly recommended that these ReST services are configured to be used in production environments secured with SSL connections.
-
If you are using Merchandising data filtering, that will apply to the services as well. The app user ID used for the calling the service should be added to the Merchandising SEC_USER table (APP_USER_ID), and then associated to the appropriate group in SEC_USER _GROUP table. For more information on this see the Merchandising Security Guide - Volume 2 .
Note
oAuth App/Client Name (which is different than client ID) should be configured in the SEC_USER table.
Standard Request and Response Headers
Merchandising and Sales Audit ReSTful web services have the following standard HTTP headers:
Accept: application/xml or application/JSON
Accept-Version: 16.0 (service version number)
Accept-Language: en-US,en;q=0.8
Note
Accept-Language is not mandatory, and defaults to en-US . The user can change it though; in case they need content in a specific language. The language support in the response payload is limited to a selective service which was created for the mobile client use case.
Depending on the type of the operation or HTTP method, the corresponding response header is updated in the HTTP response with the following codes:
-
GET/READ : 200 -
PUT/CREATE : 201(Created) or200(Success) -
POST/UPDATE : 204or200(Success) -
DELETE : 204or200(Success)
Standard Error Response
Example response payload in case of service error is depicted below:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<messagesRDOes>
<messagesRDO>
<message>REST Service Version Mismatch</message>
<messageType>ERROR</messageType>
<status>BAD_REQUEST</status>
</messagesRDO>
</messagesRDOes>
-
Message: The error message - translated.
-
Message Type: Value of ‘ERROR’ is returned.
-
Status: For a bad request or error, the status is BAD_REQUEST.
-
The http error code for an error response is 400.
Merchandising URL Paths
Based on your implementation you will need to prefix the end point with just the deployment hostname. The format that should be used for the hostname is rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace>/ , where <Region Name> will be the region for your data center and <Customer Subnamespace> will be specific to your company’s name and environment (production, stage, and so on).
The Merchandising services are hosted on two separate application servers. The application server named MerchIntegrations contains new Integration web services for data publishing and subscription. The RmsReSTServices contains other, legacy web services.
The following links provide access to the Merchandising services:
- The ReSTful Web services swagger URL is available at:
https://<hostname/namespace>/RmsReSTServices/swagger-ui/
https://<hostname/namespace>/MerchIntegrations/swagger-ui/
- The ReSTful Web services
openapi.yamlis available at:
https://<hostname/namespace>/RmsReSTServices/services/openapi.yaml
https://<hostname/namespace>/MerchIntegrations/services/openapi.yaml
-
The ReSTful Web services’s WADL file is available at:
https://<hostname/namespace>/RmsReSTServices/services/private/application.wadl
https://<hostname/namespace>/MerchIntegrations/services/application.wadl
-
The ReSTful Web services are available at:
https://<hostname/namespace>/RmsReSTServices/services/private/<service>
https://<hostname/namespace>/MerchIntegrations/services/<service>
Sales Audit URL Paths
Based on the Implementation you may need to prefix the end point with just the deployment hostname or hostname plus access port.
The following links provide access to the Sales Audit services:
- The ReSTful Web services swagger URL is available at:
https://<hostname/namespace>/ResaReSTServices/swagger-ui/
- The ReSTful Web services
openapi.yamlis available at:
https://<hostname/namespace>/ResaReSTServices/services/openapi.yaml
- The ReSTful Web services’s WADL file is available at:
https://<hostname/namespace>/ResaReSTServices/services/private/
application.wadl
- To access the ReSTful web services:
https://<hostname/namespace>/ResaReSTServices/services/private/<ResaService>
Fiscal Document Generation URL Paths
Based on your implementation you will need to prefix the end point with just the deployment hostname. The format to be used for the hostname is xxx-yyy-mfcs-
rhs.oracleindustry.com , where xxx-yyy is specific to your company’s name and environment (production, stage, and so on). The following links provide access to the Fiscal Document Generation services:
- The ReSTful Web services Javadocs are available at:
https://<hostname>/RfmReSTServices
- The ReSTful Web services’s WADL file is available at:
https://<hostname>/RfmReSTServices/services/private/application.wadl
- The ReSTful Web services are available at:
https://<hostname>/RfmReSTServices/services/private/application.wadl
OAuth for REST Service Authentication
OAuth 2.0 is the industry standard protocol for authorization. Merchandising cloud services REST Services now supports OAuth 2.0. To invoke these services, you need to obtain and access token and use it as a bearer token.
Note
Basic Authentication access is no longer supported for these services. Allocation Cloud Service will still use Basic Authentication with this release.
Steps to Enable
To obtain a token and call the services, use the following steps:
1. This step should be performed one time for a given environment. Generate OAuth Client App with the environment-specific scope.
Each environment has a different scope that is available after the provisioning of the environment. Use this scope to generate the OAuth Client App using the Retail Home UI. For details, refer to the ”Creating OAuth Client Apps” section of the Retail Home Administration Guide , which can be found under Common Cloud Services Solutions in the Oracle Retail Help Center. Once the OAuth Client App is generated, note the client ID and secret. This information will be required for an access token to call REST services.
2. Get an access token using the OAuth client ID and secret from IDCS.
export ACCESS_TOKEN="$(curl -u <Client ID>:<Secret> -H 'Content-Type:
application/x-www-form-urlencoded;charset=UTF-8' --request POST https://
<IDCS_BASE_URL>/oauth2/v1/token -d
'grant_type=client_credentials&scope=<Customer Environment Specific
Scope>' | jq -r '.access_token')"
The token is generally valid for 1 hour.
3. REST clients that need to call Merchandising REST service end points should use the client ID and secret of the OAuth client generated in the previous step to get an access token.
OAuth tokens can also be obtained by REST client tools like Postman for testing purposes by filling in the necessary details like client ID/secret and scope. Use the below information in such cases:
-
Authorization: OAuth 2.0
-
Access Token URL:
https://<IDCS_BASE_URL>/oauth2/v1/token -
Client ID:
-
Client Secret:
-
Scope:
– The scope pattern that is used in the MFCS IDCS app creation template is rgbu:merch:<SERVICETYPE>-<ENVIRONMENT> where SERVICETYPE is MFCS and ENVIRONMENT is the environment type ( STG , PRD , UAT , DEV1 , DEV2 , and so on).
For example:
-
"scope": "rgbu:merch:MFCS-PRD" -
"scope": "rgbu:merch:MFCS-STG"
Example using the access token as a bearer token:
curl --location --request GET 'http://<hostname or IP address>:<port number>/
RmsReSTServices/services/private/Common/vDate' \ --header 'Authorization:
Bearer $ACCESS_TOKEN'
Date Format
Few input date and output date fields are in long format. The others are in SQL Date format. The new MerchIntegrations service supports dates in the yyyy-mm-dd format and datetimes in the yyyy-mm-ddTHH24:Mi:SS.SSSZ format.
Dynamic Response Field Filtering
The ReST service call responses can be customised for precise data retrieval through the use of the include and exclude query parameters. These parameters provide the capability to selectively choose data fields to be included or excluded in the API response to ensure the presence of only relevant information.
‘Include’ Parameter
Through the ‘include’ parameter, you can provide a list of specific attributes/data fields to be included in the specific response from available fields in the service. This list should be formatted using JSON dot notation; for example, items.item,items.status, items.dept,items.itemSupplier.supplier . Use of this parameter will make the API response concise, containing only the requested fields.
‘Exclude’ Parameter
In contrast, the exclude parameter offers a complementary approach. You can provide a list of attributes to be excluded from the response, using JSON dot notation. The API then returns a comprehensive dataset, filtered to exclude only the specified fields. This is particularly useful when most of the data is required but you need to omit certain fields from the response.
For details on the Publish API, refer to reference paper Publish APIs - Customer Enablement Overview available in Oracle Retail Merchandising Documentation Library (Doc ID 1585843.1) in My Oracle Support.
Limited Availability During Nightly Batch Cycle
Several of the consume ReST services can interfere with batch jobs running during the MFCS nightly batch window. To avoid data processing conflicts, several ReST services are either not available during the entire duration of the nightly batch window or unavailable for a portion of the nightly batch. These services will fail with a 400 error if they are invoked during the window of unavailability.
The availability of the Rest services is categorized as:
1. Available 24/7 – These services are available 24/7 except for the time during which the application is being patched. Most services are available 24/7 and this includes all the GET services and most of the foundation data setup.
2. Not available during entire nightly batch – A small set of services are not available during the entire window of the nightly batch cycle. This includes services that are only active on certain dates (like stock count schedule, cost changes) or services that can influence the business logic of several jobs (like update item, item/supplier, store, reclassification, and so on).
The POM job START_BATCH_JOB disables these services by setting the value of batch_running_ind to Y in the rms_batch_status table. The POM job END_BATCH_JOB switches the indicator back to N and the services are then available to process the data.
3. Not available during Inventory batch window - The web services that impact inventory buckets are not available during portions of the nightly batch during which inventory-related batch processes are running. This includes the services related to the functionality of receipts, transfers, allocations, inventory adjustment, customer orders, and so on.
The POM job STOP_RIB_ADAPTOR_INV_JOB disables these services by setting the value of inventory_batch_running_ind to Y in the table rms_batch_status . The job START_RIB_ADAPTOR_INV_JOB switches the indicator to N to reenable the services.
4. Not available during Costing and Inventory batch window – Some of the services interfere with (in addition to impacting) the inventory buckets, which also impacts the cost component and expenses. These services are not available during the inventory batch window ( inventory_batch_running_ind = Y ) and while costing batch jobs are running at the initial phase of the nightly batch. This includes services related to functionality of purchase orders, item expenses, item HTS, supplier updates, exchange rate updates, and so on.
The POM job DUMMY_START_NIGHT_BATCH_JOB disables these services during the costing batch window by setting costing_batch_running_ind to Y in the rms_batch_status table. The job END_COSTING_BATCH_JOB switches the indicator to N , which reenables the services once the costing batches are complete.
Note
MerchIntegration services having limited availability during nightly batch have a custom property named x-batch-dependency in the openapi.yaml file.
Custom HTTP Headers
The Rest Service supports custom HTTP Headers that can be used to exchange additional metadata about the service calls. These are:
- X-Correlation-ID: The client can include a unique ID in the HTTP header “X-CorrelationID” to uniquely trace the service call. The input X-Correlation-ID is captured in server logs and in the
service_metricstable to provide details of the outcome of the service call. While the expectation is that the client should have a unique correlation ID in every request, the uniqueness is not validated by the ReST service.
In the response HTTP header, X-Correlation-ID is always included. If the request HTTP header contains a X-Correlation-ID, the same value IS returned in the response HTTP header. If the input header is missing the correlation id, a server generated request id (UUID) IS populated in the response X-Correlation-ID header field. The server generated request ID is captured in service_metrics table.
Best Practice – The client should generate a UUID (up to 36 bytes) and include the UUID in the request in the HTTP header X-Correlation-ID and persist the ID in some data store
for traceability purposes. In case of exceptions or troubleshooting, this ID is handy when checking the table service_metrics for how the server processed the request.
Example usage: The client makes a call and the client crashes before the response is received, or there was timeout thrown by one of the infrastructure components between the client and the application server (like load balancer or routers). The correlation ID can be checked in the table service_metrics to identify the actual response. If the service method is POST or PUT or DELETE, the table service_payload can be referenced to get the response payload for that request.
Note
Capturing X-Correlation-ID in server logs or in the table service_metrics is done by the ReST Service application server and the request should have arrived at this server for the service request to be logged. The application server captures the request in the service_metrics table when the request is received. After the request is processed, the server updates the same row in the service_metrics table to capture the response status.
-
X-Client-Principal-User: The client can include an optional HTTP Header in the request to provide a business user identifier in a system-to-system service call to allow for capturing the business user that created or updated the content of the request. As part of the service request in which data is created or updated, the audit columns
create_idandlast_update_idcapture the OAuth client name used to make the service call. In the request containing X-Client-Principal-User, this value is used as-is (without any validation) to populate the audit columns. -
X-Content-Has-More: This HTTP Header (
trueorfalse) is included in the response for several Merch Integration Publish API. The GET services that supports pagination includes the fieldhasMorein the payload to inform the client if there are additional pages to be requested. This information is also captured in the HTTP Header to allow the client to quickly access this information without parsing the response payload. -
X-Content-Offset-Key: This HTTP Header is included in the response, along with X- Content-Has-More, when there are additional pages to be requested for a service supporting pagination using the query parameter
offsetkey. The client can use the value from the HTTP Header instead of reading it from inside the payload to construct the URL for the next page. -
X-Content-Count: This HTTP Header is included as an additional information in several Merch Integration Publish APIs to inform the client of the number of records in the response payload.
Paging
Some of the Merchandising and Sales Audit ReSTful web services have the potential to bring back a significant number of records, and therefore these services are equipped to segment the result into pages. The page number to retrieve and the size of the page are added as input parameters to all the paged services.
Each paged result includes the following information:
-
Total Record Count: Displays the number of all records matching the service input criteria.
-
Next Page URL: Shows the service URL with same input parameters, but with the pageNumber plus 1, when more records exist.
GET /PurchaseOrder? pageNumber=1 0&pageSize=20 Request ee, ~ c Response OO — JSON: O {“links” : [{“href”: “/Resource?pageNumber=11&pageSize=20”, “rel”: “next”, “type”: “application/xml”,““methodType”: “GET”}, {“href”: “/Resource?pageNumber=9 &pageSize=20”, “rel”: “prev”, “type”: “application/xml”,““methodType”: “GET”},], “results” : [ {“item” : “1220003”,“itemDesc” : “itemDesc”,}, {“item” : “12200031”,“itemDesc” : “itemDescl”, } ], }
Omnichannel integration ReSTful services may also be enabled for external consumers. These two enablements are performed through the Web Service Configuration Screen in Merchandising. After a service is enabled, the table triggers will start writing data to respective change log tables and the corresponding background job will start populating JSON cache tables. When a service is disabled, the ReST service will be unavailable, triggers will stop capturing new changes, and background process will clean up the JSON cache table. For details on the Publish API, refer to reference paper Publish APIs - Customer Enablement Overview available in Oracle Retail Merchandising Documentation Library (Doc ID 1585843.1) in My Oracle Support. For more details on how to enable a web service, see the Merchandising Administration Guide .
The below listed services can be enabled or disabled using the Merchandising UI,
-
Get Allocation Details for Provided Allocation
-
Get Differentiator Groups
-
Get Differentiator Details
-
Get Differentiator Type Details for Provided Type
-
Get Item Available Inventory at Customer Orderable Locations
-
Get Item Location Details
-
Get Item Details for All or Provided Items
-
Get Item VAT Details
-
Get Class Details for Provided Class
-
Get Purchase Order Details
-
Get Organizational Hierarchy
-
Partner Publish Services
-
Purchase Order Work Order Publish Services
-
RTV Publish Services
-
Get Receiver Unit Adjustment
-
Get Store Details
-
Supplier Publish Services
-
Get Transfer
-
Transfer Work Order Publish Services
-
REST Endpoint for UDA details
-
Get Warehouse Details
-
REST Endpoint for Omni channel/Diff Group
-
REST Endpoint for Omni channel/diff Ids
-
REST Endpoint for Omnichannel/Dimension Type details
-
REST Endpoint for Omnichannel/Dimension Value details
-
REST Endpoint for Omnichannel/future Inventory
-
REST Endpoint for Omni channel/Inventory/Store details
-
REST Endpoint for Omni channel/Inventory/Warehouse details
-
REST Endpoint for Omnichannel/item Image
-
REST Endpoint for Omnichannel/Item Initial Price details
-
REST Endpoint for Omnichannel/Item Location details
-
• REST Endpoint for Omni channel/ Item details
-
REST Endpoint for Omni channel/ Item UPC details
-
REST Endpoint for Omni channel/ Merchandise Hierarchy details
-
REST Endpoint for Omni channel/Org hier descendant’s details
-
REST Endpoint for Omni channel/Org hierarchy details
-
REST Endpoint for Omni channel/refresh Date
-
REST Endpoint for Omnichannel/related Item
-
• REST Endpoint for Omnichannel/Retail Store details
-
REST Endpoint for Omnichannel/vat
-
REST Endpoint for Omni channel/Warehouse details
File Transfer Services (FTS)
Business Overview
File Transfer Services (FTS) provide an endpoint for the customer to be used when working with files that are uploaded to and downloaded from the Merchandising Cloud Service Suite. These services are used by Merchandising and Sales Audit (RMFCS), Pricing (RPCS), Invoice Matching (ReIMCS), Allocation (RACS) and the Data Conversion tool. They allow you to manage uploading and downloading files to Oracle Cloud Infrastructure Object Storage, which is an internet-scale, high-performance storage platform that offers reliable and cost-efficient data durability.
For each customer environment, buckets, which are logical containers for storing objects, will be created in Object Storage. Any type of data, regardless of content type, is stored as an object. An object is composed of the object itself and metadata about the object. Any file uploaded through FTS to Object Storage has a retention period of 7 days before it is automatically purged.
The services use OAUTH 2.0 client credential authentication. Once authentication passes, the internal file transfer services that retrieve a pre-authenticated request (PAR) are called to upload and download files to Object Storage. The primary role of these services is to ensure that only valid external users can call the service by enforcing authorization policies.
List of services:
-
List Storage Prefixes
-
Retrieve PAR for Uploading Files
-
Retrieve PAR for Downloading Files
-
Delete Files
-
List Files
-
FTS Health Check
URL Prefix: https://rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace>/RmsPlatformServices/services/private
The final URL will be the URL Prefix followed by the ReST URL path mentioned in each service description below.
To start uploading or downloading the files to/from Object Storage, storage prefixes should be registered first.
The table below shows the prefixes used by each of the solutions when calling the above listed services. By default, all the storage prefixes below will be registered automatically.
| RMFCS | RPCS | ReIMCS | RACS | Data Conversion | |
|---|---|---|---|---|---|
| Incoming | /incoming | /incoming/reim | /incoming/ alloc | /dataconversion/ incoming | |
| Outgoing | /outgoing | /dataconversion/ outgoing | |||
| Reject | /reject | n/a | n/a | ||
| Downloaded | /download | ed | /downloaded/reim | /downloaded/ alloc | n/a |
| Archive | n/a | n/a | n/a | n/a |
Table 5-1 Administrative Processes
| Storage Prefix | Service | File Name |
|---|---|---|
| AdminProcess | Dynamic | dynamic_hierarchy/ |
| Hierarchy | dynamic_hierarchy_mapping_tl.csv |
List Storage Prefixes
Business Overview
This service is used for retrieving Object Storage prefixes.
Service Type
Get
ReST URL
/FTSWrapper/listprefixes
Headers
| Key | Value |
|---|---|
| Accept-Language | String (Ex: en-US) |
Output
The output metadata contains the prefix details of the request including validation error, if any.
For Success:
[
"downloaded",
"incoming",
]
For Failure:
{
"error_message": "string"
}
Retrieve PAR for Uploading Files
Business Overview
This service is used for retrieving an Object Storage pre-authenticated request (PAR) for uploading files. The response from the service is then used to upload the files in the user specified prefix from Object Storage using curl. The specified prefix is the staging location for input file that is processed by one of the Merchandising cloud service upload batches.
Service Type
Post
ReST URL
/FTSWrapper/upload
Headers
Key Value Accept-Language String (Ex: en-US) Request body { "listOfFiles": [ { "storagePrefix": "string", "fileName": "string" } ] }
Output
| Parameter Name | Data Type |
|---|---|
| id | String |
| name | String |
| accessUri | String |
| objectNames |
|
| access | String |
| timeExpires | Timestamp |
| timeCreated | Timestamp |
The output metadata contains the PAR details of the request including validation error, if any
For Success:
{
"id": "string",
"name": "string",
"accessUri": "string",
"objectNames": [
"string"
],
"accessType": "string",
"timeExpires": "timestamp",
"timeCreated": "timestamp"
}
For Failure:
{
"error_message": "string"
}
Uploading the Batch Incoming File
To upload the file, use a curl command as shown below in the example, including the accessUri returned from the ReST service call. Provide the location of the file to be uploaded. The file must be uploaded before the expiration time. Below is an format of the curl command structure. The specified prefix is the staging location for input files that is processed by one of the Merchandising cloud service upload batches.
Example
curl https://<objectstorage_hostname/p/<pre authenticated request>/n/
<namespace>/b/<bucketname>/o/<prefixname>/<filename> --upload-file <filename>
Retrieve PAR for Downloading Files
Business Overview
This service is used for retrieving an Object Storage pre-authenticated request (PAR) for downloading files. The response from the service is then used to download the files in the user specified prefix from Object Storage using curl . The specified prefix is the staging location for file that is processed by one of the Merchandising cloud service batches.
Service Type
Post
ReST URL
/FTSWrapper/download
Headers
| Key | Value |
|---|---|
| Accept-Language | String (Ex: en-US) |
| Request Body | |
{"listOfFiles": [{"storagePrefix": "string","fileName": "string"}]} |
Output
| Parameter Name | Data Type |
|---|---|
| id | String |
| name | String |
| accessUri | String |
| objectNames |
|
| access | String |
| timeExpires | Timestamp |
| timeCreated | Timestamp |
The output metadata contains the PAR details of the request including validation error, if any.
For Success:
{
"id": "string",
"name": "string",
"accessUri": "string",
"objectNames": [
"string"
],
"accessType": "string",
"timeExpires": "timestamp",
"timeCreated": "timestamp"
}
For Failure:
{
"error_message": "string"
}
Downloading the File
To download the file, use the curl command to the accessUri returned from the output metadata. You can download the file before the expiration time. The specified prefix is the staging location for file that is processed by one of the Merchandising cloud service batches.
Example
curl https://<objectstorage_hostname>/p/<pre authenticated request>/n/
<namespace>/b/<bucketname>/o/<prefixname>/<filename> -O
Delete Files
Business Overview
This service is used for deleting files in Object Storage based on the provided prefix.
Service Type
Delete
ReST URL
/FTSWrapper/delete
Headers
Key Value Accept-Language String (Ex: en-US) Request body { "listOfFiles": [ { "storagePrefix": "string", "fileName": "string" } ] }
Output
The output metadata contains the output of the FTS service for deletion. Validation error will be output, if any.
For Success:
{ "filesDeleted": [ { "filePath": { "storagePrefix": "incoming", "fileName": "testFile.txt" }, "responseMessage": "File successfully deleted incoming/ testFile.txt" } ], "filesFailedDeletion": [] } For Failure: { "error_message": "string" }
List Files
Business Overview
This service provides a list of Object Storage files under the specified directory/prefix.
Service Type
Get
ReST URL
/FTSWrapper/listfiles
Headers
| Key | Value |
|---|---|
| Accept-Language | String (Ex: en-US) |
Input Parameters
| Parameter Name | Data Type |
|---|---|
| prefx | String |
| contains | String |
| scanStatus | String |
| Limit | String |
| Offset | String |
| Sort | String |
Output
| Parameter Name | Data Type |
|---|---|
| name | String |
| size | String |
| md5 | String |
| version | String |
| etag | String |
| createdDate | Timestamp |
| modifedDate | Timestamp |
| scanStatus | String |
| scanDate | Timestamp |
| scanMessage | String |
The output metadata contains the file detail of the request.
For Success:
{
"name": "string",
"size": "string",
"md5": "string",
"version":”string",
"etag": "string",
"createdDate": "timestamp",
"modifiedDate": "timestamp",
"scanStatus": "string",
"scanDate": "timestamp",
"scanMessage": "string",
}
FTS Health Check
Business Overview
This service checks the status of the File Transfer Service (FTS).
Service Type
Get
ReST URL
/FTSWrapper/ping
Headers
| Key | Value |
|---|---|
| Accept-Language | String (Ex: en-US) |
Output
The output metadata contains output of the FTS service for Health check which shows the status. Validation error will be output, if any.
For Success:
{
"appStatus": 200
}
For Failure:
{
"error_message": "string"
}
Merchandising to Omnichannel Services
The following services are included in this functional area:
-
REST Endpoint for Omni channel/Diff Group
-
REST Endpoint for Omni channel/diff Ids
-
REST Endpoint for Omni channel/Inventory/Store details
-
REST Endpoint for Omni channel/Inventory/Warehouse details
-
REST Endpoint for Omni channel/ Item details
-
REST Endpoint for Omni channel/ Item UPC details
-
REST Endpoint for Omni channel/ Merchandise Hierarchy details
-
REST Endpoint for Omni channel/Org hier descendant’s details
-
REST Endpoint for Omni channel/Org hierarchy details
-
REST Endpoint for Omni channel/refresh Date
-
• REST Endpoint for Omni channel/Warehouse details
-
REST Endpoint for Omnichannel/related Item
-
REST Endpoint for Omnichannel/Retail Store details
-
REST Endpoint for Omnichannel/Dimension Type details
-
REST Endpoint for Omnichannel/Dimension Value details
-
REST Endpoint for Omnichannel/future Inventory
-
REST Endpoint for Omnichannel/item Image
-
REST Endpoint for Omnichannel/Item Initial Price details
-
REST Endpoint for Omnichannel/Item Location details
-
REST Endpoint for Omnichannel/vat
REST Endpoint for Omni channel/Diff Group
Endpoint
MerchIntegrations/services/foundation/omnichannel/diff/group
Functional Area
Items - Item Foundation
Business Overview
This service publishes differentiator groups to the Omnichannel application and can also be consumed by downstream consuming systems. Functionally, the source view uses the differentiator-group header-plus-detail relationship, so only differentiator groups that currently have detail rows are published.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIFF_GROUP_HEAD, DIFF_GROUP_DETAIL
Additional business tables: DIFF_TYPE
JSON cache table: MERCHAPI_DIFF_GROUP
JSON generation view: V_MERCHAPI_DIFF_GROUP_JSON
The cache is refreshed from V_MERCHAPI_DIFF_GROUP_JSON, which builds the payload from DIFF_GROUP_HEAD, DIFF_TYPE, and DIFF_GROUP_DETAIL.
The view uses the header-plus-detail relationship, so only differentiator groups that currently have detail rows are published.
When the omnichannel dimension-type API is enabled, the same diff-group processing flow also repopulates the child dimension-type cache for impacted items.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_MERCHAPI_DIFF_GROUP_JSON. No additional filter criteria were identified beyond the cache-build logic.
Rebuild marks cache rows deleted when the group no longer exists in V_MERCHAPI_DIFF_GROUP_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIFF_GROUP (ICL consumer name = MERCHAPI)
Delta processing is driven by ICL_RMS_DIFF_GROUP.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_OMNI_DIFF_GROUP
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_OMNI_DIFF_GROUP_ADHOC_PROCESS → MERCHAPI_OMNI_DIFF_GROUP_ADHOC_JOB
Webhook configuration api name: foundation/omnichannel/diff/group
Special handling
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/diff/group
Input Parameters
Output
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| offsetkey | No | String | Offset key |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude able 5-2 PageRe | No sultsItemsVMercha | String piDiffGrp - Object. See list | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) of elements for detail |
| Element Name | Required | Data Type | Description |
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-2 PageResultsItemsVMerchapiDiffGrp - Object. See list of elements for detail
Table 5-3 VMerchapiDiffGrp - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for Diff group. |
| diffgroupid | No | String (10) | This column contains the Diff group ID. |
| diffgroupdesc | No | String (120) | This column contains the Diff group’s description. |
| difftypeid | No | String (6) | This column contains the Diff type ID. |
| difd | No | String (10) | This column contains the Diff ID. |
Table 5-4 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"diffgroupid": "BASIC CLRS",
"diffgroupdesc": "Basic Color Pallet",
"difftypeid": "C",
"diffid": "GREEN"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"diffgroupid": "1177",
"diffgroupdesc": "EIT_Diff_Group_1",
"difftypeid": "CF",
"diffid": "4280"
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/
omnichannel/diff/group?
before=2021-05-06T16%3A12%3A02.551757%2B08%3A00&limit=1&since=1970-01-01T00%3A
00%3A00.001Z",
"rel": "self"
},
{
"href": "http:// <hostname>/MerchIntegrations/services/foundation/
omnichannel/diff/group?
before=2021-05-06T16%3A12%3A02.551757%2B08%3A00&limit=1&offsetkey=1177%2C4280&
since=1970-01-01T00%3A00%3A00.001Z",
"rel": "next"
}
]
} "
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIFF_GROUP | Yes | Yes | Yes | Yes |
| MERCHAPI_DIFF_GROUP | Yes | Yes | Yes | Yes |
| V_MERCHAPI_DIFF_GROUP | Yes | No | No | No |
| V_MERCHAPI_DIFF_GROUP_JSON | Yes | No | No | No |
| V_MERCHAPI_ITEM_JSON | Yes | No | No | No |
| MERCHAPI_ITEM_DIFF_TYPE | Yes | Yes | Yes | Yes |
REST Endpoint for Omni channel/diff Ids
Endpoint
MerchIntegrations/services/foundation/omnichannel/diff
Functional Area
Items - Item Foundation
Business Overview
This service publishes differentiator IDs to the Omnichannel application and can also be consumed by downstream consuming systems. Functionally, it publishes the current differentiator master data only while the differentiator still resolves to a valid differentiator type.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIFF_IDS, DIFF_TYPE
Additional business tables: none
JSON cache table: MERCHAPI_DIFF_IDS
JSON generation view: V_MERCHAPI_DIFF_IDS_JSON
The cache is refreshed from V_MERCHAPI_DIFF_IDS_JSON, which joins DIFF_IDS to DIFF_TYPE so the payload includes both the differentiator and its type information.
Functionally, the published set is the current differentiator master data that still resolves to a valid differentiator type.
When the omnichannel dimension-type or dimension-value APIs are enabled, the same diff-ID processing flow also repopulates those child caches for impacted items.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_MERCHAPI_DIFF_IDS_JSON. No additional filter criteria were identified beyond the cache-build logic.
Rebuild marks cache rows deleted when the differentiator no longer exists in V_MERCHAPI_DIFF_IDS_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIFF_IDS, ICL_RMS_DIFF_TYPE (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on DIFF_IDS, DIFF_TYPE.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_OMNI_DIFF_IDS
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_OMNI_DIFF_IDS_ADHOC_PROCESS → MERCHAPI_OMNI_DIFF_IDS_ADHOC_JOB
Webhook configuration api name: foundation/omnichannel/diff
Special handling
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/diff
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| offsetkey | No | String | Offset key |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-5 PageResultsItemsVMerchapiDiffIds - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-6 VMerchapiDiffIds - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for Diff. |
| difd | No | String (10) | This column contains the Diff ID. |
| diffdesc | No | String (120) | This column contains the Diff description. |
| difftype | No | String (6) | This column contains the Diff type. |
Table 5-6 (Cont.) VMerchapiDiffIds - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| difftypedesc | No | String (120) | This column contains the Diff type description. |
Table 5-7 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"diffid": "1930",
"diffdesc": "Green",
"difftype": "C",
"difftypedesc": "Color"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"diffid": "1005",
"diffdesc": "EIT_Diff_ID : Black",
"difftype": "CF",
"difftypedesc": "Cereal Flavour"
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/omnichannel/diff?
before=2021-05-05T16%3A18%3A57.100893%2B08%3A00&limit=1&since=1970-01-01T00%3A00%3A00.001
Z",
"rel": "self"
},
{
"href": "http:// <hostname> /MerchIntegrations/services/foundation/omnichannel/
diff?
before=2021-05-05T16%3A18%3A57.100893%2B08%3A00&limit=1&offsetkey=1005&since=1970-01-01T0
0%3A00%3A00.001Z",
"rel": "next"
}
]
}
"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIFF_IDS | Yes | Yes | Yes | Yes |
| ICL_RMS_DIFF_TYPE | Yes | Yes | Yes | Yes |
| DIFF_IDS | Yes | No | No | No |
| MERCHAPI_DIFF_IDS | Yes | Yes | Yes | Yes |
| V_MERCHAPI_DIFF_IDS_JSON | Yes | No | No | No |
| V_MERCHAPI_DIFF_IDS | Yes | No | No | No |
| V_MERCHAPI_ITEM_JSON | Yes | No | No | No |
| MERCHAPI_ITEM_DIFF_TYPE | Yes | Yes | Yes | Yes |
| MERCHAPI_ITEM_DIFF_VALUE | Yes | Yes | Yes | Yes |
REST Endpoint for Omni channel/Inventory/Store details
Endpoint
MerchIntegrations/services/inventory/omnichannel/inventory/store
Functional Area
Inventory
Business Overview
This service publishes store available inventory to the Omnichannel application and can also be consumed by downstream consuming systems. It includes the store availability position for active, transaction-level inventory items at stockholding stores that are enabled for customer orders, limited to sellable non-pack store rows. The response exposes stock on hand together with the derived available quantity after subtracting reserved and other non-available inventory buckets so consuming systems receive the store availability position used for fulfillment.
The underlying technical component for this service is same as ‘/inventory/available’. Refer to the API documentation for ‘/inventory/available’ for more details.
Service Type
GET
ReST URL
MerchIntegrations/services/inventory/omnichannel/inventory/store
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| nodelevel | No | String | Node Level. Allowed value is ‘STORE’. If not defned, fetches details for all stores. |
| nodeid | No | String (10) | Node Id. Should be a valid store number. |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-8 PageResultsItemsStoreAvailable - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-8 (Cont.) PageResultsItemsStoreAvailable - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-9 StoreAvailable - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | This feld contains the action for Store Inventory. |
| item | No | String (25) | This feld contains the unique alphanumeric value that identifes the item. This will be an approved sellable transaction-level item. |
| location | No | Number(10,0) | This feld contains the numeric identifer of the location in which the item is to be found. |
| loctype | No | String (1) | This feld contains the type of location in the location feld. Valid values are S (store). |
| availablequantity | No | Number(12,4) | This feld represents the available inventory of an item in a particular location. |
| stockonhand | No | Number(12,4) | This feld contains current stock on hand for the item. |
Table 5-9 (Cont.) StoreAvailable - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| standarduom | No | String (4) | This feld contains the unit of measure in which stock of the item is tracked at a corporate level. |
Table 5-10 LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description href No String Service URL rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": null, "item": "100100092", "location": 1521, "loctype": "S", "availablequantity": 10, "stockonhand": 12, "standarduom": "EA" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned, then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"item": "100000286",
"location": "1341",
"loctype": "S",
"availablequantity": 100,
"stockonhand": 100,
"standarduom": "EA"
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/
services/inventory/omnichannel/inventory/store?
before=2021-05-13T18%3A28%3A10.129377%2B05%3A30&limit=1&since=1970-01-01T00%3A
00%3A00.001Z",
"rel": "self"
},
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/
services/inventory/omnichannel/inventory/store?
before=2021-05-13T18%3A28%3A10.129377%2B05%3A30&limit=1&offsetkey=1341%2C10000
0286&since=1970-01-01T00%3A00%3A00.001Z",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| ITEM_LOC_SOH | Yes | No | No | No |
| STORE | Yes | No | No | No |
| MERCHAPI_ITEM_LOC | Yes | No | No | No |
REST Endpoint for Omni channel/Inventory/Warehouse details
Endpoint
MerchIntegrations/services/inventory/omnichannel/inventory/warehouse
Functional Area
Inventory
Business Overview
This service publishes warehouse available inventory to the Omnichannel application and can also be consumed by downstream consuming systems. It includes the warehouse availability position for active, transaction-level inventory items at stockholding warehouses that are enabled for customer orders, limited to sellable rows while still allowing warehouse pack items to publish. The response exposes stock on hand, the derived available quantity, and the physical warehouse linkage used for virtual-warehouse sourcing scenarios.
The underlying technical component for this service is same as ‘/inventory/available’. Refer to the API documentation for ‘/inventory/available’ for more details.
Service Type
GET
ReST URL
MerchIntegrations/services/inventory/omnichannel/inventory/warehouse
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| nodelevel | No | String | Node Level. Allowed value is ‘WAREHOUSE’. If not defned, fetches details for all warehouses. |
| nodeid | No | String (10) | Node Id. Should be a valid warehouse number if nodelevel is ’WAREHOUSE’. |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-11 PageResultsItemsOmnichannel_MerchapiItemLocSoh - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-11 (Cont.) PageResultsItemsOmnichannel_MerchapiItemLocSoh - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-12 Omnichannel_MerchapiItemLocSoh - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | This feld contains the action for Warehouse Inventory. |
| item | No | String (25) | This feld contains the unique alphanumeric value that identifes the item. This will be an approved sellable transaction-level item. For warehouse locations, pack items are also included. |
| location | No | Number(10,0) | This feld contains the numeric identifer of the location in which the item is to be found. |
| loctype | No | String (1) | This feld contains the type of location in the location feld. Valid values are W (warehouse). |
| availablequantity | No | Number(12,4) | This feld represents the available inventory of an item in a particular location. |
| stockonhand | No | Number(12,4) | This feld contains current stock on hand for the item. |
Table 5-12 (Cont.) Omnichannel_MerchapiItemLocSoh - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| standarduom | No | String (4) | This feld contains the unit of measure in which stock of the item is tracked at a corporate level. |
| physicalwarehouse | No | Number(10,0) | This feld contains the physical warehouse for location type of warehouse. |
Table 5-13 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": null,
"item": "100100092",
"location": 11001,
"loctype": "W",
"availablequantity": 10,
"stockonhand": 12,
"standarduom": "EA",
"physicalwarehouse": 11
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"item": "100000075",
"location": "10001",
"loctype": "W",
"availablequantity": 0,
"stockonhand": 0,
"standarduom": "EA",
"physicalwarehouse": 2
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/services/inventory/
omnichannel/inventory/warehouse?
before=2021-05-13T19%3A14%3A44.470363%2B05%3A30&limit=1&since=1970-01-01T00%3A00%3A00.001
Z",
"rel": "self"
},
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/services/inventory/
omnichannel/inventory/warehouse?
before=2021-05-13T19%3A14%3A44.470363%2B05%3A30&limit=1&offsetkey=10001%2C100000075&since
=1970-01-01T00%3A00%3A00.001Z",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| ITEM_LOC_SOH | Yes | No | No | No |
| WH | Yes | No | No | No |
| MERCHAPI_ITEM_LOC | Yes | No | No | No |
REST Endpoint for Omni channel/ Item details
Endpoint
MerchIntegrations/services/foundation/omnichannel/item
Functional Area
Items - Item Definition
Business Overview
This service publishes the item payload to the Omnichannel application and can also be consumed by downstream consuming systems. It publishes item definitions from approved item records and enriches them with merchandise hierarchy, differentiator, brand, and selected code-detail attributes. When callers supply nodelevel and nodeid, the service returns the item in the context of the requested store or warehouse by joining to MERCHAPI_ITEM_LOC, which adds local item description, local short description, and UIN type for that node. The source view itself publishes only current ITEM_MASTER rows in status A, while refresh processing also selects status D rows so delete actions can still be represented in the cache.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: ITEM_MASTER
Additional business tables: DEPS, GROUPS, DIVISION, CLASS, SUBCLASS, DIFF_GROUP_HEAD, DIFF_IDS, BRAND, SYSTEM_OPTIONS, CODE_DETAIL
JSON cache table: MERCHAPI_ITEM_MASTER
JSON generation view: V_MERCHAPI_ITEM_JSON
The JSON view is driven from ITEM_MASTER and enriched from hierarchy tables, differentiator setup, brand, system options, and code-detail lookups.
The source view publishes only items whose current ITEM_MASTER.STATUS = ‘A’, while refresh processing selects ITEM_MASTER rows in status A or D so deletes can still be represented in the cache.
The REST layer also supports location-scoped item output by joining the item cache to MERCHAPI_ITEM_LOC when nodelevel and nodeid are supplied, which adds local item description and UIN context for the requested store or warehouse.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_ITEM_JSON and apply ITEM_MASTER.STATUS IN (‘A’,‘D’).
ICL (Integration Change Log) table: ICL_RMS_ITEM_MASTER (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on ITEM_MASTER, and the shared item delta flow also refreshes the related UPC and dimension projections maintained under the same process configuration.
Item Approval Handling
Approval of an item also results in publish of foundation/omnichannel/item/upc, foundation/ omnichannel/item/dimensiontype, and foundation/omnichannel/item/dimensionvalue through the shared item flow. Approval also queues foundation/omnichannel/item/image, foundation/ omnichannel/item/relateditem, foundation/item/location, foundation/item/vat, and foundation/ taxLocationItem by writing the existing dependent source rows to those APIs’ ICL tables when the item reaches approved status.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_OMNI_ITEM_DIM_UPC
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_OMNI_ITEM_DIM_UPC_ADHOC_PROCESS → MERCHAPI_OMNI_ITEM_DIM_UPC_ADHOC_JOB
Webhook configuration api name: foundation/omnichannel/item
Special handling
Additional GET query parameters: nodelevel, nodeid.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime characteristics and should be evaluated separately. The available configuration for this service should therefore be reviewed and validated against the customer production data profile, including expected volume, message size, and access pattern, with the key performance-related configuration for this service covering the following:
Multi-threading and commit control
This service shares the API_OMNI_ITEM_DIM_UPC runtime with the omnichannel item, UPC, and dimension caches. Delta processing on that shared flow remains single-threaded, while initial seeding supports multi-threaded execution. Delta commit sizing is controlled through API_COMMIT_MAX_COUNTER, and initial-seeding thread and commit sizing are controlled through API_REFRESH_OVERRIDE_NO_OF_THREADS and API_REFRESH_OVERRIDE_COMMIT_MAX_COUNTER.
For initial seeding, thread and commit settings should be chosen together based on expected row volume, average message size, and the complex SQL query required to build the item message from ITEM_MASTER together with hierarchy, differentiator, brand, and lookup data. Common starting points for large-volume seeding are 8, 16, or 32 threads. Values of 48 or 64 threads should be considered only after testing and with awareness of competing workload in the environment. The delivered refresh override is currently 4 threads.
Commit sizing should be reviewed together with the thread setting. Typical values can range from about 1,000 rows, or even higher values such as 10,000. The delivered delta commit setting is currently 1000, and the delivered refresh override commit setting is currently 10000.
Dropping indexes and constraints during seeding
This option applies only to initial seeding, including truncate-and-load execution of the shared item cache. Even with refresh-override threading, larger parallel insert volumes can increase index maintenance overhead and slow the load.
To reduce that overhead, DROP_INDEX_ON_REFRESH can be enabled so indexes and constraints are dropped before seeding and rebuilt after the load completes.
This can improve data-load throughput, but the overall refresh plan should also account for the additional time needed for index rebuild after the seeding step finishes. GATHER_STATS_ON_REFRESH should normally remain enabled unless testing shows a need to change it.
REST fetch considerations
Item payloads can be comparatively large, so REST page size should be selected based on average message size so that the average response remains below about 10 MB per call. Common page-limit values are 1,000, 5,000, or 10,000 rows.
For full downloads, do not provide the since query parameter so the database can favor the primary-key access path. For delta downloads, use a small time window, typically a few minutes and at most a few hours, so the eligible row set on the LAST_UPDATE_DATETIME index remains small.
Wider delta windows, especially multi-day windows that can arise during outages or data recovery, generally do not perform well. For such scenarios, keeping BUILD_HISTOGRAM enabled allows the service to support recovery through smaller, more selective polling windows using the optimalBefore query parameter.
In this catch-up pattern, for requests up to 30 days in the past, the client provides optimalBefore and leaves before empty. The client then uses the returned before timestamp to continue polling incrementally until the backlog is cleared, and then resumes the normal shortwindow delta pattern. Hourly histogram processing groups LAST_UPDATE_DATETIME values into buckets of 10,000 rows in MERCHAPI_TIMESTAMP_HISTOGRAM using the shared HISTOGRAM_ROW_COUNT configuration.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/item
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| nodelevel | No | String | Node Level (STORE or WAREHOUSE) |
| nodeid | No | String (10) | Node Id |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-14 PageResultsItemsVMerchApiItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-14 (Cont.) PageResultsItemsVMerchApiItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-15 VMerchApiItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for item details. |
| item | No | String (25) | This feld specifes the unique alphanumeric value that identifes the item. |
| itemparent | No | String (25) | This feld specifes the alphanumeric value that uniquely identifes the item or group at the level above the item. |
| itemgrandparent | No | String (25) | This feld specifes the alphanumeric value that uniquely identifes the item or group two levels above the item. |
| itemlevel | No | Number(1,0) | This feld specifes the number indicating which of the three levels the item resides. The item level determines if the item stands alone or if it is part of a family of related items. |
Table 5-15 (Cont.) VMerchApiItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| tranlevel | No | Number(1,0) | This feld specifes the number indicating which of the three levels transactions occur for the item’s group. The transaction level is the level at which the item’s inventory is tracked in the system. |
| inventoryind | No | String (1) | This feld determines if an item holds inventory or not for item transformations. |
| diff1level | No | String (5) | This feld specifes diff1 level. |
| diff1type | No | String (6) | This feld specifes diff1 type. |
| diff1 | No | String (10) | This feld specifes the diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group or value. For an item that is not a parent, this feld may contain a value. |
| diff2level | No | String (5) | This feld specifes diff2 level. |
| diff2type | No | String (6) | This feld specifes diff2 type. |
| diff2 | No | String (10) | This feld specifes the diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group or value. For an item that is not a parent, this feld may contain a value. |
| diff3level | No | String (5) | This feld specifes diff3 level. |
| diff3type | No | String (6) | This feld specifes diff3 type. |
Table 5-15 (Cont.) VMerchApiItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diff3 | No | String (10) | This feld specifes the diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group or value. For an item that is not a parent, this feld may contain a value. |
| division | No | Number(4,0) | This feld specifes the number which uniquely identifes the division of the company. |
| groupid | No | Number(4,0) | This feld specifes the group in which the department exists. |
| dept | No | Number(4,0) | This feld uniquely identifes the department. |
| class | No | Number(4,0) | This feld uniquely identifes the class within the system. |
| uniqueclass | No | Number(10,0) | This feld uniquely identifes the department/class combination. |
| subclass | No | Number(4,0) | This feld uniquely identifes the subclass. |
| uniquesubclass | No | Number(10,0) | This feld uniquely identifes the department/class/ subclass combination. |
| description | No | String (250) | This feld specifes the description of the item. For items that have parents, this description will default to the parent’s description plus any differentiators. |
| shortdescription | No | String (120) | This feld specifes the short description of the item. |
| brandname | No | String (30) | This feld specifes the brand associated with an item. |
Table 5-15 (Cont.) VMerchApiItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| merchandiseind | No | String (1) | This feld indicates if the item is a merchandise item. Merchandise items are generally physical items that must be shipped or received and for which there is inventory. Non- merchandise items are often items which do not have inventory. Common examples include extra fees for service, extended warranties, alterations, or endlessly available items such as downloads, in-app purchases of bonus content, and subscriptions. |
| mfgrecretail | No | Number(20,4) | This feld specifes the manufacturer’s recommended retail price for the item. This feld is stored in the primary currency. |
| orginalunitretail | No | Number(20,4) | This feld specifes the retail price for the item. |
| catchweightind | No | String (1) | This feld specifes whether the item should be weighed when it arrives at a location. |
| itemservicelevel | No | String (6) | This feld specifes the value that restricts the type of shipment methods that RCOM can select for an item. |
| giftwrapind | No | String (1) | This feld determines whether the location will support gift wrapping or not. |
| shipaloneind | No | String (1) | This feld indicates if the item should be shipped to the customer in a separate package versus being grouped together in a box. |
Table 5-15 (Cont.) VMerchApiItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| standarduom | No | String (4) | This feld specifes the unit of measure in which stock of the item is tracked at a corporate level. |
| productclassifcation | No | String (6) | This feld determines how to pack customer orders, such as to determine products that may not be able to be packaged together. Examples of classifcations may include fragile, toxic, and heavy. |
| xdiff1desc | No | String (120) | This feld specifes diff1 description. |
| xdiff2desc | No | String (120) | This feld specifes diff2 description. |
| xdiff3desc | No | String (120) | This feld specifes diff3 description. |
| itemnumbertype | No | String (6) | This feld specifes what type the item is. Valid values for this feld are in the code type UPCT on the code_head and code_detail tables. |
| itemlocation | No | String (10) | This feld specifes if the service call was to fetch the enterprise view or a specifc location. The value is either ‘ent’ or the node ID parameter. |
| localdescription | No | String (250) | This feld specifes the local description of the item. This is applicable when the service query parameter of node level and node ID is used to fetch data for a specifc location. |
| localshortdescription | No | String (120) | This feld specifes the local short description of the item. This is applicable when the service query parameter of node level and node ID is used to fetch data for a specifc location. |
Table 5-15 (Cont.) VMerchApiItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| uintype | No | String (6) | This feld specifes the unique identifcation number (UIN) type used to identify the instances of the item at the location. This is applicable when the service query parameter of node level and node ID is used to fetch data for a specifc location. |
Table 5-16 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"item": "100100076",
"itemparent": null,
"itemgrandparent": null,
"itemlevel": 1,
"tranlevel": 1,
"inventoryind": "Y",
"diff1level": null,
"diff1type": null,
"diff1": null,
"diff2level": null,
"diff2type": null,
"diff2": null,
"diff3level": null,
"diff3type": null,
"diff3": null,
"division": 1,
"groupid": 1,
"dept": 3041,
"class": 1,
"uniqueclass": 1,
"subclass": 1,
"uniquesubclass": 1,
"description": "Regular Item 100100076",
"shortdescription": "100100076 Item",
"brandname": null,
"merchandiseind": "Y",
"mfgrecretail": 12.99,
"orginalunitretail": 12.99,
"catchweightind": "Y",
"itemservicelevel": null,
"giftwrapind": "Y",
"shipaloneind": "Y",
"standarduom": "EA",
"productclassification": null,
"xdiff1desc": null,
"xdiff2desc": null,
"xdiff3desc": null,
"itemnumbertype": "MANL",
"itemlocation": "ent",
"localdescription": "localItemDesc",
"localshortdescription": "localShortDesc",
"uintype": null
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| Elements | Description |
|---|---|
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Input
{
"items": [
{
"item": "100000024",
"action": "INSERT",
"itemlocation": "ent",
"itemparent": null,
"itemgrandparent": null,
"itemlevel": 1,
"tranlevel": 3,
"inventoryind": "Y",
"diff1level": null,
"diff1type": null,
"diff1": null,
"diff2level": null,
"diff2type": null,
"diff2": null,
"diff3level": null,
"diff3type": null,
"diff3": null,
"division": 1000,
"groupid": 108,
"dept": 1117,
"class": 1,
"uniqueclass": 51,
"subclass": 1,
"uniquesubclass": 432,
"description": "Test Item 100000024 ",
"shortdescription": "Test Item",
"localdescription": null,
"localshortdescription": null,
"brandname": null,
"merchandiseind": "Y",
"uintype": null,
"mfgrecretail": null,
"orginalunitretail": 13.2,
"catchweightind": "N",
"itemservicelevel": null,
"giftwrapind": "N",
"shipaloneind": "N",
"standarduom": "EA",
"productclassification": "APP",
"xdiff1desc": null,
"xdiff2desc": null,
"xdiff3desc": null,
"itemnumbertype": "MANL" }
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/
services/foundation/omnichannel/item?
before=2021-05-12T23%3A35%3A49.770127%2B05%3A30&nodelevel=COMPANY&limit=1&node
id=1&since=1970-01-01T00%3A00%3A00.001Z",
"rel": "self"
},
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/
services/foundation/omnichannel/item?
before=2021-05-12T23%3A35%3A49.770127%2B05%3A30&nodelevel=COMPANY&limit=1&node
id=1&offsetkey=100000024&since=1970-01-01T00%3A00%3A00.001Z ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| ICL_RMS_ITEM_MASTER | Yes | No | Yes | Yes |
| MERCHAPI_ITEM_MASTER | Yes | Yes | Yes | Yes |
| V_MERCHAPI_ITEM_MASTER | Yes | No | No | No |
| ICL_RMS_ITEM_IMAGE | No | Yes | No | No |
| ICL_RMS_RELATED_ITEM | No | Yes | No | No |
| ICL_RMS_ITEM_LOC | No | Yes | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
REST Endpoint for Omni channel/ Item UPC details
Endpoint
MerchIntegrations/services/foundation/omnichannel/item/upc
Functional Area
Items - Item Definition
Business Overview
This service publishes reference-item and UPC-style rows to the Omnichannel application and can also be consumed by downstream consuming systems. It uses the same underlying component as ‘foundation/omnichannel/item’. Functionally, the enterprise query returns only below-transaction-level items whose parent item is present in the published item cache. When callers supply nodelevel and nodeid, the service further requires a matching MERCHAPI_ITEM_LOC row for that parent item at the requested store or warehouse, so the reference item is returned only when the parent is published for that node.
Refer to the documentation for ‘foundation/omnichannel/item’ for technical details and functional considerations.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/item/upc
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| nodelevel | No | String | Node Level (STORE or WAREHOUSE) |
| nodeid | No | String (10) | Node Id |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-17 PageResultsItemsVMerchApiItemUPC - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-18 VMerchApiItemUPC - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for item details. |
| item | No | String (25) | This feld specifes the unique alphanumeric value that identifes the item. |
Table 5-18 (Cont.) VMerchApiItemUPC - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemparent | No | String (25) | This feld specifes the alphanumeric value that uniquely identifes the item or group at the level above the item. |
| itemgrandparent | No | String (25) | This feld specifes the alphanumeric value that uniquely identifes the item or group two levels above the item. |
| itemlevel | No | Number(1,0) | This feld specifes the number indicating which of the three levels the item resides. The item level determines if the item stands alone or if it is part of a family of related items. |
| tranlevel | No | Number(1,0) | This feld specifes the number indicating which of the three levels transactions occur for the item’s group. The transaction level is the level at which the item’s inventory is tracked in the system. |
| inventoryind | No | String (1) | This feld determines if an item holds inventory or not for item transformations. |
| diff1level | No | String (5) | This feld specifes diff1 level. |
| diff1type | No | String (6) | This feld specifes diff1 type. |
| diff1 | No | String (10) | This feld specifes the diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group or value. For an item that is not a parent, this feld may contain a value. |
| diff2level | No | String (5) | This feld specifes diff2 level. |
Table 5-18 (Cont.) VMerchApiItemUPC - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diff2type | No | String (6) | This feld specifes diff2 type. |
| diff2 | No | String (10) | This feld specifes the diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group or value. For an item that is not a parent, this feld may contain a value. |
| diff3level | No | String (5) | This feld specifes diff3 level. |
| diff3type | No | String (6) | This feld specifes diff3 type. |
| diff3 | No | String (10) | This feld specifes the diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group or value. For an item that is not a parent, this feld may contain a value. |
| division | No | Number(4,0) | This feld specifes the number which uniquely identifes the division of the company. |
| groupid | No | Number(4,0) | This feld specifes the group in which the department exists. |
| dept | No | Number(4,0) | This feld uniquely identifes the department. |
| class | No | Number(4,0) | This feld uniquely identifes the class within the system. |
| uniqueclass | No | Number(10,0) | This feld uniquely identifes the department/class combination. |
| subclass | No | Number(4,0) | This feld uniquely identifes the subclass. |
Table 5-18 (Cont.) VMerchApiItemUPC - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| uniquesubclass | No | Number(10,0) | This feld uniquely identifes the department/class/ subclass combination. |
| description | No | String (250) | This feld specifes the description of the item. For items that have parents, this description will default to the parent’s description plus any differentiators. |
| shortdescription | No | String (120) | This feld specifes the short description of the item. |
| brandname | No | String (30) | This feld specifes the brand associated with an item. |
| merchandiseind | No | String (1) | This feld indicates if the item is a merchandise item. Merchandise items are generally physical items that must be shipped or received and for which there is inventory. Non- merchandise items are often items which do not have inventory. Common examples include extra fees for service, extended warranties, alterations, or endlessly available items such as downloads, in-app purchases of bonus content, and subscriptions. |
| mfgrecretail | No | Number(20,4) | This feld specifes the manufacturer’s recommended retail price for the item. This feld is stored in the primary currency. |
| orginalunitretail | No | Number(20,4) | This feld specifes the retail price for the item. |
Table 5-18 (Cont.) VMerchApiItemUPC - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| catchweightind | No | String (1) | This feld specifes whether the item should be weighed when it arrives at a location. |
| itemservicelevel | No | String (6) | This feld specifes the value that restricts the type of shipment methods that RCOM can select for an item. |
| giftwrapind | No | String (1) | This feld determines whether the location will support gift wrapping or not. |
| shipaloneind | No | String (1) | This feld indicates if the item should be shipped to the customer in a separate package versus being grouped together in a box. |
| standarduom | No | String (4) | This feld specifes the unit of measure in which stock of the item is tracked at a corporate level. |
| productclassifcation | No | String (6) | This feld determines how to pack customer orders, such as to determine products that may not be able to be packaged together. Examples of classifcations may include fragile, toxic, and heavy. |
| xdiff1desc | No | String (120) | This feld specifes diff1 description. |
| xdiff2desc | No | String (120) | This feld specifes diff2 description. |
| xdiff3desc | No | String (120) | This feld specifes diff3 description. |
| itemnumbertype | No | String (6) | This feld specifes what type the item is. Valid values for this feld are in the code type UPCT on the code_head and code_detail tables. |
Table 5-18 (Cont.) VMerchApiItemUPC - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemlocation | No | String (10) | This feld specifes if the service call was to fetch the enterprise view or a specifc location. The value is either ‘ent’ or the node ID parameter. |
| localdescription | No | String (250) | This feld specifes the local description of the item. This is applicable when the service query parameter of node level and node ID is used to fetch data for a specifc location. |
| localshortdescription | No | String (120) | This feld specifes the local short description of the item. This is applicable when the service query parameter of node level and node ID is used to fetch data for a specifc location. |
| uintype | No | String (6) | This feld specifes the unique identifcation number (UIN) type used to identify the instances of the item at the location. This is applicable when the service query parameter of node level and node ID is used to fetch data for a specifc location. |
Table 5-19 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"item": "100100076",
"itemparent": null,
"itemgrandparent": null,
"itemlevel": 1,
"tranlevel": 1,
"inventoryind": "Y",
"diff1level": null,
"diff1type": null,
"diff1": null,
"diff2level": null,
"diff2type": null,
"diff2": null,
"diff3level": null,
"diff3type": null,
"diff3": null,
"division": 1,
"groupid": 1,
"dept": 3041,
"class": 1,
"uniqueclass": 1,
"subclass": 1,
"uniquesubclass": 1,
"description": "Regular Item 100100076",
"shortdescription": "100100076 Item",
"brandname": null,
"merchandiseind": "Y",
"mfgrecretail": 12.99,
"orginalunitretail": 12.99,
"catchweightind": "Y",
"itemservicelevel": null,
"giftwrapind": "Y",
"shipaloneind": "Y",
"standarduom": "EA",
"productclassification": null,
"xdiff1desc": null,
"xdiff2desc": null,
"xdiff3desc": null,
"itemnumbertype": "MANL",
"itemlocation": "ent",
"localdescription": "localItemDesc",
"localshortdescription": "localShortDesc",
"uintype": null
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"item": "101100001",
"action": "INSERT",
"itemlocation": "ent",
"itemparent": "100250007",
"itemgrandparent": null,
"itemlevel": 2,
"tranlevel": 1,
"inventoryind": "Y",
"diff1level": null,
"diff1type": null,
"diff1": null,
"diff2level": null,
"diff2type": null,
"diff2": null,
"diff3level": null,
"diff3type": null,
"diff3": null,
"division": 3000,
"groupid": 304,
"dept": 3041,
"class": 1,
"uniqueclass": 139,
"subclass": 1,
"uniquesubclass": 17,
"description": "Something - MK",
"shortdescription": "Something",
"localdescription": null,
"merchandiseind": "Y",
"uintype": null,
"mfgrecretail": null,
"orginalunitretail": null,
"catchweightind": "N",
"itemservicelevel": null,
"giftwrapind": "N",
"shipaloneind": "N",
"standarduom": "EA",
"productclassification": null,
"xdiff1desc": null,
"xdiff2desc": null,
"xdiff3desc": null,
"itemnumbertype": "UPC-A"
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/
services/foundation/omnichannel/item/upc?
before=2021-05-13T16%3A38%3A07.284763%2B05%3A30&nodelevel=COMPANY&limit=1&node
id=1&since=1970-01-01T00%3A00%3A00.001Z ",
"rel": "self"
},
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/
services/foundation/omnichannel/item/upc?
before=2021-05-13T16%3A38%3A07.284763%2B05%3A30&nodelevel=COMPANY&limit=1&node
id=1&offsetkey=101100001&since=1970-01-01T00%3A00%3A00.001Z ",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ITEM_MASTER | Yes | No | No | No |
| ICL_RMS_ITEM_MASTER | Yes | No | Yes | Yes |
| MERCHAPI_ITEM_MASTER | Yes | Yes | Yes | Yes |
| V_MERCHAPI_ITEM_MASTER | Yes | No | No | No |
| ICL_RMS_ITEM_IMAGE | No | Yes | No | No |
| ICL_RMS_RELATED_ITEM | No | Yes | No | No |
| ICL_RMS_ITEM_LOC | No | Yes | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
REST Endpoint for Omni channel/ Merchandise Hierarchy details
Endpoint
MerchIntegrations/services/foundation/omnichannel/merchhier
Functional Area
Merchandise Hierarchy
Business Overview
This service retrieves the merchandise hierarchy relationships. No details about each hierarchy value are provided, only the hierarchy tree relationships are returned. In order to fetch new updates pass the parameter of since/before timestamp.
This service publishes the merchandise hierarchy to the Omnichannel application and can also be consumed by downstream consuming systems. It publishes the current company-throughsubclass hierarchy tree with parent-child links, hierarchy display identifiers, and buyer assignments where they are maintained in Merchandising. This service does not provide details about individual hierarchy value, only the hierarchy tree relationships are returned.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIVISION, GROUPS, DEPS, CLASS, SUBCLASS
Additional business tables: COMPHEAD, CODE_DETAIL
JSON cache table: MERCHAPI_MERCH_HIER
JSON generation view: V_MERCHAPI_MERCH_HIER_JSON
The source view builds the company-through-subclass hierarchy from COMPHEAD, DIVISION, GROUPS, DEPS, CLASS, SUBCLASS, and CODE_DETAIL, and it uses CODE_DETAIL (CODE_TYPE = ‘MHSO’) to label and sort the hierarchy levels.
Functionally, the service publishes the current hierarchy tree with parent-child links, display identifiers, and buyer assignments where they are maintained, and it seeds the company row when it is missing so the tree always has a company root.
The cache is refreshed from that current-state hierarchy source so the published tree stays aligned with the latest company-through-subclass structure in Merchandising.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_MERCHAPI_MERCH_HIER_JSON. No additional filter criteria were identified beyond the cache-build logic.
Rebuild marks cache rows deleted when the hierarchy row no longer exists in V_MERCHAPI_MERCH_HIER_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIVISION, ICL_RMS_GROUPS, ICL_RMS_DEPS, ICL_RMS_CLASS, ICL_RMS_SUBCLASS (ICL consumer name = MERCHAPI)
Delta processing is driven by ICL_RMS_DIVISION, ICL_RMS_GROUPS, ICL_RMS_DEPS, ICL_RMS_CLASS, and ICL_RMS_SUBCLASS.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_OMNI_MERCH_HIER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_OMNI_MERCH_HIER_ADHOC_PROCESS → MERCHAPI_OMNI_MERCH_HIER_ADHOC_JOB
Webhook configuration api name: foundation/omnichannel/merchhier
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/merchhier
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| offsetkey | No | String | Offset key |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-20 PageResultsItemsVMerchapiMerchHier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-21 VMerchapiMerchHier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for merchandising hierarchy. |
| nodeid | No | Number(10,0) | This column contains the Merchandising Hierarchy ID. |
| hierarchylevel | No | String (10) | This column contains the Merchandising Hierarchy Level. |
Table 5-21 (Cont.) VMerchapiMerchHier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nodename | No | String (120) | This column contains the name of the Merchandising Hierarchy. |
| parentlevel | No | String (10) | This column contains the Parent Merchandising Hierarchy Level. |
| parentnodeid | No | Number(10,0) | This column contains the Parent Merchandising Hierarchy ID. |
| merchdisplayid | No | Number(10,0) | This column contains the merchandising hierarchy display ID. |
| buyer | No | Number(4,0) | This column contains the number of the buyer associated with the merchandising hierarchy. |
Table 5-22 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"nodeid": 1,
"hierarchylevel": "COMPANY",
"nodename": "Retailers Ltd",
"parentlevel": "COMPANY",
"parentnodeid": 1,
"merchdisplayid": 1,
"buyer": 1002
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "UPDATE",
"nodeid": 1,
"hierarchylevel": "COMPANY",
"nodename": "Retailers Ltd",
"parentlevel": null,
"parentnodeid": null,
"merchdisplayid": 1,
"buyer": null
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/
services/foundation/omnichannel/merchhier?
before=2021-05-12T20%3A43%3A04.296066%2B05%3A30&limit=1&since=1970-01-01T00%3A
00%3A00.001Z",
"rel": "self"
},
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/
services/foundation/omnichannel/location/warehouse?
before=2021-05-12T20%3A15%3A13.253929%2B05%3A30&limit=1&offsetkey=2%2Cvirtual&
since=1970-01-01T00%3A00%3A00.001Z ",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIVISION | Yes | No | Yes | Yes |
| ICL_RMS_GROUPS | Yes | No | Yes | Yes |
| ICL_RMS_DEPS | Yes | No | Yes | Yes |
| ICL_RMS_CLASS | Yes | No | Yes | Yes |
| ICL_RMS_SUBCLASS | Yes | No | Yes | Yes |
| COMPHEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| MERCHAPI_MERCH_HIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_MERCH_HIER | Yes | No | No | No |
| V_ MERCHAPI_MERCH_HIER _JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
REST Endpoint for Omni channel/Org hier descendant’s details
Endpoint
MerchIntegrations/services/foundation/omnichannel/orghier/descendant
Functional Area
Organizational Hierarchy
Business Overview
This service retrieves organization hierarchy relationships for the levels below the provided hierarchy value (including warehouses). For example, if a region is sent in as the input information, the service will return all of the districts and stores in the provided region. No details about each hierarchy value are provided, only the hierarchy tree relationships are returned. In order to fetch new updates pass the parameter of since/before timestamp.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: CHAIN, AREA, REGION, DISTRICT, STORE, WH, ADDR
Additional business tables: COMPHEAD, CODE_DETAIL
JSON cache table: MERCHAPI_ORG_HIER (shared with foundation/omnichannel/orghier)
JSON generation view: V_ORG_HIER_FULL_VW (shared cache source used by foundation/ omnichannel/orghier)
This service is the descendant projection over the same organizational hierarchy cache table, MERCHAPI_ORG_HIER.
It uses the same underlying hierarchy data built from V_ORG_HIER_FULL_VW, but functionally it returns the current non-deleted descendants beneath a supplied organization node rather than the broader change-tracked relationship feed.
Because it is a child merchapi of foundation/omnichannel/orghier, it does not have its own separate cache-population process.
Initial Seeding and post enablement rebuild/repair
This service relies on the shared initial-seeding and rebuild flow used by foundation/ omnichannel/orghier.
That shared rebuild uses the all-level org-hierarchy refresh path.
ICL (Integration Change Log) table: ICL_RMS_CHAIN, ICL_RMS_AREA, ICL_RMS_REGION, ICL_RMS_DISTRICT, ICL_RMS_STORE, ICL_RMS_WH, ICL_RMS_ADDR (ICL consumer name = MERCHAPI)
This child service relies on the shared org-hierarchy delta flow, with address deltas scoped to modules WH, ST, and WFST.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_OMNI_ORG_HIER_STR_WH
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_OMNI_ORG_HIER_STR_WH_ADHOC_PROCESS → MERCHAPI_OMNI_ORG_HIER_STR_WH_ADHOC_JOB
Webhook configuration api name: foundation/omnichannel/orghier/descendant
Special handling
Additional GET query parameters: nodelevel, nodeid.
Supported nodelevel values for this service are COMPANY, CHAIN, AREA, REGION, DISTRICT.
Foundation/omnichannel/orghier/descendant is a child merchapi of foundation/omnichannel/ orghier.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/orghier/descendant
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| nodelevel | No | String | Node Level |
| nodeid | No | String (10) | Node Id |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-23 PageResultsItemsVMerchApiOrgHier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-23 (Cont.) PageResultsItemsVMerchApiOrgHier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-24 VMerchApiOrgHier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchylevel | No | String (10) | This feld specifes Organization Hierarchy Level. |
| hierarchynodeid | No | Number(10,0) | This feld specifes Organization Hierarchy ID. |
| hierarchynodename | No | String (120) | This feld specifes the name of the Organization Hierarchy ID. |
| parentlevel | No | String (10) | This feld specifes the Parent Organization Hierarchy Level. |
| parentid | No | Number(10,0) | This feld specifes Parent Organization Hierarchy ID. |
| levelorder | No | Number(4,0) | This feld specifes the hierarchy level order. |
Table 5-25 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-25 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "hierarchylevel": "CHAIN", "hierarchynodeid": 100, "hierarchynodename": null, "parentlevel": null, "parentid": 1, "levelorder": 10 } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| Elements | Description |
|---|---|
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"hierarchylevel": "COMPANY",
"hierarchynodeid": 9118,
"hierarchynodename": "Retailers Ltd",
"parentlevel": null,
"parentid": null,
"levelorder": 1
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/
omnichannel/orghier/descendant?nodelevel=COMPANY&limit=1&nodeid=9118",
"rel": "self"
},
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/
omnichannel/orghier/descendant?
nodelevel=COMPANY&limit=1&nodeid=9118&offsetkey=1%2C9118",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| V_ICL_RMS_ORGHIER | Yes | No | No | No |
| ICL_RMS_CHAIN | Yes | Yes | Yes | Yes |
| ICL_RMS_AREA | Yes | Yes | Yes | Yes |
| ICL_RMS_REGION | Yes | Yes | Yes | Yes |
| ICL_RMS_DISTRICT | Yes | Yes | Yes | Yes |
| ITEM_LOC | Yes | No | No | No |
| MERCHAPI_ORG_HIER | Yes | Yes | Yes | Yes |
| V_ORG_HIER_FULL_VW | Yes | No | No | No |
| V_MERCHAPI_ORG_HIER | Yes | No | No | No |
REST Endpoint for Omni channel/Org hierarchy details
Endpoint
MerchIntegrations/services/foundation/omnichannel/orghier
Functional Area
Organizational Hierarchy
Business Overview
This service publishes organizational hierarchy relationships to downstream consuming systems. It expands the company, chain, area, region, district, store, and warehouse node set into hierarchy relationship rows so consuming systems can retrieve descendants beneath a selected parent node while each row still carries its immediate parent information.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: CHAIN, AREA, REGION, DISTRICT, STORE, WH, ADDR
Additional business tables: COMPHEAD, CODE_DETAIL
JSON cache table: MERCHAPI_ORG_HIER
JSON generation view: not applicable; source hierarchy view is V_ORG_HIER_FULL_VW
That source view builds company, chain, area, region, district, store, and warehouse nodes from COMPHEAD, CHAIN, AREA, REGION, DISTRICT, STORE, WH, and CODE_DETAIL.
Functionally, V_MERCHAPI_ORG_HIER expands those nodes into ancestor-to-descendant relationship rows, so consumers can retrieve the hierarchy beneath a selected parent node while each row still carries its immediate parent information.
The shared package processes higher organization levels directly and then invokes the retailstore and warehouse loaders so the broader org-hierarchy, store, and warehouse caches stay aligned.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_ORG_HIER_FULL_VW. No additional filter criteria were identified beyond the cache-build logic.
Foundation/omnichannel/orghier rebuilds all hierarchy levels.
ICL (Integration Change Log) table: ICL_RMS_CHAIN, ICL_RMS_AREA, ICL_RMS_REGION, ICL_RMS_DISTRICT, ICL_RMS_STORE, ICL_RMS_WH, ICL_RMS_ADDR (ICL consumer name = MERCHAPI)
Delta processing uses ICL_RMS_CHAIN, ICL_RMS_AREA, ICL_RMS_REGION, ICL_RMS_DISTRICT, ICL_RMS_STORE, ICL_RMS_WH, and ICL_RMS_ADDR, with address deltas scoped to modules WH, ST, and WFST.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_OMNI_ORG_HIER_STR_WH
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_OMNI_ORG_HIER_STR_WH_ADHOC_PROCESS → MERCHAPI_OMNI_ORG_HIER_STR_WH_ADHOC_JOB
Webhook configuration api name: foundation/omnichannel/orghier
Special handling
Additional GET query parameters: nodelevel, nodeid.
Supported nodelevel values for this service are COMPANY, CHAIN, AREA, REGION, DISTRICT, STORE.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/orghier
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| nodelevel | No | String | Node Level |
| nodeid | No | String (10) | Node Id |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-26 PageResultsItemsVMerchApiOrgHierDetail - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-27 VMerchApiOrgHierDetail - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for organization hierarchy detail. |
Table 5-27 (Cont.) VMerchApiOrgHierDetail - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchylevel | No | String (10) | This feld specifes Organization Hierarchy Level. |
| hierarchynodeid | No | Number(10,0) | This feld specifes Organization Hierarchy ID. |
| hierarchynodename | No | String (120) | This feld specifes the name of the Organization Hierarchy ID. |
| parentlevel | No | String (10) | This feld specifes the Parent Organization Hierarchy Level. |
| parentid | No | Number(10,0) | This feld specifes Parent Organization Hierarchy ID. |
| mgrname | No | String (120) | This feld specifes the name of the store manager. |
| stockholding | No | String (1) | This feld specifes whether the store can hold stock. This feld holds value only for stores. |
| integratedpos | No | String (1) | This feld indicates whether or not the POS system at the store is integrated. This feld holds value only for stores. |
Table 5-28 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": null,
"hierarchylevel": "CHAIN",
"hierarchynodeid": 100,
"hierarchynodename": null,
"parentlevel": null,
"parentid": 1,
"mgrname": null,
"stockholding": null,
"integratedpos": null
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than limit defned then hasMore will be set to true else false. |
| Limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| Links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"action": "UPDATE",
"hierarchylevel": "AREA",
"hierarchynodeid": 1212,
"hierarchynodename": "Area 12121",
"parentlevel": "CHAIN",
"parentid": 1212,
"mgrname": "V",
"stockholding": null,
"integratedpos": null
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/
omnichannel/orghier?
before=2021-05-11T15%3A20%3A25.711306%2B00%3A00&nodelevel=COMPANY&limit=1&node
id=9118&since=1970-01-01T00%3A00%3A00.001Z",
"rel": "self"
},
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/
omnichannel/orghier?
before=2021-05-11T15%3A20%3A25.711306%2B00%3A00&nodelevel=COMPANY&limit=1&node
id=9118&offsetkey=AREA%2C1212&since=1970-01-01T00%3A00%3A00.001Z",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| V_ICL_RMS_ORGHIER | Yes | No | No | No |
| ICL_RMS_CHAIN | Yes | Yes | Yes | Yes |
| ICL_RMS_AREA | Yes | Yes | Yes | Yes |
| ICL_RMS_REGION | Yes | Yes | Yes | Yes |
| ICL_RMS_DISTRICT | Yes | Yes | Yes | Yes |
| ITEM_LOC | Yes | No | No | No |
| MERCHAPI_ORG_HIER | Yes | Yes | Yes | Yes |
| V_ORG_HIER_FULL_VW | Yes | No | No | No |
| V_MERCHAPI_ORG_HIER | Yes | No | No | No |
REST Endpoint for Omni channel/refresh Date
Endpoint
MerchIntegrations/services /omnichannel/refreshdate
Functional Area
Administration - Operations
Business Overview
This is a metadata publish service that exposes the list of enabled integration services together with cache-refresh and latest-change information for each service. It is intended as a lightweight pre-check for clients that call multiple integration APIs as part of the same batch or polling process. By calling this service first, a client can identify which APIs have had a real data change and avoid redundant requests to services whose published data has not changed.
Cache refresh timestamp: The timestamp when the JSON cache for a service was initially loaded or most recently fully refreshed. This helps determine when a cache was last rebuilt and whether a downstream consumer should perform a bulk reload or continue with delta retrieval. This information is sourced from MERCHAPI_CONFIG.
Latest data update timestamp: The most recent data-update timestamp for the service. This helps reduce unnecessary calls across multiple integration services by allowing a client to identify, in a single request, which services have had recent data changes. This information is derived by querying the applicable underlying table for each individual service.
Implementation usage: Where a client batch process calls multiple publish APIs in sequence, this service can be used as a gating step to determine which APIs need to be called in that cycle and which can be skipped because no new published data is available.
XStore usage: XStore relies extensively on this service to keep integration calls from XOCS to MFCS relevant by helping avoid unnecessary requests to APIs whose published data has not changed.
Performance note: This service relies on the LAST_UPDATE_DATETIME index being available on each JSON cache table. If any API is running initial seeding with the drop-index option enabled and the index rebuild has not yet completed, performance of this service for that table can degrade.
Service Type
GET
ReST URL
MerchIntegrations/services/omnichannel/refreshdate
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| entitytype | No | String | entity type |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-29 PageResultsItemsVMerchApiRefreshDate - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-30 VMerchApiRefreshDate - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| entity | No | String (100) | This feld gives the service name which is defned in merchapi_confg table. |
Table 5-30 (Cont.) VMerchApiRefreshDate - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| refreshdate | No | dateTime | This feld gives the refresh date which is the time when the initial loading of the service completes and the API is enabled in merchapi_confg table. This feld can be used to identify if a bulk process (api enablement or refresh with the option truncate and load) was done for the api. A change of refresh date indicates that the entire dataset is available for subscribe for the publish API. Note: XOCS heavily relies on this this feld during every 30 min polling request to identify if the fetch for an API will be delta increment or a full download for an API and accordingly handle the call differently. |
| latestupdatetime | No | dateTime | This feld provides the most recent update timestamp for the dataset applicable for the API. The purpose of this feld is to provide additional visibility of the data changes across all the API in a single place to have the client calling the differnet publish API at regular frequency to optimize the number of service calls. |
Table 5-31 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-31 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "entity": "ItemImage", "refreshdate": "2001-12-31T23:59:59.000Z", "latestupdatetime": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| Elements | Description |
|---|---|
| links | “self” : This contains URI pointing to current page. |
| “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"entity": "COFutureAvail",
"refreshdate": "2020-12-17T10:03:12.324664000-06:00",
"latestupdatetime": "2022-04-25T11:26:01.714875000+00:00"
}
],
"hasMore": false,
"limit": 10000,
"count": 15,
"links": [
{
"href": "http://<hostname> /MerchIntegrations/services/omnichannel/
refreshdate?
before=2021-05-06T21%3A00%3A34.238393%2B08%3A00&limit=10000&since=1970-01-01T0
0%3A00%3A00.001Z",
"rel": "self"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_CACHE_REFRESH_DATE | Yes | No | No | No |
REST Endpoint for Omni channel/Warehouse details
Endpoint
MerchIntegrations/services/foundation/omnichannel/location/warehouse
Functional Area
Organizational Hierarchy - Warehouses
Business Overview
This service publishes warehouse details to the Omnichannel application and can also be consumed by downstream consuming systems. It publishes warehouse records with the primary warehouse address maintained in Merchandising and derives the published warehouse type as physical or virtual from the warehouse relationship data.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: WH, ADDR
Additional business tables: CHANNELS, ADD_TYPE_MODULE, V_ADD_TYPE_TL, STATE, COUNTRY
JSON cache table: MERCHAPI_WH
JSON generation view: V_MERCHAPI_WH_JSON
The JSON view is built from WH, CHANNELS, ADDR, ADD_TYPE_MODULE, STATE, COUNTRY, and V_ADD_TYPE_TL.
Functionally, it publishes warehouse records with their primary warehouse address (ADDR_TYPE = 1 and PRIMARY_ADDR_IND = ‘Y’) and derives the published warehouse type as physical or virtual from the PHYSICAL_WH relationship.
The warehouse cache shares its loader with the omnichannel organization hierarchy and retailstore caches through the shared API_OMNI_ORG_HIER_STR_WH process.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_WH_JSON and publish warehouse records with the primary warehouse address where ADDR_TYPE = 1 and PRIMARY_ADDR_IND = ‘Y’.
ICL (Integration Change Log) table: ICL_RMS_WH, ICL_RMS_ADDR (ICL consumer name = MERCHAPI)
Warehouse changes come from ICL_RMS_WH, and address-only changes come from ICL_RMS_ADDR for module WH.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_OMNI_ORG_HIER_STR_WH
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_OMNI_ORG_HIER_STR_WH_ADHOC_PROCESS → MERCHAPI_OMNI_ORG_HIER_STR_WH_ADHOC_JOB
Webhook configuration api name: foundation/omnichannel/location/warehouse
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/location/warehouse
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-32 PageResultsItemsVMerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
Table 5-32 (Cont.) PageResultsItemsVMerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-33 VMerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for warehouse details. |
| warehouseid | No | Number(10,0) | This feld uniquely identifes the warehouse. |
| type | No | String (8) | This feld determines which warehouses are physical and which are virtual. |
| warehousename | No | String (150) | This feld specifes the name of the warehouse which, along with the warehouse number, identifes the warehouse. |
| whnamesecondary | No | String (150) | This feld specifes the secondary name of the warehouse. |
| contactname | No | String (120) | This feld specifes the name of the contact at this location. |
| phonenumber | No | String (20) | This feld specifes the phone number of the contact person at this location. |
| faxnumber | No | String (20) | This feld specifes the fax number of the contact person at this location. |
| No | String (100) | This feld specifes the email of the contact person at this location. |
Table 5-33 (Cont.) VMerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| currencycode | No | String (3) | This feld specifes the currency code under which the warehouse operates. |
| physicalwh | No | Number(10,0) | This feld specifes the number of the physical warehouse that is assigned to the virtual warehouse. |
| vatregion | No | Number(4,0) | This feld specifes the unique identifying number for the VAT region where this warehouse is located. |
| orghiertype | No | Number(4,0) | This feld specifes the organization type that will be used for reporting purposes for the warehouse. The type comes from the organizational hierarchy. |
| orghiervalue | No | Number(10,0) | This feld specifes the code associated with the specifc organizational hierarchy type. |
| orgentitytype | No | String (1) | This feld specifes if the warehouse is a legal entity (importer, exporter) or a regular warehouse. |
| channelid | No | Number(4,0) | This feld specifes the channel for which the virtual warehouse will be assigned. |
| channelname | No | String (120) | This feld specifes the name of the channel for which the virtual warehouse will be assigned. |
| address1 | No | String (240) | This feld specifes the frst line of the address. |
| address2 | No | String (240) | This feld specifes the second line of the address. |
| address3 | No | String (240) | This feld specifes the third line of the address. |
Table 5-33 (Cont.) VMerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| city | No | String (120) | This feld specifes the name of the city that is associated with the address. |
| state | No | String (3) | This feld specifes the state abbreviation for the address. |
| country | No | String (3) | This feld specifes the country where the address exists. |
| postalcode | No | String (30) | This feld specifes the zip code for the address. |
Table 5-34 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": null,
"warehouseid": 6000,
"type": "physical",
"warehousename": null,
"whnamesecondary": null,
"contactname": "Laura Johnson",
"phonenumber": "1800800800",
"faxnumber": "617-897-0902",
"email": "someone@email.com",
"currencycode": "USD",
"physicalwh": 6000,
"vatregion": 1000,
"orghiertype": 50,
"orghiervalue": 1,
"orgentitytype": "R",
"channelid": 1,
"channelname": null,
"address1": "101 First Street",
"address2": "201 Second Street",
"address3": null,
"city": "Minneapolis",
"state": "MN",
"country": "US",
"postalcode": "55555-1234"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"warehouseid": 2,
"type": "virtual",
"warehousename": "N. America Central",
"whnamesecondary": null,
"contactname": "Sue Glass",
"phonenumber": "3122222473",
"faxnumber": null,
"email": null,
"currencycode": "USD",
"physicalwh": 2,
"vatregion": 1000,
"orghiertype": null,
"orghiervalue": null,
"orgentitytype": "R",
"channelid": null,
"channelname": null,
"address1": "123 Street",
"address2": "Anytown",
"address3": null,
"city": "Anycity",
"state": "MN",
"country": "US",
"postalcode": "50250" }
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/
services/foundation/omnichannel/location/warehouse?
before=2021-05-12T20%3A15%3A13.253929%2B05%3A30&limit=1&since=1970-01-01T00%3A
00%3A00.001Z ",
"rel": "self"
},
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/
services/foundation/omnichannel/merchhier?
before=2021-05-12T21%3A00%3A13.036021%2B05%3A30&limit=1&offsetkey=10%2C1&since
=1970-01-01T00%3A00%3A00.001Z ",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_WH | Yes | No | Yes | Yes |
| ICL_RMS_ADDR | Yes | No | Yes | Yes |
| ADDR | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_WH | Yes | Yes | Yes | Yes |
| MERCHAPI_ORG_HIER | No | No | Yes | No |
| V_MERCHAPI_WH | Yes | No | No | No |
| V_MERCHAPI_WH_JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
REST Endpoint for Omnichannel/related Item
Endpoint
MerchIntegrations/services/foundation/omnichannel/item/relateditem
Functional Area
Items - Related Items
Business Overview
This service publishes related-item relationships to the Omnichannel application and can also be consumed by downstream consuming systems. It publishes relationships between a primary item and related items only while both item records remain approved in Merchandising, so relationships tied to non-approved primary or related items are not returned.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: RELATED_ITEM_HEAD, RELATED_ITEM_DETAIL, ITEM_MASTER
Additional business tables: none
JSON cache table: MERCHAPI_RELATED_ITEM
JSON generation view: V_MERCHAPI_RELATED_ITEM_JSON
The JSON view joins RELATED_ITEM_HEAD, RELATED_ITEM_DETAIL, and ITEM_MASTER for both the primary and related items.
Functionally, the main item and the related item must both still be approved (ITEM_MASTER.STATUS = ‘A’), so the service publishes only active relationships between approved items.
The cache is refreshed from the approved relationship set in
V_MERCHAPI_RELATED_ITEM_JSON and is republished when qualifying relationship or item approval changes occur.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_RELATED_ITEM_JSON and apply the rule that both item rows must have STATUS = ‘A’.
ICL (Integration Change Log) table: ICL_RMS_RELATED_ITEM (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on RELATED_ITEM_HEAD, RELATED_ITEM_DETAIL, ITEM_MASTER.
Item Approval Handling
On item approval, the main item publish flow writes related-item head and detail rows where the approved item is the primary item to ICL_RMS_RELATED_ITEM so qualifying relationships can publish when the item becomes approved.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_OMNI_RELATED_ITEM
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_OMNI_RELATED_ITEM_ADHOC_PROCESS → MERCHAPI_OMNI_RELATED_ITEM_ADHOC_JOB
Webhook configuration api name: foundation/omnichannel/item/relateditem
Special handling
Additional GET query parameters: nodelevel, nodeid.
Service Types
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/item/relateditem
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| nodelevel | No | String | Node Level |
| nodeid | No | String (10) | Node Id |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| offsetkey | No | String | Offset key |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-35 PageResultsItemsVMerchApiRelatedItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-36 VMerchApiRelatedItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for related item. |
| relationshipid | No | Number(20,0) | This column contains the Relationship ID. |
| item | No | String (25) | This column contains the item. |
Table 5-36 (Cont.) VMerchApiRelatedItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relationshiptype | No | String (6) | This column contains the relationship type. |
| mandatoryind | No | String (1) | This column contains the mandatory indicator. |
| relateditem | No | String (25) | This column contains the related item. |
| relateditemaction | No | String (6) | Action for related item detail. |
| startdate | No | date | This column contains the start date. |
| enddate | No | date | This column contains the end date. |
| priority | No | Number(4,0) | This column contains the priority. |
Table 5-37 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"relationshipid": 1,
"item": null,
"relationshiptype": null,
"mandatoryind": null,
"relateditem": null,
"relateditemaction": null,
"startdate": "2001-12-31",
"enddate": "2001-12-31",
"priority": 1
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"relationshipid": 120001,
"item": "111150001",
"relationshiptype": "CRSL",
"mandatoryind": "N",
"relateditem": "111051290",
"relateditemaction": "INSERT",
"startdate": null,
"enddate": null,
"priority": null
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/
omnichannel/item/relateditem?
before=2021-05-06T18%3A17%3A30.285106%2B08%3A00&limit=1&since=1970-01-01T00%3A
00%3A00.001Z",
"rel": "self"
},
{
"href": "http://localhost:8080/MerchIntegrations/services/foundation/
omnichannel/item/relateditem?
before=2021-05-06T18%3A17%3A30.285106%2B08%3A00&limit=1&offsetkey=120001%2C111
051290&since=1970-01-01T00%3A00%3A00.001Z",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_RELATED_ITEM | Yes | Yes | Yes | Yes |
| MERCHAPI_RELATED_ITEM | Yes | Yes | Yes | Yes |
| V_MERCHAPI_RELATED_ITEM_JSON | Yes | No | No | No |
| V_MERCHAPI_RELATED_ITEM | Yes | Yes | Yes | Yes |
REST Endpoint for Omnichannel/Retail Store details
Endpoint
MerchIntegrations/services/foundation/omnichannel/location/retailstore
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service publishes retail store details to the Omnichannel application and can also be consumed by downstream consuming systems. It publishes each store together with its company-through-district hierarchy placement and the primary address maintained for the store or workforce-store address modules in Merchandising.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: STORE, ADDR
Additional business tables: STORE_HIERARCHY, ADD_TYPE_MODULE
JSON cache table: MERCHAPI_RETAIL_STORE
JSON generation view: V_MERCHAPI_RETAIL_STORE_JSON
The JSON view joins STORE, STORE_HIERARCHY, ADDR, and ADD_TYPE_MODULE, so each published row carries the store’s company-through-district placement together with the primary address maintained for store modules ST and WFST.
The store cache shares its loader with the omnichannel organization hierarchy and warehouse caches through the shared API_OMNI_ORG_HIER_STR_WH process.
Address publication is limited to the primary address rows for store modules ST and WFST.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_RETAIL_STORE_JSON and publish store hierarchy placement together with the primary address rows for modules ST and WFST.
Rebuild deletes or marks rows when the store no longer exists in the source view.
ICL (Integration Change Log) table: ICL_RMS_STORE, ICL_RMS_ADDR (ICL consumer name = MERCHAPI)
Store changes come from ICL_RMS_STORE, and address-only changes come from ICL_RMS_ADDR for ST and WFST addresses when no store ICL row exists.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_OMNI_ORG_HIER_STR_WH
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_OMNI_ORG_HIER_STR_WH_ADHOC_PROCESS → MERCHAPI_OMNI_ORG_HIER_STR_WH_ADHOC_JOB
Webhook configuration api name: foundation/omnichannel/location/retailstore
Special handling
Additional GET query parameters: nodelevel, nodeid.
Supported nodelevel values for this service are COMPANY, CHAIN, AREA, REGION, DISTRICT, STORE.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/location/retailstore
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| nodelevel | No | String | Node Level |
| nodeid | No | String (10) | Node Id |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| offsetkey | No | String | Offset key |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-38 PageResultsItemsVMerchapiRetailStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
Table 5-38 (Cont.) PageResultsItemsVMerchapiRetailStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-39 VMerchapiRetailStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for the store. |
| storeid | No | Number(10,0) | This column contains the number which uniquely identifes the store. |
| storename | No | String (150) | This column contains the name of the store which, along with the store number, identifes the store. |
| storename10 | No | String (10) | This column contains a ten-character abbreviation of the store name. |
| manager | No | String (120) | This column contains the name of the store manager. |
| phonenumber | No | String (20) | This column contains the phone number for the store. |
| faxnumber | No | String (20) | This column contains the fax number for the store. |
| No | String (100) | This column contains the email address for the location. | |
| totalsqfeet | No | Number(8,0) | This column contains the total square footage of the store. |
| sellingsqfeet | No | Number(8,0) | This column contains the total square footage of the store’s selling area. |
Table 5-39 (Cont.) VMerchapiRetailStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| currencycode | No | String (3) | This column contains the currency code under which the store operates. |
| vatregion | No | Number(4,0) | This column contains the number of the Value Added Tax region in which this store is contained. |
| stockholding | No | String (1) | This column indicates whether the store can hold stock. In a non- multichannel environment this will always be Y. |
| integratedpos | No | String (1) | This column indicates whether or not the POS system at the store is integrated. |
| contactname | No | String (120) | This column contains the name of the contact for the store at this address. |
| address1 | No | String (240) | This column contains the frst line of the store address. |
| address2 | No | String (240) | This column contains the second line of the store address. |
| address3 | No | String (240) | This column contains the third line of the store address. |
| city | No | String (120) | This column contains the name of the city that is associated with the store address. |
| state | No | String (3) | This column contains the state abbreviation for the store address. |
| country | No | String (3) | This column contains the country where the store address exists. |
| postalcode | No | String (30) | This column contains the zip code for the store address. |
Table 5-40 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"storeid": 1521,
"storename": "Albuquerque",
"storename10": "Albuquerqu",
"manager": "Paul Petros",
"phonenumber": "505-388-5577",
"faxnumber": "458121212",
"email": "someone@oracle.com",
"totalsqfeet": 4500,
"sellingsqfeet": 4000,
"currencycode": "USD",
"vatregion": 1000,
"stockholding": "Y",
"integratedpos": "Y",
"contactname": "Sue Glass",
"address1": "123 Street",
"address2": "Anaheim",
"address3": "California",
"city": "Anaheim",
"state": "MN",
"country": "US",
"postalcode": "50250"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"storeid": 1111,
"storename": "Rebuild with refresh N NO ICL Charlotte *",
"storename10": "Charlotte",
"manager": "Don Wright",
"phonenumber": "704-555-2121",
"faxnumber": null,
"email": null,
"totalsqfeet": 64400,
"sellingsqfeet": 59500,
"currencycode": "USD",
"vatregion": 1000,
"stockholding": "Y",
"integratedpos": "Y",
"contactname": "Sue Glass",
"address1": "123 Street",
"address2": "Anytown",
"address3": null,
"city": "Anycity",
"state": "MN",
"country": "US",
"postalcode": "50250"
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/
services/foundation/omnichannel/location/retailstore?
before=2021-05-12T17%3A30%3A45.385517%2B05%3A30&nodelevel=COMPANY&limit=1&node
id=1&since=1970-01-01T00%3A00%3A00.001Z",
"rel": "self"
},
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/
services/foundation/omnichannel/location/retailstore?
before=2021-05-12T17%3A30%3A45.385517%2B05%3A30&nodelevel=COMPANY&limit=1&node
id=1&offsetkey=1111&since=1970-01-01T00%3A00%3A00.001Z",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_STORE | Yes | Yes | Yes | Yes |
| ICL_RMS_ADDR | Yes | No | Yes | Yes |
| ADDR | Yes | No | No | No |
| STORE | Yes | No | No | No |
| MERCHAPI_RETAIL_STORE | Yes | Yes | Yes | Yes |
| MERCHAPI_ORG_HIER | No | No | Yes | No |
| V_MERCHAPI_RETAIL_STORE_JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
REST Endpoint for Omnichannel/Dimension Type details
Endpoint
MerchIntegrations/services/foundation/omnichannel/item/dimensiontype
Functional Area
Items - Item Definition
Business Overview
This service publishes dimension-type rows to the Omnichannel application and can also be consumed by downstream consuming systems. Functionally, the published dimensionSystem is resolved as the item itself, the item parent, or the item grandparent depending on item level, and the service publishes dimension-type rows for differentiator group-level data or for ID-level data when the item resolves to a style dimension system.
This service retrieves the item differentiator types 1, 2 and 3 (referred to as dimension types in XStore). For example, it might return that an item is differentiated by ‘color’ (diff 1 type), ‘waist size’ (diff 2 type) and ‘inseam’ (diff 3 type). While items can be defined with up to four differentiators, this service only returns up to 3 because the Omnichannel cloud services only support up to 3 dimensions. In order to fetch new updates pass the parameter of since/before timestamp.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
The data processing for this service is controlled by the main ‘foundation/omnichannel/item’ service. Refer to API documentation for additional batch configuration details.
Core business tables: ITEM_MASTER, DIFF_GROUP_HEAD, DIFF_GROUP_DETAIL, DIFF_IDS
Additional business tables: none
JSON cache table: MERCHAPI_ITEM_DIFF_TYPE
JSON generation view: not applicable; cache rows are derived from the shared V_MERCHAPI_ITEM_JSON item source
The shared item source already resolves item level, transaction level, item parent, item grandparent, differentiator level, differentiator type, and differentiator description for DIFF_1 through DIFF_3.
The dimension-type cache unpivots those DIFF_1 through DIFF_3 columns, resolves dimensionSystem as item, item parent, or item grandparent based on item level, and publishes GROUP differentiator rows plus ID differentiator rows only when the derived item type resolves to STYLE.
Qualifying diff-group and diff-ID update flows can also republish affected dimension-type rows after resolving the impacted items from the shared item source.
Webhook configuration api name: foundation/omnichannel/item/dimensiontype
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/item/dimensiontype
Input Parameters
Output
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| limit | No | String (6) | Pagination limit. Default value is 10000. |
| offsetkey | No | String | Offset key |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude able 5-41 PageR etail | No esultsItemsVMerch | String apiDimType - Object. See li | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) st of elements for |
| Element Name | Required | Data Type | Description |
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
Table 5-41 PageResultsItemsVMerchapiDimType - Object. See list of elements for detail
Table 5-41 (Cont.) PageResultsItemsVMerchapiDimType - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-42 VMerchapiDimType - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for the Dimension Type group. |
| itemaction | No | String (6) | Action for the Item changes related to Dimension Type Group. |
| dimensionsystem | No | String (25) | This column contains the dimension system. This contains the item, item parent or the item grandparent depending on the item level. |
| dimension | No | String (6) | This column contains the dimension. This is the differentiator type of the item. |
| description | No | String (120) | This feld contains the description of the dimension. |
| seq | No | Number(1,0) | This column contains the sequence number of the dimension. Valid values are 1 for Diff 1, 2 for Diff 2 and 3 for Diff 3. |
Table 5-43 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-43 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "itemaction": null, "dimensionsystem": "1000000010", "dimension": "MT", "description": "Mens TShirt Small", "seq": 1 } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Elements in JSON Output
| Elements | Description |
|---|---|
| Items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| Elements | Description |
|---|---|
| Limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| Links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"itemaction": null,
"dimensionsystem": "1000023212",
"dimension": "C_3815",
"description": "Smoke Diff Group Clr",
"seq": 1
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/omnichannel/item/
dimensiontype?
before=2021-05-11T17%3A41%3A38.052402%2B00%3A00&limit=1&since=1970-01-01T00%3A00%3A00.001
Z",
"rel": "self"
},
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/omnichannel/item/
dimensiontype?
before=2021-05-11T17%3A41%3A38.052402%2B00%3A00&limit=1&offsetkey=0430.PD.1%2C1%2CC_3815&
since=1970-01-01T00%3A00%3A00.001Z",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_ITEM_DIFF_TYPE | Yes | Yes | Yes | Yes |
| V_MERCHAPI_ITEM_JSON | Yes | No | No | No |
| V_MERCHAPI_DIM_TYPE | Yes | No | No | No |
REST Endpoint for Omnichannel/Dimension Value details
Endpoint
MerchIntegrations/services/foundation/omnichannel/item/dimensionvalue
Functional Area
Items - Item Definition
Business Overview
This service publishes dimension-value rows to the Omnichannel application and can also be consumed by downstream consuming systems. Functionally, the published dimensionSystem is resolved as the item itself, the item parent, or the item grandparent depending on item level, and the cache publishes differentiator values only for rows where DIFF_LEVEL = ‘ID’. The display sequence is derived from the matching differentiator-group detail.
This service retrieves item differentiators (referred to as ‘dimensions’ in XStore). Only differentiators that are associated with approved items are returned.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
The data processing for this service is controlled by the main ‘foundation/omnichannel/item’ service. Refer to API documentation for additional batch configuration details.
Core business tables: ITEM_MASTER, DIFF_IDS
Additional business tables: DIFF_GROUP_DETAIL
JSON cache table: MERCHAPI_ITEM_DIFF_VALUE
JSON generation view: not applicable; cache rows are derived from the shared V_MERCHAPI_ITEM_JSON item source
The shared item source already resolves item level, transaction level, item parent, item grandparent, differentiator level, differentiator type, and differentiator description for DIFF_1 through DIFF_3.
The dimension-value cache unpivots those DIFF_1 through DIFF_3 columns, resolves dimensionSystem as item, item parent, or item grandparent based on item level, keeps only ID differentiator rows, and derives displayseq from DIFF_GROUP_DETAIL for the matching differentiator group and differentiator value combination.
Qualifying diff-ID update flows can also republish affected dimension-value rows after resolving the impacted items from the shared item source.
Webhook configuration api name: foundation/omnichannel/item/dimensionvalue
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/item/dimensionvalue
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| limit | No | String (6) | Pagination limit. Default value is 10000. |
| offsetkey | No | String | Offset key |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-44 PageResultsItemsVMerchapiDimValue - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-44 (Cont.) PageResultsItemsVMerchapiDimValue - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-45 VMerchapiDimValue - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for the Dimension Value group. |
| itemaction | No | String (9) | Action for the item changes related to the Dimension Value group. |
| dimensionsystem | No | String (25) | This column contains the dimension system. This contains the item, item parent or the item grandparent depending on the item level. |
| dimension | No | String (6) | This column contains the dimension. This is the differentiator type of the item. |
| value | No | String (10) | This column contains the value of the dimension. |
| description | No | String (120) | This feld contains the description of the dimension. |
| displayseq | No | Number(4,0) | This column contains the display sequence number of the dimension. |
Table 5-46 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"itemaction": null,
"dimensionsystem": "1000000010",
"dimension": "MT",
"value": "MT-Small",
"description": "Mens TShirt Small",
"displayseq": 1
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| Items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| Elements | Description |
|---|---|
| Limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| Links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"itemaction": "NO_CHANGE",
"dimensionsystem": "1000012345",
"dimension": "C_3815",
"value": "BLACK_8742",
"description": "Auto Black BLACK_8742",
"displayseq": 1
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/omnichannel/item/
dimensionvalue?
before=2021-05-11T17%3A51%3A17.671921%2B00%3A00&limit=1&since=1970-01-01T00%3A00%3A00.001
Z",
"rel": "self"
},
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/omnichannel/item/
dimensionvalue?
before=2021-05-11T17%3A51%3A17.671921%2B00%3A00&limit=1&offsetkey=0430.PD.1%2CC_3815%2CBL
ACK_8742&since=1970-01-01T00%3A00%3A00.001Z",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCH_BATCH_PARAM | Yes | No | No | No |
| MERCHAPI_ITEM_DIFF_VALUE | Yes | Yes | Yes | Yes |
| V_MERCHAPI_ITEM_JSON | Yes | No | No | No |
| V_MERCHAPI_DIM_VALUE | Yes | No | No | No |
REST Endpoint for Omnichannel/future Inventory
Endpoint
MerchIntegrations/services/inventory/omnichannel/inventory/futureinventory
Functional Area
Inventory
Business Overview
This service publishes future inventory to the Omnichannel application and can also be consumed by downstream consuming systems. It includes only the future inventory that is relevant to customer-order fulfillment for active, transaction-level, orderable items that are backorder-enabled at stockholding customer-order locations, together with the backorder, open-order, and received quantities that still contribute to fulfillment. The calculation excludes non-customer-order allocation branches from open order quantity and applies the source pack rules so warehouse sellable packs publish at pack level while store sellable packs and nonsellable packs publish through component items.
This service retrieves future inventory information aggregated at an item level. The service returns on-order, received, and back-ordered quantity against an item.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: STORE, WH, ITEM_LOC_SOH, ITEM_MASTER, ITEM_LOC_TRAITS, ALLOC_HEADER
Additional business tables: ALLOC_DETAIL, ORDHEAD, ORDLOC, PERIOD, V_PACKSKU_QTY
JSON cache table: MERCHAPI_FUTURE_AVAIL_CO_INV
JSON generation view: V_BDI_CO_FUTURE_AVAIL
The source view pulls future availability from STORE, WH, ITEM_LOC_SOH, ITEM_MASTER, ITEM_LOC_TRAITS, ALLOC_HEADER, ALLOC_DETAIL, ORDHEAD, ORDLOC, PERIOD, and V_PACKSKU_QTY.
Functionally, it publishes only the future inventory that is relevant to customer-order fulfillment: active transaction-level orderable items that are backorder-enabled at stockholding customer-
order locations, together with the backorder, open-order, and received quantities that still contribute to fulfillment.
The calculation excludes non-customer-order allocation branches from open order quantity and applies pack rules so sellable warehouse packs publish at pack level while store sellable packs and non-sellable packs publish through their component items.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_BDI_CO_FUTURE_AVAIL. No additional filter criteria were identified beyond the cache-build logic.
Mark rows deleted when the item is no longer backorderable in ITEM_LOC_TRAITS.
ICL (Integration Change Log) table: none; delta processing compares V_BDI_CO_FUTURE_AVAIL directly to MERCHAPI_FUTURE_AVAIL_CO_INV
No ICL table is used; both delta and refresh compare V_BDI_CO_FUTURE_AVAIL directly to MERCHAPI_FUTURE_AVAIL_CO_INV.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
This service does bulk heavy data processing for the entire dataset and hence this job should be run once or twice per day. This should not be configured to run hourly or multiple times in an hour.
Process configuration name: API_OMNI_FUTURE_AVL_CO_INV
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_OMNI_FUT_AVL_CO_INV_ADHOC_PROCESS → MERCHAPI_OMNI_FUTURE_AVL_CO_INV_ADHOC_JOB
Webhook configuration api name: inventory/omnichannel/inventory/futureinventory
Service Type
GET
ReST URL
MerchIntegrations/services/inventory/omnichannel/inventory/futureinventory
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| offsetkey | No | String | Offset key |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-47 PageResultsItemsVMerchapiFutureAvailCoInv - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-48 VMerchapiFutureAvailCoInv - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for Item Future Available Inventory. |
| item | No | String (25) | This column contains the item. |
| onorderquantity | No | Number(12,4) | This column contains the on order quantity of the item. |
Table 5-48 (Cont.) VMerchapiFutureAvailCoInv - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| receivedquantity | No | Number(12,4) | This column contains the received quantity of the item. |
| backorderquantity | No | Number(12,4) | This column contains the backorder quantity of the item. |
Table 5-49 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"item": "100001000",
"onorderquantity": 10,
"receivedquantity": 10,
"backorderquantity": 10
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "UPDATE",
"item": "105700020",
"onorderquantity": "0",
"receivedquantity": "0",
"backorderquantity": "30"
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>/MerchIntegrations/services/inventory/
omnichannel/inventory/futureinventory?
before=2021-05-06T20%3A56%3A51.316158%2B08%3A00&limit=1&since=1970-01-01T00%3A
00%3A00.001Z",
"rel": "self"
},
{
"href": "http:// <hostname>/MerchIntegrations/services/inventory/
omnichannel/inventory/futureinventory?
before=2021-05-06T20%3A56%3A51.316158%2B08%3A00&limit=1&offsetkey=105700020&si
nce=1970-01-01T00%3A00%3A00.001Z",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| MERCHAPI_BOOKMARK | Yes | Yes | Yes | Yes |
| V_BDI_CO_FUTURE_AVAIL | Yes | No | No | No |
| MERCHAPI_FUTURE_AVAIL_CO_INV | Yes | Yes | Yes | Yes |
| V_MERCHAPI_FUTURE_AVAIL_CO_INV | Yes | No | No | No |
REST Endpoint for Omnichannel/item Image
Endpoint
MerchIntegrations/services/foundation/omnichannel/item/image
Functional Area
Items - Item Definition
Business Overview
This service publishes item images to the Omnichannel application and can also be consumed by downstream consuming systems. The source view publishes images only for currently approved items, and when callers supply nodelevel and nodeid the service returns images only for items that also have a matching MERCHAPI_ITEM_LOC row at the requested store or warehouse.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: ITEM_IMAGE
Additional business tables: ITEM_MASTER
JSON cache table: MERCHAPI_ITEM_IMAGE
JSON generation view: V_MERCHAPI_ITEM_IMAGE_JSON
The JSON view is built from ITEM_IMAGE and ITEM_MASTER, and it explicitly filters to ITEM_MASTER.STATUS = ‘A’, so only images for currently approved items are published from the source view.
When callers supply nodelevel and nodeid, the REST query further requires a matching MERCHAPI_ITEM_LOC row for the item at the requested store or warehouse, which scopes the published images to items active at that node.
When nodelevel and nodeid are supplied, the service requires a matching MERCHAPI_ITEM_LOC row for the item at the requested node.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_ITEM_IMAGE_JSON and apply ITEM_MASTER.STATUS = ‘A’.
ICL (Integration Change Log) table: ICL_RMS_ITEM_IMAGE (ICL consumer name = MERCHAPI)
ICL entries are created using item-image changes, while ITEM_MASTER.STATUS = ‘A’ is enforced through the source view when rows are rebuilt or merged.
Item Approval Handling
On item approval, the main item publish flow writes existing ITEM_IMAGE rows for the item to ICL_RMS_ITEM_IMAGE so image data is also queued when the item becomes approved.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_OMNI_ITEM_IMAGE
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_OMNI_ITEM_IMAGE_ADHOC_PROCESS → MERCHAPI_OMNI_ITEM_IMAGE_ADHOC_JOB
Webhook configuration api name: foundation/omnichannel/item/image
Special handling
Additional GET query parameters: nodelevel, nodeid.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime characteristics and should be evaluated separately.
Multi-threading and commit control
This service batch processing for delta and initial seeding is single threaded.
The delivered setting for API_COMMIT_MAX_COUNTER is currently 1000 and it can be extend to 10,000.
REST fetch considerations
REST page size should be selected based on average payload size so the average response remains below about 10 MB per call. Common page-limit values are 1,000 or 10,000 rows.
For full downloads, do not provide the since query parameter so the database can favor the primary-key access path. For delta downloads, use a small time window, typically a few minutes and at most a few hours, so the eligible row set on the LAST_UPDATE_DATETIME index remains small.
Wider delta windows, especially multi-day windows that can arise during outages or data recovery, generally do not perform well. For such scenarios, keeping BUILD_HISTOGRAM enabled allows the service to support recovery through smaller, more selective polling windows using the optimalBefore query parameter.
In this catch-up pattern, for requests up to 30 days in the past, the client provides optimalBefore and leaves before empty. The client then uses the returned before timestamp to continue polling incrementally until the backlog is cleared, and then resumes the normal shortwindow delta pattern. Hourly histogram processing groups LAST_UPDATE_DATETIME values into buckets of 10,000 rows in MERCHAPI_TIMESTAMP_HISTOGRAM using the shared HISTOGRAM_ROW_COUNT configuration.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/item/image
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| nodelevel | No | String | Node Level |
| nodeid | No | String (10) | Node Id |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| offsetkey | No | String | Offset key |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-50 PageResultsItemsVMerchapiItemImage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-51 VMerchapiItemImage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for the Item Image. |
| item | No | String (25) | This column contains the unique alphanumeric identifer for the item. |
| imagename | No | String (120) | This column contains the name of the image of the item. |
| imageaddr | No | String (255) | This feld contains the actual path where the fle of the image of the item is stored. |
Table 5-51 (Cont.) VMerchapiItemImage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| imageuri | No | String (375) | This column contains the URI of the image of the item. |
| imagedesc | No | String (40) | This feld contains the description associated with the image of the item. |
| imagetype | No | String (6) | This feld contains the type of the image of the item. Valid values are defned as members of IITD code type. |
| primaryind | No | String (1) | This feld indicates whether this record is the primary image of the item or not. Valid values are Y and N. It defaults to N if left blank or set to null. |
| displaypriority able 5-52 LinkIt | No ems - Object. See lis | Number(4,0) t of elements for detail | This feld specifes the display sequence order of images associated with the item by priority. |
| Element Name | Required | Data Type | Description |
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Table 5-52 LinkItems - Object. See list of elements for detail
Sample Response Message
{
"items": [
{
"action": "INSERT",
"item": "1000000010",
"imagename": "imageName1",
"imageaddr": "http://www.oracle.com/",
"imageuri": "http://www.oracle.com/imageName1",
"imagedesc": "imageDesc1",
"imagetype": "T",
"primaryind": "Y",
"displaypriority": 1
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"item": "100200042",
"imagename": "image1",
"imageaddr": "http://www.oracle.com/",
"imageuri": "http://www.oracle.com/image1",
"imagedesc": "image1Desc",
"imagetype": "T",
"primaryind": "Y",
"displaypriority": 1
}
],
Merchandising to Omnichannel Services
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/omnichannel/item/
image?
before=2021-05-06T17%3A32%3A13.265046%2B08%3A00&limit=1&since=1970-01-01T00%3A00%3A00.001
Z",
"rel": "self"
},
{
"href": "http:// <hostname>/MerchIntegrations/services/foundation/omnichannel/item/
image?
before=2021-05-06T17%3A32%3A13.265046%2B08%3A00&limit=1&offsetkey=100200042%2Cimage1&sinc
e=1970-01-01T00%3A00%3A00.001Z",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| MERCHAPI_BOOKMARK ICL_RMS_ITEM_IMAGE | Yes Yes | Yes Yes | Yes Yes | Yes Yes |
| ITEM_MASTER | Yes | No | No | No |
| ITEM_IMAGE | Yes | No | No | No |
| MERCHAPI_ITEM_IMAGE | Yes | Yes | Yes | Yes |
| V_MERCHAPI_ITEM_IMAGE_JSON | Yes | No | No | No |
| V_MERCHAPI_ITEM_IMAGE | Yes | No | No | No |
REST Endpoint for Omnichannel/Item Initial Price details
Endpoint
MerchIntegrations/services/foundation/omnichannel/item/initialprice
Functional Area
Items - Item Definition
Business Overview
This service should not be used for external consumption. This service is very specific for XStore consumption and the roadmap plan is to deprecated this service in future once XStore dependency is removed. The information provided by this service is same as ‘foundation/ omnichannel/item/itemlocation’. The term ‘initial price’ for this service is misleading for external consumption because this service provides the current price for the item/location combination.
If Xstore is part of the implementation, refer to the technical details for API documentation for ‘foundation/omnichannel/item/itemlocation’ because the underlying components are the same.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/item/initialprice
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| nodelevel | No | String | Node Level |
| nodeid | No | String (10) | Node Id |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 10000. |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-53 PageResultsItemsVMerchApiInitialItemPrice - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-54 VMerchApiInitialItemPrice - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for Item details. |
| loctype | No | String (1) | This feld specifes the type of location in the location feld. Valid values are S (store) and W (warehouse). |
| location | No | Number(10,0) | This feld contains the numeric identifer of the location in which the item is to be found. This feld may contain a store or warehouse. |
| item | No | String (25) | This feld specifes the unique alphanumeric value that identifes the item. |
| pricetype | No | String (7) | This feld specifes the price type. Valid value is INITIAL. |
Table 5-54 (Cont.) VMerchApiInitialItemPrice - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| price | No | Number(20,4) | This feld specifes the initial unit retail price in the standard unit of measure for the item/ location combination. This feld is stored in the local currency. |
| effective | No | date | This feld specifes the date on which the unit retail price became or will become active. This feld is always null in the current implementation. |
| source | No | String (6) | This feld contains the source of the initial unit retail price of each item. This feld is always direct in the current implementation. |
| eventid | No | String | This feld specifes the event ID. This feld is always null in the current implementation. |
| resetind | No | String | This feld specifes the reset indicator. This feld is always null in the current implementation. |
| clearanceind | No | Number(1,0) | This feld specifes if the item is on clearance at the store. A value of 1 indicates clearance. |
Table 5-55 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"loctype": "S",
"location": 1521,
"item": "100012012",
"pricetype": "INITIAL",
"price": 19.5,
"effective": "2001-12-31",
"source": "direct",
"eventid": null,
"resetind": null,
"clearanceind": 1
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"loctype": "S",
"location": 121,
"item": "100000104",
"pricetype": "INITIAL",
"price": 12.1,
"effective": null,
"source": "direct",
"eventid": null,
"resetind": null,
"clearanceind": 0
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/omnichannel/item/
initialprice?
before=2021-05-11T17%3A23%3A22.208547%2B00%3A00&nodelevel=COMPANY&limit=1&nodeid=9118&sin
ce=1970-01-01T00%3A00%3A00.001Z",
"rel": "self"
},
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/omnichannel/item/
initialprice?
before=2021-05-11T17%3A23%3A22.208547%2B00%3A00&nodelevel=COMPANY&limit=1&nodeid=9118&off
setkey=S%2C121%2C100000104&since=1970-01-01T00%3A00%3A00.001Z",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_ITEM_LOC | Yes | Yes | Yes | Yes |
| ITEM_MASTER | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| MERCHAPI_ITEM_LOC | Yes | Yes | Yes | Yes |
| V_MERCHAPI_ITEM_LOC_JSON | Yes | No | No | No |
| V_MERCHAPI_INITIAL_ITEM_PRICE | Yes | No | No | No |
REST Endpoint for Omnichannel/Item Location details
Endpoint
MerchIntegrations/services/foundation/omnichannel/item/itemlocation
Functional Area
Items - Item Definition
Business Overview
This service publishes the item/location payload to the Omnichannel application and can also be consumed by downstream consuming systems. It serves the store and warehouse projection of the shared item/location cache with ‘foundation/item/location’ service and returns the location-specific selling, sourcing, VAT-code, and tax-group details used by omnichannel selling flows. Although the shared cache also supports broader location coverage for other services, this omnichannel projection does not return external-finisher rows.
The shared source view behind the cache is limited to items whose current ITEM_MASTER.STATUS is A or D. This service then applies its own store or warehouse query scope and enriches matching rows with tax-group data when corresponding GTS cache data exists in the requested window.
Refer to the api documentation for ‘foundation/item/location’ for technical and performance consideration for this service as these two share the same underlying component.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/item/itemlocation
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| nodelevel | No | String | Node Level |
| nodeid | No | String (10) | Node Id |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 10000. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| changeType | No | String | Filter records that were created or deleted within since/ before time range. Valid values create or delete |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-56 PageResultsItemsVMerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-57 VMerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for item details. |
| loctype | No | String (1) | This feld specifes the type of location in the location feld. Valid values are S (store) and W (warehouse). |
| location | No | Number(10,0) | This feld contains the numeric identifer of the location in which the item is to be found. This feld may contain a store or warehouse. |
| item | No | String (25) | This feld specifes the unique alphanumeric value that identifes the item. |
| sellingunitretail | No | Number(20,4) | This feld specifes the unit retail price in the selling unit of measure for the item/location combination. This feld is stored in the local currency. |
| sellinguom | No | String (4) | This feld specifes the selling unit of measure for an item’s single- unit retail. |
| sellingUomDecimalPre cision | No | Number(1,0) | This feld defnes the number of decimal places to be considered for the specifc selling UOM in XOCS. |
| taxableind | No | String (1) | This feld indicates if the item is taxable at the store. |
| localitemdesc | No | String (250) | This feld specifes the local description of the item. This feld will default to the item’s description but will be overridable. This value will be downloaded to the POS. |
| status | No | String (1) | This feld specifes the current status of the item at the store. |
Table 5-57 (Cont.) VMerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| qtykeyoptions | No | String (6) | This feld specifes whether the qty key on a POS should be used for this item at the location. Valid values are in the code_type RPO. Current values include R - required, P - prohibited, and O - optional. Additional values can be added to the code type as needed. This value will be downloaded to the POS as needed. |
| manualpriceentry | No | String (6) | This feld specifes whether the price can or should be entered manually on a POS for this item at the location. |
| foodstampind | No | String (1) | This feld specifes whether the item is approved for food stamps at the location. This value will be downloaded to the POS. |
| fxedtarevalue | No | Number(12,4) | This feld holds the value associated with the packaging in items sold by weight at the location. Fixed tare is the tare of the packaging used. The only processing RMS does involving the fxed tare value is downloading it to the POS. Fixed tare is not subtracted from items sold by weight when sales are uploaded to RMS. This kind of processing is the responsibility of the client and should occur before sales are sent to any Oracle Retail application. |
Table 5-57 (Cont.) VMerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fxedtareuom | No | String (4) | This feld holds the unit of measure value associated with the tare value. The only processing RMS does involving the fxed tare value and UOM is downloading it to the POS. Fixed tare is not subtracted from items sold by weight when sales are uploaded to RMS. This kind of processing is the responsibility of the client and should occur before sales are sent to any Oracle Retail application. |
| stopsaleind | No | String (1) | This feld specifes whether sale of the item should be stopped immediately at the location (for example, in case of recall). This value will be downloaded to the POS. |
| returnableind | No | String (1) | This feld contains a value of Yes when the item can be returned to the location. |
| backorderind | No | String (1) | This feld contains a value of Yes when the item can be back ordered to the location. |
| merchandiseind | No | String (1) | This feld indicates if the item is a merchandise item. |
| clearanceind | No | String (1) | This feld indicates if the item is on clearance at the store. |
| crosssell | No | String (1) | This feld indicates if a substitute item exists for the main item. |
| attacheditem | No | String (1) | This feld indicates if cross-sell or up-sell items are attached to the main item. |
Table 5-57 (Cont.) VMerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| vatcodes | No | String (4000) | This feld specifes VAT code information for the item. |
| localshortdescription | No | String (120) | This feld contains the local short description of the item. This feld will default to the item’s short description but will be overridable. This value will be downloaded to the POS. |
| sourcemethod | No | String (1) | This value will be used to specify how the ad- hoc PO or TSF creation process should source the item/location request. If the value is Warehouse, the process will attempt to fll the request by creating a transfer from the warehouse mentioned in the source_wh feld. If this warehouse does not have enough inventory to fll the request, a purchase order will be created for the item/location’s primary supplier. For warehouses, it is used by Oracle Retail Allocation to determine the valid sources and destinations for warehouse-to- warehouse allocations. |
| sourcewarehouse | No | Number(10,0) | This value will be used by the ad-hoc PO or transfer creation process to determine which warehouse to fll the store’s request from. It will also be used by the Allocation process to support warehouse-to- warehouse allocations. A value will be required in this feld if the sourcing method is Warehouse. |
Table 5-57 (Cont.) VMerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| taxGroupId | No | String (60) | Tax group ID. |
Table 5-58 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"loctype": "S",
"location": 1521,
"item": "100100076",
"sellingunitretail": 19.5,
"sellinguom": "EA",
"sellingUomDecimalPrecision": 1,
"taxableind": "Y",
"localitemdesc": "localItemDesc",
"status": null,
"qtykeyoptions": null,
"manualpriceentry": null,
"foodstampind": null,
"fixedtarevalue": 1.0,
"fixedtareuom": null,
"stopsaleind": null,
"returnableind": null,
"backorderind": null,
"merchandiseind": "Y",
"clearanceind": null,
"crosssell": null,
"attacheditem": null,
"vatcodes": null,
"localshortdescription": "localShortDesc",
"sourcemethod": null,
"sourcewarehouse": 1,
"taxGroupId": null
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
vatcodes JSON Output
| Name | Data Type | Description |
|---|---|---|
| code | String | This feld contains vat code which is used to |
uniquely identify a VAT rate. | ||
| date | Date | This fled contains date on which VAT rate become active. Format: YYYY-MM-DD |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"loctype": "S",
"location": 1111,
"item": "100750001",
"sellingunitretail": "132.13",
"sellinguom": "EA",
"taxableind": "Y",
"localitemdesc": "100750001",
"status": "A",
"qtykeyoptions": null,
"manualpriceentry": null,
"foodstampind": null,
"fixedtarevalue": null,
"fixedtareuom": null,
"stopsaleind": null,
"returnableind": null,
"backorderind": null,
"merchandiseind": "Y",
"clearanceind": "N",
"crosssell": "N",
"attacheditem": "N",
"vatcodes": "[{\"code\":\"S\",\"date\":\"2020-07-25\"}]",
"localshortdescription": "New Component Item",
"sourcemethod": "W",
"sourcewarehouse": 10001,
"taxGroupId":null
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/
omnichannel/item/itemlocation?
before=2021-05-03T15%3A50%3A19.189562000%2B00%3A00&nodelevel=COMPANY&limit=2&n
odeid=1&offsetkey=S%2C1111%2C100550000%26since%3D1970-01-01T00%3A00%3A00.001Z&
since=1970-01-01T00%3A00%3A00.001000000%2B00%3A00",
"rel": "self"
},
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/
omnichannel/item/itemlocation?
before=2021-05-03T15%3A50%3A19.189562000%2B00%3A00&nodelevel=COMPANY&limit=2&n
odeid=1&offsetkey=S%2C1151%2C100000067%26since%3D1970-01-01T00%3A00%3A00.001Z&
since=1970-01-01T00%3A00%3A00.001000000%2B00%3A00",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_ITEM_LOC | Yes | Yes | Yes | Yes |
| ITEM_MASTER | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| MERCHAPI_ITEM_LOC | Yes | Yes | Yes | Yes |
| V_MERCHAPI_ITEM_LOC_JSON | Yes | No | No | No |
| V_MERCHAPI_ITEM_LOC | Yes | No | No | No |
| MERCHAPI_GTS_TAX_LOC_ITEM | Yes | No | No | No |
| MERCHAPI_GTS_TAX_LOC | Yes | No | No | No |
REST Endpoint for Omnichannel/vat
Endpoint
MerchIntegrations/services/foundation/omnichannel/vat
Functional Area
Financials - Taxes
Business Overview
This service publishes VAT definitions to the Omnichannel application and can also be consumed by downstream consuming systems. It publishes VAT region and VAT code rate definitions for non-exempt tax regions only, and it derives the published end date from the next more recent effective row for the same VAT region and VAT code combination.
This includes data such as VAT code, active date, and VAT rate, and is applicable for VAT implmentations only (Default Tax Type system option is ‘Simple VAT’). This service does not support incremental date updates, it always returns all VAT related information, even if only one VAT definition was modified.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: VAT_CODES
Additional business tables: VAT_CODE_RATES, VAT_REGION
JSON cache table: MERCHAPI_VAT
JSON generation view: V_MERCHAPI_VAT_JSON
The JSON view is built from VAT_CODES, VAT_CODE_RATES, and VAT_REGION.
Functionally, it publishes VAT-region and VAT-code combinations for non-exempt tax regions only (VAT_REGION.VAT_CALC_TYPE <> ‘E’), ranks ACTIVE_DATE descending within each (vat_region, vat_code) pair, and derives endDate from the next newer effective row for that same region/code combination.
This API is unusual compared with the rest of the omnichannel caches because delta maintenance compares the current VAT source directly to the cache table rather than using row-level ICL driven change capture.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_VAT_JSON and apply VAT_REGION.VAT_CALC_TYPE <> ‘E’.
ICL (Integration Change Log) table: none; refresh and delta processing compare V_MERCHAPI_VAT_JSON directly to MERCHAPI_VAT
No ICL table is used; fine-grained delete and update publishing is intentionally not implemented because omnichannel VAT uses kill-and-fill behavior.
Related bulk publish handling for item/location cache
Tomorrow-effective VAT rate activation through VAT code-rate maintenance using batch job VATDLXPL and its prepost (post) can insert a record into MERCHAPI_ASYNC_REQUEST for foundation/omnichannel/item/itemlocation with REQUEST_TYPE = DATA_REFRESH and REFRESH_TYPE = REBUILD when the VAT change can affect a broad item/location population. This bulk publish handling is driven through the Vat Rate Change Explode (VATDLXPL) flow as part of prepost.pc.
If the future-effective change is narrower and item-specific, targeted item/location delta rows are staged instead of the broader rebuild request.
Refer to foundation/item/location for the detailed item/location operational and performance implications of this bulk publish handling.
Batch Configuration. This API does not have a dedicated delivered asynchronous schedule configuration.
Process configuration name: API_OMNI_VAT
No POM batch schedule entry was identified for this API.
No API-specific BACKGROUND_RUN_FLAG or BACKGROUND_RUN_INTERVAL_SECOND rows were found for this API.
Webhook configuration api name: foundation/omnichannel/vat
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/omnichannel/vat
Input Parameters
Output
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude able 5-59 PageR | No esultsItemsVMerch | String ApiVat - Object. See list of | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) elements for detail |
| Element Name | Required | Data Type | Description |
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-59 PageResultsItemsVMerchApiVat - Object. See list of elements for detail
Table 5-60 VMerchApiVat - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for VAT details. |
| vatregion | No | Number(4,0) | This feld gives the VAT region. |
| vatregionname | No | String (120) | This feld gives the VAT region name. |
| vatcode | No | String (6) | This feld gives the VAT code. |
| vatcodedesc | No | String (120) | This feld gives the VAT code description. |
| activedate | No | date | This feld gives the active date. |
| vatrate | No | Number(20,10) | This feld gives the VAT rate. |
| enddate | No | date | This feld gives the end date. |
Table 5-61 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": null,
"vatregion": 1000,
"vatregionname": null,
"vatcode": "S",
"vatcodedesc": null,
"activedate": "2001-12-31",
"vatrate": 1.0,
"enddate": "2001-12-31"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"vatregion": 1000,
"vatregionname": "Vat Region 1000",
"vatcode": "E",
"vatcodedesc": "Exempt",
"activedate": "2019-02-10T00:00:00",
"vatrate": null,
"enddate": "2019-02-18T00:00:00"
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http:// <hostname> /MerchIntegrations/services/foundation/
omnichannel/vat?
before=2021-05-06T19%3A34%3A38.158110%2B08%3A00&limit=1&since=1970-01-01T00%3A
00%3A00.001Z",
"rel": "self"
},
{
"href": "http://<hostname>/MerchIntegrations/services/foundation/
omnichannel/vat?
before=2021-05-06T19%3A34%3A38.158110%2B08%3A00&limit=1&offsetkey=1000%2CE%2C2
019-02-10T00%3A00%3A00&since=1970-01-01T00%3A00%3A00.001Z",
"rel": "next"
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| VAT_CODES | Yes | No | No | No |
| VAT_CODE_RATES | Yes | No | No | No |
| VAT_ITEM | Yes | No | No | No |
| MERCHAPI_VAT | Yes | Yes | Yes | Yes |
| V_MERCHAPI_VAT_JSON | Yes | No | No | No |
| V_MERCHAPI_VAT | Yes | No | No | No |
Merchandising Services
The following services are included in this functional area:
-
Administration
-
Data Privacy
-
Data Privacy Download Service
- Get Personally Identifiable Information
-
Data Privacy Upload Service
- Delete Personally Identifiable Information
-
-
Security Pre requisites/Considerations for accessing Data Privacy ReST Services
-
-
Operations
-
Background Job Configuration Upload Service
-
Get Batch Run Status Services
-
Update Background Job Configuration
-
-
BI Publisher Report URL Download Service
- Get BI Publisher Report URL
-
Calendar Download Service
- Get 4-5-4 Calendar
-
Codes and Descriptions Download Service
-
Get Codes and Descriptions
-
- Get Codes and Descriptions for All or Provided Code Type
-
- POM End of Week Signal Download Service * Get POM End of Week Signal Detail
-
Service Status Download Service
- Get ReST Service Status
-
Virtual Date Download Service
-
Get Current Virtual Date in Date Format
-
Get Current Virtual Date in Long and Date Format
-
-
Webhook Configuration Download Service
-
Webhook Configuration Upload Service
-
-
System Options
-
System Options Download Service * Get Functional System Options
-
Get Inventory Movement System Options
-
Get Procurement System Options
-
-
-
-
Cost
-
Average Cost
-
Average Cost Upload Service
- Update Average Cost
-
-
Cost Changes
-
Cost Change Upload Service
-
Create Cost Change Effective Immediately
-
Manage Cost Changes
-
-
-
Pricing Cost
-
Pricing Cost Download Service
- Get Pricing Cost
-
-
-
Customer Orders
-
Customer Order Available Inventory Download Service
-
Get Available Inventory for Customer Orderable Items
-
– Customer Order Inventory Backorder Upload Service * Create Inventory Backorder
-
Customer Order Item Substitution Upload Service
- Create Customer Order Item Substitution
-
Customer Order Upload Service
-
-
Cancel Fulfillment Order
-
- Create Fulfillment Order
-
• Deals – Deals Download Service * Get Item Location Deals
-
• Financials – Budgets * Half Data Budget Upload Service
-
– Currency * Currency Download Service * Currency Exchange Rate Download Service * Currency Exchange Rate Upload Service
-
– General Ledger * General Ledger Chart of Accounts Upload Service
-
– Terms * Freight Term Upload Service * Payment Term Upload Service
-
– Transaction Data * Transaction Data Upload Service
-
• Foundation – Banners and Channels Download Service * Get Banners * Get Channels
-
– Location List Upload Service * Manage Location Lists
-
– Location Trait Upload Service * Create Location Trait * Delete Location Trait * Update Location Trait
-
– Suppliers and Partners * Partner Download Service * Supplier and Partner Upload Service * Supplier Download Service * Supplier Upload Service
-
– Tax Rules * Tax Rule Download Service * Get Item Location Tax Rules * Get Store Tax Location
- Get Tax Rule Groups - Tax Rule Upload Service -
Franchise Management
-
Customer Credit Status Upload Service
- Update Customer Credit Status
-
Franchise Order Upload Service
-
Create Franchise Orders
-
Manage Franchise Orders
-
-
-
Import Management
-
Actual Landed Cost
-
Actual Landed Cost Upload Service
- Finalize Actual Landed Cost
-
-
Obligations
- Obligations Upload Services
-
-
Inventory
-
Appointments
-
Appointment Upload Service
-
Create Appointment
-
Delete Appointment
-
Delete Appointment Details
-
Manage Appointment Details
-
Update Appointment
-
-
-
Inventory Download Service
-
Get Item Available Inventory at Customer Orderable Locations
-
Get Item Location Inventory
-
-
Inventory Adjustments
-
Inventory Adjustment Upload Service
-
Create Inventory Adjustment for Items at a Location
-
Create Inventory Adjustments
-
-
Item Transformation Upload Service
- Create Item Transformations
-
-
Returns To Vendor
-
Return to Vendor Download Service
- RTV Publish Services
-
Return to Vendor Upload Service
- Manage Returns to Vendor
-
-
Shipments and Receipts
- Receiver Unit Adjustment Download Service
-
Get Receiver Unit Adjustment
-
- Shipment and Receipt Download Service * Get Shipment Detail
-
-
Shipment and Receipt Upload Service * Create DSD Receipts * Create Outbound ASNs * Delete Inbound ASNs * Manage Inbound ASN * Manage Purchase Order and Stock Order Receipts
- Manage Purchase Order Receipts
-
-
-
Manage Stock Order Receipts
-
- Update DSD Receipts
-
– Stock Counts * Stock Count Download Service
-
Get Stock Count Detail
-
- Stock Count Upload Service * Create Stock Count Schedules * Delete Stock Count Schedule Locations * Delete Stock Count Schedules * Update Stock Count Schedules
-
-
Transfers and Allocations
-
Allocation Download Service * Get Allocation Details for Provided Allocation * Get Details for an Allocation
-
- Allocation Number Download Service * Get Next Allocation Numbers Service
-
- Allocation Upload Service * Close Allocations * Create Allocation Details * Create Allocations * Delete Allocation Details * Update Allocation Details * Update Allocations
-
-
Mobile Workflow Transfer Download Service * Create Transfer - Get From Locations for Transfer * Create Transfer - Get Items for Transfer * Create Transfer - Get Next Transfer Numbers * Create Transfer - Get To Locations for Transfer
-
Create Transfer - Refresh Transfer Items
-
- Create Transfer - Refresh Transfer Locations * Mobile Workflow - Get Locations on Existing Transfers * Mobile Workflow - Get Transfer Statuses
-
Mobile Workflow - Get Transfer Summary
-
Mobile Workflow - Get Transfer Types
-
Mobile Workflow - Get Transfer Users
-
Mobile Workflow - Get Transfers
-
Mobile Workflow - Refresh Transfer Locations
-
-
Mobile Workflow Transfer Upload Service
-
Create Transfer
-
Mobile Workflow - Update Transfer Status
-
-
Stock Order Status Upload Service * Manage Stock Order Status
-
Transfer Detail Service
-
Transfer Download Service
-
Get Transfer
-
Get Transfer Details for Provided Transfer
-
-
Transfer Upload Service
-
Create Book Transfer
-
Create Transfer Details
-
Create Transfers
-
Delete Transfer Details
-
Delete Transfers
-
Update Transfer Details
-
Update Transfers
-
-
Work Order Status Upload Service
- Update Work Orders Status
-
Work Order Download Service
-
Purchase Order Work Order Publish Services
-
Transfer Work Order Publish Services
-
-
-
-
Items
-
Item Definition
-
Item AI Services
-
Item Attribute Extraction Services
-
Get Item Attributes Base
-
Get Item Attributes Customized
-
Update Item Attributes Customized
-
-
-
-
-
Item Download Service
-
Get Item Details
-
Get Item Details for All or Provided Items
-
Get Item Details for Provided Item
-
Get Item Location Details
-
Get Item VAT Details
-
Get Item VAT Details by Item Number
-
-
Item ELC Upload Service
-
Create Item Conditional Tariff Treatments
-
Create Item Expenses
-
Create Item HTS
-
Create Item HTS Assessments
-
Delete Item Conditional Tariff Treatments
-
Delete Item Expenses
-
Delete Item HTS
-
Delete Item HTS Assessments
-
Update Item Expenses
-
Update Item HTS
-
Update Item HTS Assessments
-
-
Item Location Upload Service
-
Create Item Locations
-
- Manage Item Location Status Update Requests * Update Item Locations
-
- Item Number Reservation Upload Service
-
Generate and Reserve Item Numbers
-
- Item Placeholder Upload Service * Create Placeholder Items
-
- Item Sourcing Upload Service * Create Item Supplier Countries * Create Item Supplier Countries of Manufacture * Create Item Supplier Country Dimensions * Create Item Supplier Country Locations * Create Item Supplier Translations * Create Item Suppliers * Delete Item Supplier Countries * Delete Item Supplier Countries of Manufacture * Delete Item Supplier Country Dimensions * Delete Item Supplier Country Locations
-
Delete Item Supplier Translations
-
- Delete Item Suppliers * Update Item Supplier Countries * Update Item Supplier Countries of Manufacture * Update Item Supplier Country Dimensions * Update Item Supplier Country Locations * Update Item Supplier Translations * Update Item Suppliers
-
- Item Taxes Upload Service * Create Item Taxes * Delete Item Taxes
-
- Item Up Charge Download Service * Get Item Up Charges for Future Date
-
-
Item Upload Service * Create Item Description Translations * Create Item Image Translations * Create Item Images * Create Item Seasons * Create Item Tickets * Create Item UDA Free Form Translations * Create Item UDAs * Create Item Up Charges * Create Items * Create Required Documents * Delete Item Description Translations * Delete Item Image Translations * Delete Item Images * Delete Item Seasons * Delete Item Tickets * Delete Item UDA Free Form Translations * Delete Item UDAs * Delete Item Up Charges * Delete Items * Delete Required Documents * Update Item Description Translations * Update Item Image Translations * Update Item Images * Update Item Tickets
-
Update Item UDA Free Form Translations
-
-
Update Item UDAs * Update Item Up Charge Details
-
-
-
Update Items
-
-
Related Items Upload Service
-
Create Related Items
-
Create Related Item Translations
-
Delete Related Items
-
Delete Related Item Translations
-
Update Related Items
-
Update Related Item Translations
-
-
-
Item Foundation
-
Brand Download Service
- Get Brands
-
Brand Upload Service
- Manage Brands
-
Differentiator Download Service
-
Get Differentiator Details
-
- Get Differentiator Details for Provided Differentiator * Get Differentiator Details for Single Differentiator
-
- Differentiator Group Download Service * Get Differentiator Groups * Get Differentiators for Provided Group
-
- Differentiator Group Upload Service * Create Differentiator Group Details * Create Differentiator Groups * Delete Differentiator Group Details * Delete Differentiator Groups * Update Differentiator Group Details * Update Differentiator Groups
-
- Differentiator Type Download Service * Get Differentiator Type Details for Provided Type * Get Differentiator Types
-
- Differentiator Upload Service * Create Differentiators * Delete Differentiators * Update Differentiators
-
-
Seasons and Phases Download Service
-
Get Seasons and Phases Service
-
-
User Defined Attribute (UDA) Download Service
-
REST Endpoint for UDA details
-
- REST Endpoint to Fetch UDA by UDA ID
-
-
-
-
Merchandise Hierarchy
-
Class Download Service
-
Get Class Details for Provided Class
-
Get Classes
-
-
Class Upload Service
-
Create Class
-
Delete Class
-
Update Class
-
-
Company Upload Service
- Update Company
-
Department Download Service
-
Get Department Details
-
Get Department Details for Provided Department
-
Get Department Name
-
Get Department Tax Details
-
Get Departments
-
-
Department Upload Service * Create Department * Create Department Taxes * Create Department Up Charge * Delete Department * Delete Department Up Charge * Update Department * Update Department Taxes * Update Department Up Charge
-
– Division Download Service * Get Division Details for Provided Division * Get Divisions
-
– Division Upload Service * Create Division * Delete Division * Update Division
-
– Group Download Service * Get Group for Provided Group
-
Get Groups
-
– Group Upload Service * Create Group * Delete Group * Update Group
-
– Merchandise Hierarchy Download Service
-
-
Get Merchandise Hierarchy
-
– Subclass Download Service * Get Subclass Details for Provided Subclass * Get Subclasses
-
– Subclass Upload Service * Create Subclass * Delete Subclass * Update Subclass
-
– Reclassification * Item Reclassification Download Service * Item Reclassification Upload Service * Merchandise Hierarchy Reclassification Upload Service
-
• Organizational Hierarchy – Organizational Hierarchy Download Service * Get Organizational Hierarchy for Provided Level * Get Organizational Hierarchy for Provided Level and Hierarchy Identifier * Get Organizational Hierarchy
-
– Organizational Hierarchy Upload Service * Create Organizational Hierarchy * Delete Organizational Hierarchy * Update Organizational Hierarchy
-
– Stores * Store Download Service * Get Basic Store Details * Get Store Details * Get Store Details for Provided Store
-
-
Store Upload Service * Create Store * Create Store Address * Create Store Department Up Charges * Create Store Hours * Create Store Location Trait
- Create Walk-Through Store - Delete Store - Delete Store Address - Delete Store Department Up Charges - Delete Store Hours - Delete Store Location Trait - Delete Walk-Through Store - Update Store - Update Store Address - Update Store Department Up Charges - Update Store Hours-
Stores by Hierarchy Level Upload Service
-
Create Store Location Trait by Hierarchy Level
-
Delete Store Location Trait by Hierarchy Level
-
-
-
Warehouse
-
Warehouse Download Service
-
Get Basic Warehouse Details
-
Get Warehouse Details
-
Get Warehouse Details for Provided Warehouse
-
-
-
-
Purchase Orders
-
Mobile Workflow Purchase Order Download Service
-
Create Purchase Order - Get Items for Purchase Orders
-
Create Purchase Order - Get Locations for Purchase Order
-
- Create Purchase Order - Get Next Purchase Order Numbers * Create Purchase Order - Get Purchase Order Supplier Terms * Create Purchase Order - Get Suppliers for Purchase Order * Create Purchase Order - Refresh Purchase Order Item Locations * Create Purchase Order - Refresh Purchase Order Items * Create Purchase Order - Refresh Purchase Order Suppliers * Get Purchase Order Detail - Simple * - Manage Purchase Orders Get Open Purchase Orders
-
- Manage Purchase Orders - Get Purchase Order Cancel Reasons * Manage Purchase Orders - Get Purchase Order Header * Manage Purchase Orders - Get Purchase Order Items for an Order * Manage Purchase Orders - Get Purchase Order Locations for an Order/Item * - Manage Purchase Orders Get Purchase Order Origins
-
- Manage Purchase Orders - Get Purchase Order Statuses * Manage Purchase Orders - Get Users Who Have Created Purchase Orders
-
-
-
Mobile Workflow Purchase Order Upload Service * Create Purchase Order - Simple
-
-
Manage Purchase Orders Approve Purchase Orders
-
Manage Purchase Orders - Cancel Purchase Orders
-
-
Manage Purchase Orders Reject Purchase Orders
-
-
Manage Purchase Orders Update Purchase Order Dates
-
-
Purchase Order Download Service
-
Get Purchase Order Details
-
Get Purchase Order Details by Order Number
-
- Purchase Order Upload Service
- Create Pre-issued Order Numbers
- Create Purchase Order Details
- Create Purchase Order Expenses
- Create Purchase Order HTS
- Create Purchase Order HTS Assessments
- Create Purchase Order Letters of Credit
- Create Purchase Orders
- Delete Purchase Order Details
- Delete Purchase Order Expenses
- Delete Purchase Order HTS
- Delete Purchase Order HTS Assessments
- Delete Purchase Order Letters of Credit
- Delete Purchase Orders
- Update Purchase Order Details
- Update Purchase Order Expenses
- Update Purchase Order HTS
- * Update Purchase Order HTS Assessments * Update Purchase Order Letters of Credit * Update Purchase Orders
-
Replenishment
-
Inventory Request Upload Service
- Create Inventory Requests
-
Replenishment Scheduled Update Upload Service
-
-
Sales
-
Sales Download Service
-
Get Item Location Weekly Sales (deprecated)
-
Get Item Location Weekly Sales
-
-
Store Day User Upload Service
-
Administration
The following services are included in this functional area:
-
Data Privacy – Data Privacy Download Service * Get Personally Identifiable Information
-
– Data Privacy Upload Service * Delete Personally Identifiable Information
-
– - Security Pre requisites/Considerations for accessing Data Privacy ReST Services
-
• Operations – Background Job Configuration Upload Service * Get Batch Run Status Services * Update Background Job Configuration
-
– BI Publisher Report URL Download Service * Get BI Publisher Report URL
-
– Calendar Download Service * Get 4-5-4 Calendar
-
– Codes and Descriptions Download Service * Get Codes and Descriptions * Get Codes and Descriptions for All or Provided Code Type
-
– External Reference Service * Manage External Cross Reference Identifier
-
– POM End of Week Signal Download Service * Get POM End of Week Signal Detail
-
– Service Status Download Service * Get ReST Service Status
-
– Virtual Date Download Service * Get Current Virtual Date in Date Format * Get Current Virtual Date in Long and Date Format
-
– Webhook Configuration Download Service
-
– Webhook Configuration Upload Service
-
• System Options – System Options Download Service * Get Functional System Options * Get Inventory Movement System Options
- Get Procurement System Options
Data Privacy
The following services are included in this functional area:
-
Data Privacy Download Service
- Get Personally Identifiable Information
-
Data Privacy Upload Service
-
Delete Personally Identifiable Information
-
• Security Pre-requisites/Considerations for accessing Data Privacy ReST Services
Data Privacy Download Service
Get Personally Identifiable Information
This section describes the Data Privacy Access service for Merchandising and Sales Audit.
Business Overview
This query service provides access to data stored in Merchandising and Sales Audit that contains personally identifiable information.
Service Type
GET
ReST URL
https://rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace>/
RetailAppsDataPrivServicesRESTApp/rest/privatedata/<entityName>?
customer_id={entityName}::{entityType}::{entityId}::{fullName}:: {phone}::
{email}
Accept
-
application/json
-
• application/xml
Query Parameters
-
customer_id (required): The customer ID string containing the parameters to be used in looking up data. The format of this string is as follows:
-
{entity name}::{entity type}::{entity id}::{full name}::{phone}::{email}
-
Path Parameters
Parameter Description Entity Name The query group type for which data is to be retrieved. The available group types for Merchandising are: • BUYER (Buyer) • MERCHANT (Merchant) • STORE (Store) • WAREHOUSE (Warehouse) • SUPPLIER (Supplier) • PARTNER (Partner) • OUTLOC (Outside Location) • ORDER CUSTOMER (Merchandising Customer) The available group types for Sales Audit are: • EMPLOYEE (Employee) • CUSTOMER (Customer) Note: The supported entity names can also be retrieved by accessing the below URL either in the browser or through a REST client like Postman, cURL and so on:
https://rex.retail.<Region Name>.ocs.oraclecloud.com/
<Customer Subnamespace/RetailAppsDataPrivServicesRESTApp/
rest/privatedata/config/access
Sample Response:
{
"types": [
"PARTNER",
"OUTLOC",
"WAREHOUSE",
"getPersonalInfo",
"EMPLOYEE",
"raf",
"STORE",
"BUYER",
"CUSTOMER",
"SUPPLIER",
"MERCHANT",
"ORDER_CUSTOMER"
]
}
In the above response, getPersonalInfo and raf are only for internal consumption and not to be used. The ones that are permitted are the other entity names.
| Parameter | Description |
|---|---|
| Entity Type | In case of Merchandising, this parameter is used if the entity name isPARTNERorOUTLOC. The value here should indicate the type of partner oroutside location being queried. Valid values for this input can be found on the Codes table for each type: |
| • Partner Types = PTNR • Outside Location Types = LOCT In case of Sales Audit, this parameter is used if the entity name is CUSTOMER.The value here should indicate the type of customer being queried. Valid values for this input can be found on the Codes table where code type is CIDT. (Customer Types) | |
| Entity ID | The ID of the entity being queried. |
| For example, the supplier ID (in Merchandising) or employee ID (in Sales Audit). | |
| Full Name | The full name to be searched for the selected entity. |
| Phone | The phone number to be searched for the selected entity. |
| The email to be searched for the selected entity. |
Default Response
The response will return all instances of the data being searched that occur in the requested entity. For example, if the entity requested was BUYER , all instances where the buyer, name, and phone match the data sent will be returned. If any of these parameters are not sent (for example, email), then it will not be used as part of the search. The following data is included in the response:
| Parameter | Description |
|---|---|
| Entity Name | For Merchandising: |
| • BUYER (Buyer) | |
| • MERCHANT (Merchant) • STORE (Store) | |
| • WAREHOUSE (Warehouse) | |
| • SUPPLIER (Supplier) | |
| • PARTNER (Partner) | |
| • OUTLOC (Outside Location) | |
| • ORDER CUSTOMER (Merchandising Customer) | |
| For Sales Audit: | |
| • EMPLOYEE (Employee) | |
| • CUSTOMER (Customer) | |
| Entity Type | In the case of Merchandising, if the entity name isPARTNERorOUTLOC, thevalue here indicates the type of partner or outside location. Valid values can be found on the Codes table for each type: |
| • Partner Types = PTNR | |
| • Outside Location Types = LOCT For other entity types, this will be null. | |
In the case of Sales Audit, if the entity name isCUSTOMER, the value hereindicates the type of customer. Valid values can be found on the Codes table where code type is CIDT. For other entity types, this will be null. | |
| Entity ID | The ID of the entity where the data was found. |
| Full Name | The name associated with the entity. |
| Phone | The phone number associated with the entity. |
| Parameter | Description |
|---|---|
| Fax | The fax number associated with the entity. |
| Telex | The telex number associated with the entity. |
| Pager | The pager number associated with the entity. |
| The email address associated with the entity. |
Sample Response
{
"Buyer Information": {
"list": [],
"Get Buyer Information": {
"list": [
[
{
"ENTITY_NAME": "BUYER",
"ENTITY_TYPE": "null",
"ENTITY_ID": "1002",
"FULL_NAME": "Matt Wilsman",
"PHONE": "6125251034",
"FAX": "6125259800",
"TELEX": "null",
"PAGER": "null",
"EMAIL": "test.abd.com"
}
]
]
}
}
}
}
Response Codes and Error Messages
-
200 - Success
-
400 - Bad Request - for the following situations:
-
Customer ID does not match the required format.
-
Invalid input type
-
Missing customer ID
-
Invalid JSON Format
-
-
500 - Internal Server Errors - for all other types of errors (for example, configuration errors, SQL errors, and so on).
Success Payloads
-
When
Accept=application/json, this API will return data in JSON format -
When
Accept=application/xml, this API will return data formatted as an HTML page
The below table gives a sample of URLs for invoking the GET service for the different entity names .
Note
-
The entity ID should be replaced with the appropriate valid ID based on the customer environment.
-
The sample response formats shown here are with using a REST client like PostMan and with the Header
Acceptvalue set toapplication/json
Entity Name Reference URL Sample Response BUYER https:// { rex.retail.<Regio "Buyer Information": { n "list": [], Name>.ocs.oraclec "Get Buyer Information": { loud.com/ "list": [ <Customer [ Subnamespace/ { RetailAppsDataPri "ENTITY_NAME": "BUYER", vServicesRESTApp/ "ENTITY_TYPE": "null", rest/privatedata/ "ENTITY_ID": "3933", BUYER? "FULL_NAME": "RMS_Buyer", customer_id=BUYER "PHONE": "999-888-7777", ::3933:::: "FAX": "666-555-4444", "TELEX": "null", "PAGER": "null", "EMAIL": "null" } ] ] } } }
Entity Name Reference URL Sample Response MERCHANT https:// rex.retail.<Region { Name>.ocs.oraclecl "Merchant Information": { oud.com/<Customer "list": [], Subnamespace / "Get Merchant Information": { RetailAppsDataPriv "list": [ ServicesRESTApp/ [ rest/privatedata/ { MERCHANT? "ENTITY_NAME": "MERCHANT", customer_id=MERCHA "ENTITY_TYPE": "null", NT::2114:::: "ENTITY_ID": "2114", "FULL_NAME": "DC Merchandiser_2114", "PHONE": "999-666-5555", "FAX": "999-888-2222", "TELEX": "null", "PAGER": "null", "EMAIL": "null" } ] ] } } }
Entity Name Reference URL Sample Response STORE https:// { rex.retail.<Regio "Store Information": { n "list": [], Name>.ocs.oraclec "Get Store Information": { loud.com/ "list": [ <Customer [ Subnamespace/ { RetailAppsDataPri "ENTITY_NAME": "STORE", vServicesRESTApp/ "ENTITY_TYPE": "null", rest/privatedata/ "ENTITY_ID": "7143876752", STORE? "FULL_NAME": "Scott", customer_id=STORE "PHONE": "763-888-4455", ::7143876752::::: "FAX": "1-763-959-4477", : "TELEX": "null", "PAGER": "null", "EMAIL": "Oracle@Automail.com" }, { "ENTITY_NAME": "ADDRESS", "ENTITY_TYPE": "null", "ENTITY_ID": "50003", "FULL_NAME": "Oracle", "PHONE": "111", "FAX": "111", "TELEX": "null", "PAGER": "null", "EMAIL": "John.Doe@Oracle.com" }, { "ENTITY_NAME": "ADDRESS", "ENTITY_TYPE": "null", "ENTITY_ID": "50004", "FULL_NAME": "Oracle", "PHONE": "111", "FAX": "111", "TELEX": "null", "PAGER": "null", "EMAIL": "John.Doe@Oracle.com" } ] ] } } }
| Entity Name | Reference URL | Sample Response |
|---|---|---|
| WAREHOUS | ||
| E | https:// | { |
rex.retail.<Regio | "Warehouse Information": { | |
n | "list": [], | |
Name>.ocs.oraclec | "Get Warehouse Information": { | |
loud.com/ | "list": [ | |
<Customer | [ | |
Subnamespace / | { | |
RetailAppsDataPri | "ENTITY_NAME": "WAREHOUSE", | |
vServicesRESTApp/ | "ENTITY_TYPE": "null", | |
rest/privatedata/ | "ENTITY_ID": "9993", | |
WAREHOUSE? | "FULL_NAME": "null", | |
customer_id=WAREH | "PHONE": "null", | |
OUSE::9993:: | "FAX": "null","TELEX": "null", | |
"PAGER": "null","EMAIL": "Eric@manhattan.com"}]]}}} |
| Entity Name | Reference URL | Sample Response |
|---|---|---|
| SUPPLIER | ||
https:// | { | |
rex.retail.<Regio | "Supplier Information": { | |
nName>.ocs.oraclecloud.com/ | "list": [],"Get Supplier Information": {"list": [ | |
<Customer | [ | |
Subnamespace/ | { | |
RetailAppsDataPrivServicesRESTApp/ | "ENTITY_NAME": "SUPPLIER","ENTITY_TYPE": "null", | |
rest/privatedata/SUPPLIER?customer_id=SUPPLIER::2001:::::: | "ENTITY_ID": "2001","FULL_NAME": "James Moriarty","PHONE": "6128059160","FAX": "null","TELEX": "null","PAGER": "null","EMAIL": "null" | |
},{ | ||
"ENTITY_NAME": "ADDRESS","ENTITY_TYPE": "null","ENTITY_ID": "105001","FULL_NAME": "null","PHONE": "null","FAX": "null","TELEX": "null","PAGER": "null","EMAIL": "null"},{"ENTITY_NAME": "ADDRESS","ENTITY_TYPE": "null","ENTITY_ID": "105002","FULL_NAME": "null","PHONE": "null","FAX": "null","TELEX": "null","PAGER": "null","EMAIL": "null"},{ | ||
"ENTITY_NAME": "ADDRESS","ENTITY_TYPE": "null","ENTITY_ID": "105003","FULL_NAME": "null","PHONE": "null","FAX": "null","TELEX": "null","PAGER": "null","EMAIL": "null"},{ |
Entity Name Reference URL Sample Response "ENTITY_NAME": "ADDRESS", "ENTITY_TYPE": "null", "ENTITY_ID": "105004", "FULL_NAME": "null", "PHONE": "null", "FAX": "null", "TELEX": "null", "PAGER": "null", "EMAIL": "null" } ] ] } } }
Entity Name Reference URL Sample Response PARTNER https:// { rex.retail.<Regio "Partner Information": { n "list": [], Name>.ocs.oraclec "Get Partner Information": { loud.com/ "list": [ <Customer [ Subnamespace / { RetailAppsDataPri "ENTITY_NAME": "PARTNER", vServicesRESTApp/ "ENTITY_TYPE": "BK", rest/privatedata/ "ENTITY_ID": "464694358", PARTNER? "FULL_NAME": "XXXXX", customer_id=PARTN "PHONE": "XXXXX", ER::::464694358:: "FAX": "null", :::: "TELEX": "null", "PAGER": "null", "EMAIL": "null" }, { "ENTITY_NAME": "ADDRESS", "ENTITY_TYPE": "null", "ENTITY_ID": "270001", "FULL_NAME": "B", "PHONE": "123-654-8888", "FAX": "123-654-9999", "TELEX": "null", "PAGER": "null", "EMAIL": "oracle@automail.com" }, { "ENTITY_NAME": "ADDRESS", "ENTITY_TYPE": "null", "ENTITY_ID": "270002", "FULL_NAME": "P", "PHONE": "123-654-8888", "FAX": "123-654-9999", "TELEX": "null", "PAGER": "null", "EMAIL": "oracle@automail.com" }, { "ENTITY_NAME": "ADDRESS", "ENTITY_TYPE": "null", "ENTITY_ID": "270003", "FULL_NAME": "null", "PHONE": "null", "FAX": "null", "TELEX": "null", "PAGER": "null", "EMAIL": "null" } ]
Entity Name Reference URL
Sample Response
]
}
}
}
OUTLOC
https:// {
rex.retail.<Regio "Out Loc Information": {
n "list": [],
Name>.ocs.oraclec "Get OutLoc Information": {
loud.com/ "list": [
<Customer [
Subnamespace / {
RetailAppsDataPri "ENTITY_NAME": "OUTLOC",
vServicesRESTApp/ "ENTITY_TYPE": "RL",
rest/privatedata/ "ENTITY_ID": "97285",
OUTLOC? "FULL_NAME": "Alexandar Hamilton",
customer_id=OUTLO "PHONE": "56565-22-22",
C::::97285:::::: "FAX": "56565-22-22",
"TELEX": "56565-22-22",
"PAGER": "null",
"EMAIL":
"alloy.automation@oracle.com"
}
]
]
}
}
}
Entity Name Reference URL Sample Response ORDER_CU STOMER https:// { rex.retail.<Regio "Order Customer Information": { n "list": [], Name>.ocs.oraclec "Order Customer Information": { loud.com/ "list": [ <Customer [ Subnamespace / { RetailAppsDataPri "ENTITY_NAME": "ORDER_CUSTOMER", vServicesRESTApp/ "ENTITY_TYPE": "null", rest/privatedata/ "ENTITY_ID": "90003", ORDER_CUSTOMER? "FULL_NAME": "John Scott", customer_id=ORDER "PHONE": "1800800800", _CUSTOMER::90003: "FAX": "null", ::: "TELEX": "null", "PAGER": "null", "EMAIL": "null" } ] ] } } } EMPLOYEE https:// { rex.retail.<Regio "Employeee Information": { n "list": [], Name>.ocs.oraclec "Employeee Information": { loud.com/ "list": [ <Customer [ Subnamespace / { RetailAppsDataPri "ENTITY_NAME": "EMPLOYEE", vServicesRESTApp/ "ENTITY_TYPE": "null", rest/privatedata/ "ENTITY_ID": "SAMMYSMITH", EMPLOYEE? "FULL_NAME": "PS", customer_id=EMPLO "PHONE": "990-888-8989", YEE::SAMMYSMITH:: "FAX": "null", :::: "TELEX": "null", "PAGER": "null", "EMAIL": "PS@GMAIL.COM" } ] ] } } }
Entity Name Reference URL Sample Response CUSTOMER https:// { rex.retail.<Regio "Customer Information": { n "list": [], Name>.ocs.oraclec "Customer Information": { loud.com/ "list": [ <Customer [ Subnamespace/ { RetailAppsDataPri "ENTITY_NAME": "CUSTOMER", vServicesRESTApp/ "ENTITY_TYPE": "CUSTID", rest/privatedata/ "ENTITY_ID": "1234567", CUSTOMER? "FULL_NAME": "alice", customer_id=CUSTO "PHONE": "876543", MER::CUSTID::1234 "FAX": "null", 567:::::: "TELEX": "null", "PAGER": "null", "EMAIL": "lice@gmail.com" } ] ] } } }
Data Privacy Upload Service
Delete Personally Identifiable Information
This section describes the Data Privacy Forget service for Merchandising and Sales Audit.
Business Overview
This service supports updating personal information stored in Merchandising and Sales Audit. When the service is invoked with mask strings as inputs, it overwrites the fields with mask strings, which effectively removes the personal information from the system.
Service Type
DELETE
ReST URL
https://<host:port>/RetailAppsDataPrivServicesRESTApp/rest/privatedata/
<updateEntityName>?customer_id={entityName}::{entityType}::{entityId}::
{fullName}:: {phone}::{fax}::{telex}::{pager}::{email}::{addr1}::{addr2}::
{addr3}::{county}::{city}::{state}::{countryId}::{postalCode}
Accept
-
application/json
-
application/xml
Query Parameters
-
customer_id (required): The customer ID string containing the parameters to be used in updating data. The format of this string is as follows:
- {entityName}::{entityType}::{entityId}::{fullName}::{phone}::{fax}::{telex}::{pager}:: {email}::{addr1}::{addr2}::{addr3}::{county}::{city}::{state}::{countryId}::{postalCode}
Path Parameters
| Parameter | Description |
|---|---|
| Update Entity Name | The update group type for which data is to be updated. The available group types for Merchandising are: • updateAddressInformation • updateOrderCustomerInformation • updateSupplierInformation • updateOutLocInformation • updateBuyerInformation • updateMerchantInformation • updateStoreInformation • updateWarehouseInformation • updatePartnerInformation |
| The available group types for Sales Audit are: • updateEmployeeInformation • updateCustomerInformation **Note:**To view the supported forget PII data types, the below URL can be invoked with a GET request |
https://rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer
Subnamespace/RetailAppsDataPrivServicesRESTApp/rest/
privatedata/config/forget
-
Entity Name The group type for which data is to be updated. (required) The available group types for Merchandising are: • BUYER (Buyer) • MERCHANT (Merchant) • STORE (Store) • WAREHOUSE (Warehouse) • SUPPLIER (Supplier) • PARTNER (Partner) • OUTLOC (Outside Location) • ORDER CUSTOMER (Merchandising Customer) The available group types for Sales Audit are: • EMPLOYEE (Employee) • CUSTOMER (Customer)
-
Entity Type In case of Merchandising, this parameter is used if the entity name is
PARTNERorOUTLOC. The value here should indicate the type of partner or outside location. Valid values for this input can be found on the Codes table for each type: • Partner Types = PTNR • Outside Location Types = LOCT In case of Sales Audit, this parameter is used if the entity name isCUSTOMER. The value here should indicate the type of customer. Valid values for this input can be found on the Codes table where code type isCIDT(Customer Types). -
Entity ID The ID of the entity to be updated. (required) For example, the supplier ID (in Merchandising) or employee ID (in Sales Audit).
| Parameter | Description |
|---|---|
| Full Name | The value to update the full name with. If the value is null and this is a required field in the entity, XXXXXwill be used. |
| Phone | The value to update the phone number with. If the value is null and this is a required field in the entity, XXXXXwill be used. |
| Fax | The value to update the fax number with. |
| Telex | The value to update the telex number with. |
| Pager | The value to update the pager number with. |
| The value to update the email address with. | |
| Addr1 | The value to update the address 1 with. |
| Addr2 | The value to update the address 2 with. |
| Addr3 | The value to update the address 3 with. |
| County | The value to update the county with. |
| City | The value to update the city with. |
| State | The value to update the state with. |
| Country | The value to update the country with. |
| Postal Code | The value to update the postal code with. |
Default Response
This service only returns a response code to signify if the request is successful or not. If no record is updated, the service returns an error.
Response Codes and Error Messages
-
200 - Success
-
400 - Bad Request - for the following situations:
-
Customer ID does not match the required format
-
Invalid input type
-
Missing customer ID
-
Invalid JSON Format
-
-
500 - Internal Server Errors - for all other types of errors (for example, configuration errors, SQL errors, and so on).
Success Payloads
N/A
The below section depicts the sample URL for Delete API for PII (Personally Identifiable Information) for the various entity names.
| Entity Name | Reference URL |
|---|---|
| BUYER | https:// rex.retail. RetailAppsDataPrivServicesRESTApp/rest/privatedata/updateBuyerInformation? customer_id=BUYER::3933 :::::: |
| SUPPLIER | https:// rex.retail. RetailAppsDataPrivServicesRESTApp/rest/privatedata/updateSupplierInformation? customer_id=SUPPLIER::2001:::::: |
Entity Name Reference URL MERCHANT https:// rex.retail.
Security Pre-requisites/Considerations for accessing Data Privacy ReST Services
The preferred access method for these services is through Oauth2–based security. For OAuth credential configuration, see the section titled OAuth for REST Service Authentication in this document.
In the rare event of using basic Auth for accessing these services, ensure the user accessing these services has the necessary IDCS groups associated as listed below:
-
For Production environments,
-
DATAPRIV_ADMINISTRATOR_REST_API_ROLE
-
DATA_PRIVACY_ADMINISTRATOR_JOB
-
-
For Non-Prod environments,
-
DATAPRIV_ADMINISTRATOR_REST_API_ROLE_PREPROD
-
DATA_PRIVACY_ADMINISTRATOR_JOB_PREPROD
-
Operations
The following services are included in this functional area:
-
Background Job Configuration Upload Service
-
Get Batch Run Status Services
-
Update Background Job Configuration
-
-
BI Publisher Report URL Download Service
- Get BI Publisher Report URL
-
Calendar Download Service
- Get 4-5-4 Calendar
-
Codes and Descriptions Download Service
-
Get Codes and Descriptions
-
Get Codes and Descriptions for All or Provided Code Type
-
-
External Reference Service
- Manage External Cross Reference Identifier
-
POM End of Week Signal Download Service
- Get POM End of Week Signal Detail
-
Service Status Download Service
- Get ReST Service Status
-
Virtual Date Download Service
-
Get Current Virtual Date in Date Format
-
Get Current Virtual Date in Long and Date Format
-
-
Webhook Configuration Download Service
-
Webhook Configuration Upload Service
Upload RDE Batch Status for Business Date
Functional Area
Administration - Operations
Business Overview
This service can be used by RDE to send job status to MFCS. It inserts a record in RMS_RDE_BATCH_STATUS with job name, business date and status from the payload.
When the service is called with job name = ‘RDE_COMPLETION’, the relevant business date, and status = ‘C’ (completed), it serves as a signal to MFCS that RDE has successfully extracted data for a specific business date.
Service Type
POST
ReST URL
MerchIntegrations/services/private/administration/operations/rdeBatchDependency/create
Input Payload Details
Create - Object. See list of elements for detail
Sample Input Message
{
"jobName": "RDE_COMPLETION",
"businessDate": "2001-12-31",
"status": "C"
}
Response Code: 200 (Success)
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.
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"
}
]
}
Background Job Configuration Upload Service
The following services are included in this functional area:
-
Get Batch Run Status Services
-
Update Background Job Configuration
Get Batch Run Status Services
Endpoints
/MerchIntegrations/services/administration/operations/batchRunStatus
Functional Area
Administration - Operations
Business Overview
This service returns the current running status of nightly batch. During the nightly batch window, certain REST services may be unavailable either for the entire duration or for a portion of the night, especially when inventory or costing batch flows are in progress. This API enables clients to monitor the status of batch processes, allowing them to optimize their service calls by pausing or resuming dependent REST services accordingly.
Service Type
GET
ReST URL
/MerchIntegrations/services/administration/operations/batchRunStatus
Response Code: 200 (Success)
Table 5-62 BatchStatus - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| batchRunningInd | Yes | String | This feld indicates if Nightly batch jobs are running. It is set to ‘Y’ at the beginning of the RMS nightly batch cycle and set to ‘N’ at the end of the cycle. |
| inventoryBatchRunnin gInd | Yes | String | This feld indicates whether inventory batch jobs are running. Valid values are Y or N. |
| costingBatchRunningI nd | Yes | String | This feld indicates whether costing batch jobs are running. Valid values are Y or N. |
| batchStartWarningInd | Yes | String | Indicates whether the nightly batch is about to start, allowing clients to pause operations that are not permitted during the batch window. Valid values are Y or N. |
Sample Response Message
{
"batchRunningInd": "Y",
"inventoryBatchRunningInd": "N",
"costingBatchRunningInd": "N",
"batchStartWarningInd": "N"
}
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.
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"
}
]
}
Update Background Job Configuration
This section describes the Background Process Configuration.
Business Overview
This service is used to update the configuration for each background jobs in Merchandising.
Service Type
Post
ReST URL
processes/update/process_config/execution
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| JobName | Yes | Job Name |
| numThreads | No | Maximum number of threads the job will execute |
| numDataToProcess | No | Number of records a jobs will process each run. |
| commitMaxCtr | No | Max number of records processed before a commit is issued. |
| archiveInd | No | This field will be used to determine if associated tables for this job needs to be archived to history or not. |
Output
N/A
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| B8D_PROCESS_CONFIG | No | No | Yes | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
BI Publisher Report URL Download Service
The following services are included in this functional area:
- Get BI Publisher Report URL
Get BI Publisher Report URL
Functional Area
Administration - Operations
Business Overview
This service is used by Oracle Retail Financial Integration (RFI) to retrieve the URL of a BI Publisher report from Merchandising or Sales Audit that can be invoked from the PeopleSoft
Financials General Ledger based on a particular journal entry. The report URL that will be returned will be different based on the ID sent in the service call. Based on that ID, Merchandising will determine if it was a Merchandising, Sales Audit, or Invoice Matching ID and return a URL for the appropriate report.
The possible reports for Merchandising and Sales Audit are:
-
GL Fixed Deal Data Report
-
GL Item level Data Report
-
GL Item Rollup Daily Data Report
-
GL Item Rollup Monthly Data Report
-
GL Sales Audit Data Report
Also, for Invoice Matching, one of the following reports might be returned:
-
Merchandise Invoice Document Report
-
Non-Merchandise Invoice Document Report
-
Credit Note Document Report
-
Credit Memo Cost Document Report
-
Credit Memo Quantity Document Report
-
Debit Memo Cost Document Report
-
Debit Memo Quantity Document Report
-
Debit Memo VAT Document Report
-
Receipt Write Off Document Report
For cloud service implementations, this configuration should be done if you are working with PeopleSoft Financials. For on premise implementations, you may need to configure this in the RETAIL_SERVICE_REPORT_URL table. For cloud service implementations, this configuration can be done by the Oracle Cloud Operations team.
The report is similar functionality to the Drill Forward and Drill Back functionality available in the Merchandising Transaction Data and Fixed Deal pages and the Sales Audit General Ledger Transaction page. See also Get Drill Back Forward URL Service for more on the APIs that support this functionality.
Service Type
POST
ReST URL
MerchIntegrations/services/administration/operations/biPublisherReport/url/get
Input Payload Details
Table 5-63 Get - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| reportReferenceKey | Yes | String (32) | Holds the unique reference trace ID that is used to match to the report URL. |
Sample Input Message
{
"reportReferenceKey": "String"
}
Response Code: 200 (Success)
Table 5-64 GetResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| reportReferenceKey | Yes | String (32) | Holds the unique reference trace ID that is used to match to the report URL. |
| reportUrl | Yes | String (256) | Contains the report URL with parameters for fnancial integration. |
Sample Response Message
{
"reportReferenceKey": "String",
"reportUrl": "String"
}
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"
]
}
Calendar Download Service
The following services are included in this functional area:
- Get 4-5-4 Calendar
Get 4-5-4 Calendar
Endpoints
/MerchIntegrations/services/administration/operations/calendar
Functional Area
Administration – Operations
Business Overview
This service retrieves 4-5-4 calendar details. This service takes an optional query parameter of year to retrieve details for that year
Service Type
GET
ReST URL
MerchIntegrations/services/administration/operations/calendar
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| year | No | String (4) | Year |
Response Code: 200 (Success)
Table 5-65 Calendar - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| year | Yes | Number | Contains the year. The 4-5-4 year begins on the frst day of the frst 4-5-4 month regardless of when the calendar year begins. |
| month | Yes | Number | Contains the number ranging from 1 to 12 which indicates the 4-5-4 month. |
| noOfWeeks | Yes | Number | Indicates whether there are 4 or 5 calendar weeks in the 4-5-4 month. |
| frstDay | Yes | date | Contains the frst day of the 4-5-4 month in YYYY-MM-DD format |
Sample Response Message
[
{
"year": 2020,
"month": 2,
"noOfWeeks": 4,
"firstDay": "2001-12-31"
}
]
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.
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"
}
]
}
Codes and Descriptions Download Service
The following services are included in this functional area:
-
Get Codes and Descriptions
-
Get Codes and Descriptions for All or Provided Code Type
Get Codes and Descriptions
Business Overview
Code Detail service allows user to retrieve code details for a selected code and code type.
Service Type
GET
ReST URL
CodeDetail/codeDetails?code={ }&codeType={ }
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| Code | Yes | Code | NA |
| Code Type | Yes | Code Type | NA |
Output
RestCodeDetailRecRDO
Parameter Name Data Type codeDesc String requiredInd String codeSeq BigDecimal codeType String codeTypeDesc String code String
JSON Structure
{
"codeDesc": null,
"requiredInd": null,
"codeSeq": null,
"codeType": null,
"codeTypeDesc": null,
"code": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| CODE_HEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Get Codes and Descriptions for All or Provided Code Type
Endpoints
/MerchIntegrations/services/administration/operations/codes
Functional Area
Administration – Operations
Business Overview
This service returns full dataset of code and code detail. This service supports pagination and the page size of each response is controlled by the query paramter ‘limit’. This service optionally takes code type as input for returning back the code details for a single code type.
Table 5-66 Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | String (6) | Pagination limit. Default value is 1000. |
Table 5-66 (Cont.) Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| offsetkey | No | String | Offset key (Code Type) |
| codeType | No | String | Code Type |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Service Type
GET
ReST URL
MerchIntegrations/services/administration/operations/codes
Input Payload Details
Table 5-67 Input Parameters for MerchIntegrations/services/administration/operations/ codes
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| offsetkey | No | String | Offset Key. Valid Value is code type |
| limit | No | Number | Pagination limit. Default Value is 1000. |
| codeType | No | String | Code Type. Searches for a specifc code type |
Response Code: 200 (Success)
Table 5-68 PageResultItemsCode - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
Table 5-68 (Cont.) PageResultItemsCode - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-69 Code - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| codeType | No | String | This feld contains the code type which will serve as a grouping mechanism for the multiple codes. |
| description | No | String | This feld will contain the description of the code type. |
| details | No | Collection of Object | List of Code against this codeType |
Table 5-70 CodeDetail - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| code | No | String (6) | This feld contains the code used in the application. |
| codeDescription | No | String | This feld contains the description associated with the code and code type. |
| sequence | No | String | This is a number used to order the elements so that they appear consistently when using to populate a list or display in user interface. |
| usedInd | No | String | Indicate if the code is in use or not. Records set to N will not display as possible options for users. |
Table 5-71 LinkItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-71 (Cont.) LinkItem - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetches and contains the offsetkey which unique identifies the last record of this response. Sample Response Message { "items": [ { "codeType": "LOC", "description": "Location Types", "details": [ { "code": "S", "codeDescription": "Store", "sequence": "1", "usedInd": "Y" } ] } ], "hasMore": true, "limit": 1, "count": 1, "links": [ { "href": "https://<server>:<port>/Application/services/resources?limit=1000", "rel": "self" } ] }
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| CODE_HEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
External Reference Service
The following services are included in this functional area:
- Manage External Cross Reference Identifier
Manage External Cross Reference Identifier
Functional Area
Administration - Operations
Business Overview
This is a helper service to bulk update external reference id column of few selected tables that can be used during migration activity, like financial integration migration. This only supports the following entities - Supplier, Partner, Payment Terms, Freight Terms, Organization Unit, Language and State. This service allows the client to publish Merchandising internal entity id, optional additional sub-idenfier key, and its corresponding external reference id and this service will update the column external_ref_id column in the table. This service does basic validation that the merchandising entity id is valid and exists in the corresponding table. For the external reference id field, there is no validation and it expects the caller to pass in the correct value. If the external reference id is left blank in the request, it will be nulled out in the table.
Service Type
PUT
ReST URL
MerchIntegrations/services/administration/operations/externalCrossReference/
manage
Input Payload Details
Manage - Object. See list of elements for detail
Items - Object. See list of elements for detail
ManageError - Object. See list of elements for detail
Response Code: 200 (Success)
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.
ManageError - Object. See list of elements for detail
POM End of Week Signal Download Service
The following services are included in this functional area:
- Get POM End of Week Signal Detail
Get POM End of Week Signal Detail
Business Overview
This service is used to determine whether the Vdate is an End of Week Date or Not.
If Vdate is at EOW, it returns ‘Y’, else ‘N’.
Service Type
Get
ReST URL
EowRunSignal/EowRunSignalDetail
Input Parameters
N/A
Output
RestEowRDO
| Parameter Name | Data Type |
|---|---|
| eow | Char(‘Y’ or ‘N’) |
JSON Structure
{
"eow": "N",
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| PERIOD | Yes | No | No | No |
| SYSTEM_VARIABLES | Yes | No | No | No |
Service Status Download Service
Get ReST Service Status
Functional Area
Administration - Operations
Business Overview
This service allows the querying of the status of ReST web service call using an X-CorrelationID. The correlation id that was included in the request HTTP header can be used as the input, or if one was not passed one in the original request, the one from the response HTTP header can be used as the input. This service will return all the entries in service_metrics table against that correlation ID. The response support pagination and if there are multiple pages of response, use the next link to call subsequent pages. This service additionally checks the input correlation ID against the request_id field to handle the scenario where the x_correlation_id is null in the service_metrics table because it was not included in request HTTP header.
An additional query parameter of includePayload, supports a value of yes (‘Y’) or no (‘N’) can be used to retrieve the request and response payload for that request. In the case of a service error (response code of 300 or greater) the response payload will be included irrespective of includePayload parameter.
Service Metrics
Merchandising ReST Service framework keeps a log of every service call in the service_metrics table. When the service request is received at the application server, it makes an entry to service_metrics table using a unique request ID and the time of the call. Once the service request has been processed and the response is ready to be served back, the
application server updates the service metrics table to capture the run time and response code.
The application server optionally saves the payload in service_payload table. The payloads are only captured for POST, PUT or DELETE service calls. The payload for GET service calls are captured if service call had an error (response code is 300 or greater) or while running in debugging mode.
The service metrics and payload entry are held for short period and get purged after configurable (default 3 months) purge window.
X-Correlation-ID
Merchandising ReST Service framework supports a custom HTTP Header named as X- Correlation-ID and it is recommended to include this in every ReST web service call for traceability purpose.
The request X-Correlation-ID is copied and is returned in the Response HTTP Header X- Correlation-ID field. This is also captured in the service_metrics table against that request.
In the case where, X-Correlation-ID was not included in the request header, the internally generated unique request ID is populated in the Response HTTP Header X-Correlation-ID field. The response X-Correlation-ID should be logged if one is not passed in the request.
It is recommended that a unique X-Correlation-ID is always passed as part of every request (including retry) to trace each unique call. The validation for unique value is not enforced.
A log of X-Correlation-IDs should be maintained for traceability purpose and troubleshooting exceptions.
Service Metrics
-
Merchandising ReST Service framework keeps a log of every service call in the service_metrics table. When the service request is received at the application server, it makes an entry to service_metrics table using a unique request ID and the time of the call. Once the service request has been processed and the response is ready to be served back, the application server updates the service metrics table to capture the run time and response code.
-
The application server optionally saves the payload in service_payload table. The payloads are only captured for POST, PUT or DELETE service calls. The payload for GET service calls are captured if service call had an error (response code is 300 or greater) or while running in debugging mode.
-
The service metrics and payload entry are held for short period and get purged after configurable (default 3 months) purge window.
X-Correlation-ID
-
Merchandising ReST Service framework supports a custom HTTP Header named as X- Correlation-ID and it is recommended to include this in every ReST web service call for traceability purpose.
-
The request X-Correlation-ID is copied and is returned in the Response HTTP Header X- Correlation-ID field. This is also captured in the service_metrics table against that request.
-
In the case where, X-Correlation-ID was not included in the request header, the internally generated unique request ID is populated in the Response HTTP Header X-Correlation-ID field. The response X-Correlation-ID should be logged if one is not passed in the request.
-
It is recommended that a unique X-Correlation-ID is always passed as part of every request (including retry) to trace each unique call. The validation for unique value is not enforced.
-
A log of X-Correlation-IDs should be maintained for traceability purpose and troubleshooting exceptions.
Service Type
GET
ReST URL
MerchIntegrations/services/administration/operations/restService/status
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| xCorrelationId | Yes | String | X-Correlation-ID |
| includePayload | No | String | Include Payload Y/N. Default value is N. |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| offsetkey | No | String | Offset key |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Response Code: 200 (Success)
Table 5-72 PageResultItemsServiceMetrics - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-73 ServiceMetrics - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| requestId | Yes | String (36) | This feld contains unique Request id. |
| xCorrelationId | No | String (36) | This feld contains the X-Correlation_ID in the response http header. If the client passed a X- Correlation_ID in the request HTTP Header, the same is returned or else a generated UUID (captured in request_id) is returned back |
| method | Yes | String (10) | Contains the HTTP Method like GET, PUT, POST, DELETE. |
| path | Yes | String (255) | Contains the Rest Service path. |
| responseCode | No | String (10) | This feld contains the HTTP Code for the response. This will hold a value after the server processed the request and responded. Example 200, 400, 500 |
| requestTimestamp | Yes | dateTime | This feld hold the timestamp in UTC when the request was received by the server. |
| responseTimestamp | No | dateTime | This feld hold the timestamp in UTC when the request processing completes and server is ready to transmit the response back. |
| durationMillisecond | No | Number | This feld contains the millisecond to process the request. This is populated after server completes the request. |
| requestSizeByte | No | Number | This feld contains the bytes in request payload. |
| responseSizeByte | No | Number | This feld contains the bytes in the response payload. This is populated after server completes the request. |
Table 5-73 (Cont.) ServiceMetrics - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| clientName | Yes | String (255) | This feld contains the oAuth Client name used to make the request |
| serviceUrl | Yes | String (2000) | This feld the complete path for the service call |
| requestPayload | No | String | This feld contains the request payload if query parameter of includePayload is set to Y. |
| responsePayload | No | String | This feld contains the response payload if query parameter of includePayload is set to Y or there was an exception in the request and the response code is 300 or greater. |
Table 5-74 LinkItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetches and contains the offsetkey which unique identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"requestId": "6ccc5287-a078-4aae-b697-9ade58d70bd1",
"xCorrelationId": "034b9672-4818-40b4-916d-210a21e0de84",
"method": "POST",
"path": "/MerchIntegrations/services/foundation/item",
"responseCode": "200",
"requestTimestamp": "2001-12-31T23:59:59.000Z",
"responseTimestamp": "2001-12-31T23:59:59.000Z",
"durationMillisecond": 450,
"requestSizeByte": 720,
"responseSizeByte": 18240,
"clientName": "xocs_client",
"serviceUrl": "https://<server>/MerchIntegrations/services/administration/
operations/service/status?xCorrelationId=36c6b984-8e16-4efb-
b73f-5984357c1d72",
"requestPayload": "{}",
"responsePayload": "{}"
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?limit=1000",
"rel": "self"
}
]
}
Virtual Date Download Service
The following services are included in this functional area:
-
Get Current Virtual Date in Date Format
-
Get Current Virtual Date in Long and Date Format
Get Current Virtual Date in Date Format
Business Overview
Deprecated in v23.1.401.0: Scheduled for Removal in 2 Years. Use RmsReSTServices/ services/private/Common/vDate
This service retrieves the Merchandising virtual business date (vdate).
Service Type
GET
ReST URL
Vdate/vdateDetail
Input Parameters
N/A
Output
Table 5-75 RestVdateRecRDO
| Parameter Name | Data Type |
|---|---|
| vdate | Date |
JSON Structure
[
{
"vdate": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
]
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| PERIOD | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYL OAD | No | Yes | No | No |
Get Current Virtual Date in Long and Date Format
Business Overview
Retrieve Merchandising Vdate.
Service Type
GET
ReST URL
/Common/vDate
Input Parameters
N/A
Output
Table 5-76 Vdate in Long and Date Format
| Parameter Name | Data Type |
|---|---|
| Vdate | Long |
| Vdate | Date |
JSON Structure
{
"vdateDisplay": "01-Jul-2019",
"vdate": 1561939200000,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| PERIOD | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Webhook Configuration Download Service
Get Webhook Configuration and Status
Functional Area
Administration - Operations
Business Overview
This service retrieves the configured Webhook Listeners and any unused credential names. The response contains three types of information:
-
Webhook Configurations : Provides details about the current webhook configuration, including the listener URL and interval seconds. This information is retrieved from the webhook_config table.
-
Current Status : Indicates the current status of the webhook, including the since timestamp to be used in the next call and an estimate of when the next heartbeat or polling process will be triggered. If the most recent heartbeat encountered a failure, the error message will be included. This information is retrieved from the webhook_status table.
-
Metrics Summary for today and yesterday : Included only if the query parameter includeMetrics is set to Y. The metrics summary is at day level and is limited to the current day (starting from midnight GMT) and yesterday (GMT timezone) and provides total counts of webhook calls and heartbeats triggered on the day, along with the number of successful calls. It additionally contains detailed activity log message of the last webhook and heartbeat processes executed for the day to assist with troubleshooting if webhook publish is unsuccessful. This data is retrieved from the webhook_metrics table. Note: The number of rows in this table can grow very large over time and fetching the metrics summary will be a performance-intensive operation and service may take additional time compared to a call with includeMetrics = N.
Service Type
GET
ReST URL
MerchIntegrations/services/administration/operations/webhooks
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| offsetkey | No | String | Offset key |
| service | No | String | Service |
| includeMetrics | No | String | Include metrics summary for last two day - Y/N. Default N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Response Code: 200 (Success)
Table 5-77 PageResultItemsWebhookConfig - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-78 WebhookConfig - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| credentialName | Yes | String (100) | This feld contains the Credential name. |
| credentialType | Yes | String (30) | This feld contains the Credential type. |
| service | No | String (100) | This feld contains the service name. |
Table 5-78 (Cont.) WebhookConfig - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| listenerUrl | No | String (255) | This feld contains the listener URL. |
| enabled | No | String (1) | This feld indicates if the service is enabled. Default is ‘Y’. |
| intervalSeconds | No | Number | This feld contains the frequency in seconds webhook will poll for new events. Default is 900 seconds. |
| includePayload | No | String (1) | This feld indicates if data should be included in the webhook call. Default is ‘N’. |
| pageLimit | No | Number | This feld contains the number of record within a payload during pagination and is used to control the message size. Default is 1000. |
| queryParameter | No | String | This feld contains the confgured query parameter (include or exclude) for this api. |
| heartbeatIntervalHour s | No | Number | This feld frequency in hours on which heartbeat will be pinged to listener. Default is 6 hours. |
| sinceTimestamp | No | dateTime | This feld hold the confgured since- timestamp for this API. |
| status | No | Object | This node hold the current status of the webhook for reference |
Table 5-78 (Cont.) WebhookConfig - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| metrics | No | Collection of Object | This will be only populated if query parameter includeMetrics is Y. This node hold the summary view of webhook activities at day level since midnight (UTC) yesterday and can hold upto two entries - one for today and one for yesterday. The record for today or yesterday is populated only if some webhook or heartbeat activity happened for the day. |
Table 5-79 Status - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nextPollTime | No | dateTime | This feld holds the timestamp when the next internal polling to check for delta change is due. |
| nextPollSinceTimesta mp | No | dateTime | This feld holds the since-timestamp that will be used in the next internal poll. This feld is updated after every successful publish and holds the pointer of the last successful publish. |
| nextPollOffsetKey | No | String | This feld holds a value only when multi-page publish is in progress. During a multi-page publish, this helps to identify the key of the last record of the last page published. After the last page is published, it is reset to blank. |
Table 5-79 (Cont.) Status - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nextHeartbeatTime | No | dateTime | This feld holds the timestamp when the heartbeat is due. One the heartbeat is due, before any subsequent webhook publish, an heartbeat will be fred. |
| heartbeatError | No | String | This feld will hold the error message if the previous heartbeat was a failure. |
Table 5-80 Metrics - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| date | No | dateTime | This feld holds either today or yesterday date for which the subsequent metrics information is applicable. |
| count | No | Number | This feld contains the number of calls (excluding heartbeat) made to the listener for the date |
| countSuccess | No | Number | This feld contains the number of successful calls (excluding heartbeat) made to the listener for the date |
| lastPublishTime | No | dateTime | This feld holds the timestamp when the webhook engine initiated the last publish for the date. |
| lastPublishActivityLog | No | String | This feld holds the log messages when the webhook engine initiated the last publish call for the date. |
| countHeartbeat | No | Number | This feld contains the number of heartbeat calls made to the listener for the date |
| countSuccessHeartbea t | No | Number | This feld contains the number of successful heartbeat calls made to the listener for the date |
Table 5-80 (Cont.) Metrics - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| lastHeartbeatTime | No | dateTime | This feld holds the timestamp when the webhook engine initiated the last heartbeat call for the date. |
| lastHeartbeatActivityL og | No | String | This feld holds the log messages when the webhook engine initiated the last heartbeat call for the date. |
Table 5-81 LinkItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetches and contains the offsetkey which unique identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"credentialName": "APP_DEV1",
"credentialType": "OAUTH",
"service": "foundation/item",
"listenerUrl": "https://apigateway.myretailer.com/webhook/mfcs/item",
"enabled": "Y",
"intervalSeconds": 900,
"includePayload": "N",
"pageLimit": 1000,
"queryParameter": "include=items.item,items.status",
"heartbeatIntervalHours": 6,
"sinceTimestamp": "2001-12-31T23:59:59.000Z",
"status": {
"nextPollTime": "2001-12-31T23:59:59.000Z",
"nextPollSinceTimestamp": "2001-12-31T23:59:59.000Z",
"nextPollOffsetKey": null,
"nextHeartbeatTime": "2001-12-31T23:59:59.000Z",
"heartbeatError": null
},
"metrics": [
{
"date": "2001-12-31T23:59:59.000Z",
"count": 7,
"countSuccess": 6,
"lastPublishTime": "2001-12-31T23:59:59.000Z",
"lastPublishActivityLog": "<Timestamp>: Calling url for payload...",
"countHeartbeat": 3,
"countSuccessHeartbeat": 3,
"lastHeartbeatTime": "2001-12-31T23:59:59.000Z",
"lastHeartbeatActivityLog": "<Timestamp>: Calling url for heartbeat..."
}
]
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?limit=1000",
"rel": "self"
}
]
}
Webhook Configuration Upload Service
Manage Webhook Credential
Functional Area
Administration - Operations
Business Overview
This service maintains credentials for the Webhooks listener and allows for setting up new credentials, along with updating or deleting existing credentials. Credentials must be set up in advance of webhook listener setup. A credential cannot be deleted if it is attached to a listener.
The credentials are securely stored in OCI S3. The supported credentials are Basic Auth, oAuth2 (Client Credentials) and API key (Request Parameter - X-API-Key ). Based on the type of credential, the corresponding field should be provided. In case of oAuth, the URL to retrieve the oAuth token should be allowlisted and should have a publicly trusted SSL/TLS certificate.
Service Type
PUT
ReST URL
MerchIntegrations/services/administration/operations/webhook/credential/manage
Input Payload Details
Table 5-82 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| credentialName | Yes | String (100) | Unique Credential name for storing credential details for webhook listener endpoint. |
| credentialType | No | String (30) | Type of credential supported by listener. Valid options are OAUTH, BASICAUTH or APIKEY |
| username | No | String (100) | Contains the username for basic auth credential |
| password | No | String (100) | Contains the password for basic auth credential |
| apikey | No | String (2000) | Contains apikey. API Key will be passed in Request Parameter X-API-Key |
| oauthClientId | No | String (255) | Contains the client id for Oauth - Client Credential authentication |
| oauthClientSecret | No | String (255) | Contains the client secret for Oauth - Client Credential authentication |
| oauthTokenUrl | No | String (255) | Contains the oAuth Token URL for Oauth - Client Credential authentication |
| oauthScope | No | String (255) | Contains the scope for Oauth - Client Credential authentication. Scope is optional. |
| heartbeatIntervalHours | No | Number (2) | Controls the frequency in which heartbeat will be published to the listener URL |
| deleteInd | No | String (1) | Pass a value of Y to delete the credential. To delete a credential, none of the listener should be using this credential. Supported values as Y or N. The default if left blank is N. |
Sample Input Message
{
"credentialName": "APP_DEV1",
"credentialType": "OAUTH",
"username": "",
"password": "",
"apikey": "",
"oauthClientId": "oracle_mfcs_client_dev1",
"oauthClientSecret": "6c2c0acb-88a1-4067-865b-5eb75b2989c3",
"oauthTokenUrl": "https://iam-6c2c0acb.iamprovider.com:443/oauth2/v1/token",
"oauthScope": "mfcs-webhook-dev1",
"deleteInd": ""
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Create record was successful"
}
Response Code: 400 (Error)
In case of error, the following standard error response will be returned. The element validationErrors is present when the input payload or input parameters do not match the schema definition for this service.
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"
}
]
}
Manage Webhooks
Functional Area
Administration - Operations
Business Overview
This service is used to register and manage webhook listeners. To register a listener, the credential for the listener should be set up first using the Manage Webhook Credential service.
Webhook Overview
The listener URL should be an allowlisted https ReST endpoint supporting THE POST method and having publicly trusted SSL/TLS certificate. a Webhook can be configured for THE Publish API and THE name of the service should match with the value in THE merchapi_name column from the merchapi_config table. Once a webhook is successfully registered, it is added to the server threadpool after a short interval and, thereafter, runs based on the configured interval.
Three types of publish are available:
-
HEARTBEAT - The frequency (in hours) of this can be defined using the field
heartbeatIntervalHours. A ping call is made to the listener endpoint to validate the connectivity, credential, and to ensure that the webhook server is up and running. If the heartbeat call fails, the webhook call with the event or payload is put on hold until the heartbeat connectivity is established. Once the heartbeat connectivity is established, the event or payload publish starts. -
EVENT - A webhook call of type Event indicates to the listener that there are one or more functional data packets that have been created or updated since the last webhook call, and the listener should poll the Publish API to publish the change. A webhook of type Event is
the default webhook configuration and should be the preferred configuration to keep the data traffic through the webhook to a minimum. If the field includePayload is left blank or is set to N , this indicates that the webhook is configured for event publishing.
- PAYLOAD - A webhook of type Payload includes the data as part of the webhook publish. The data is published in JSON format and is enclosed in the attribute named
payload. To enable payload publish, set the value ofincludePayloadtoY. The payload supports pagination to keep the individual message size in control. Use the fieldpageLimitto define the number of records included in the call. IfpageLimitis not defined, it is set to 1000. For a payload publish, the server posts each subsequent page immediately upon receiving the success response from the client for the previous page.
The processing of a webhook is asynchronous. Using a background micro batch engine, the webhook server checks for new events in merchapi json tables for changes. The frequency at which the server polls the merchapi json table is configured using the field intervalSeconds . Every
To keep track of the records that have been published, and have the subsequent webhook publish only include the newer records since the last call, the timestamp of the webhook pool is persisted by the server and is named the since timestamp . When the webhook is registered for the first time, the since timestamp is defaulted to Unix time zero (1970) unless a since timestamp was provided as part of the registration. The server polls the json table to check for newer entries having timestamp greater than since timestamp.
-
For a webhook of type Event, the
since timestampis included in the publish to inform the listener that there are records having a timestamp greater than thesince timestampand they should poll the Publish API using a query parameter ofsince timestamp. -
For a webhook of type Payload, the server internally calls the Publish API with the
since timestampand usingbeforeas the current server time and the configured pagination limit. The server redirects the response from the Publish API to the webhook listener. Depending on the number of records and the pagination size, more than one call can be made to the listener URL. Once the last page is published, the server replaces thesince timestampwith the server time when the first poll is performed. Subsequent polling uses the new since timestamp to check for newer entries. -
If there are no new entries, the value of
since timestampis not changed and this value can be seen as a the timestamp when the last publish of type Event or Payload was made.
The since timestamp is available as part of webhook configuration and this can be updated for existing webhooks. This can be useful to request a full download or to replay all changes since, for example, last week for data corruption scenarios.
Enable/Disable The flag Enabled takes a value of Y or N , and can be used to activate or deactivate a webhook. If the webhook is disabled, it pauses all polls and even heartbeat calls to the listener. Once the webhook is enabled, it starts polling using the since timestamp of the last publish.
Query Parameter This optional field enables Dynamic Payload Filtering, allowing clients to fetch selective fields or exclude fields based on the listener application’s needs. Several webhook-supported APIs accept a query parameter of include or exclude , with values representing JSON field names using dot notation (for example,
include=items.item,items.status,itemDescription ). When provided, this query parameter is appended to the internal service call URL when fetching the payload. The only supported query parameters through webhooks are include and exclude , and it is recommended to test the query parameter values before configuring them in a webhook.
Update Webhook Configuration
To update the configuration of a webhook listener, include the fields that need to be updated and their values will be replaced. The fields left blank will not be changed. A configuration change can have an impact on the current publish process (multi-page payload publish).
-
Listener URL change will be applied immediately. A change of listener causes a heartbeat to be fired and, once the heartbeat is successful, subsequent calls are published to the new URL. If the change happened in between pagination publishes, the remaining pages are published to the new URL. A listener change is a major change and, if the intention for the new listener URL is to get the entire dataset or to start with a particular date and time, adjust the
since timestampaccordingly to get the complete/required payload. -
A change of credential takes effect immediately. A change of credential causes a heartbeat check to be fired before the next event or payload publish.
-
Since Timestamp change is applied immediately. This will terminate any in-progress pagination call and publish will restart with the new since timestamp.
-
Page limit change takes effect immediately for the subsequent page publish. In case of an in-progress pagination publish, the remaining pages publish happens with the new page limit.
-
Interval second change takes effect a few minutes after the webhook engine syncs up with update configuration.
-
Disable webhook - This takes effect immediately and may pause a pagination call in between. The remaining pagination pages are published when the webhook is enabled. Enabling of the webhook takes few minutes for the server engine to include this webhook in its thread pool.
-
A change of heartbeat interval hour takes effect after the next heartbeat is fired.
-
IncludePayload - This change takes effect immediately and stops any pagination call. It uses the currently active since timestamp to check for changes, unless the
since timestampwas also updated as part of the update request. -
Query Parameter change will take into effect immediately for the subsequent page publish. To remove a previously set query parameter, provide blank spaces.
Delete Webhook
To delete a registered webhook, set the flag deleteInd to Y . That immediately stops subsequent calls and purges all configurations for the webhook.
Service Type
PUT
ReST URL
MerchIntegrations/services/administration/operations/webhooks/manage
Input Payload Details
Table 5-83 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection | References a collection of webhook |
| of Object | listeners |
Table 5-84 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| service | Yes | String (100) | Service name for which webhook listener has to be confgured. The service name should match with merchapi_name in merchapi_confg table. On the api’s having the json_table column populated are eligible for webhook. |
| credentialName | No | String (100) | Registered credential name that was setup using the Manage Webhook Credential service. For update, this can be left blank. |
| listenerUrl | No | String (255) | A whitelisted listener endpoint which is running a post service to consume the webhook call and returns 200 for success. |
| includePayload | No | String (1) | Indicates if the webhook publish will contain the data or just the event. Takes a value of Y or N. A value of blank is defaulted to N during initail registration. In case of update of already registered webhook, leave it blank to keep the value unchanged. |
| intervalSeconds | No | Number (6) | Defnes the polling seconds for the webhook server to poll to json table for new events. This value is in seconds. |
| pageLimit | No | Number (6) | If the webhook is registered to include payload, this defnes the maximum number of records in one publish call. If the number of records to be published are greater than page limit, additional pagination call will be made to publish the entire data set. Default value is 1000. |
| sinceTimestamp | No | date-time | Allows the listener to defne if the publish should include events that happens after a particular time. This also allows for replaying already published daata/event by setting this to a earlier time. |
| enabled | No | String (1) | Takes a value of Y (default if null) or N. If the webhook is disabled, it will pause polling and publish of webhook (inlcuding heartbeat) |
| heartbeatIntervalHours | No | Number (2) | Controls the frequency in which heartbeat will be published to the listener URL |
| deleteInd | No | String (1) | Use this to delete an existing listener by setting the value as Y. the default if left blank is N. |
Table 5-84 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| queryParameter | No | String (2000) | This feld can be used to apply API- supported query parameter of includeor excludewhen an internal service isinvoked to fetch a payload. It is highly recommended to test the query parameter by calling the GET APIs to avoid unexpected errors at runtime. To remove an earlier provided query paramter value, submit the value with an empty space. |
Table 5-85 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| service | Yes | String (100) | Service name for which the registration failed |
| errorMessage | Yes | String (2000) | Error message |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"service": "foundation/item",
"credentialName": "APP_DEV1",
"listenerUrl": "https://apigateway.myretailer.com/webhook/mfcs/item",
"includePayload": null,
"intervalSeconds": 900,
"pageLimit": 1000,
"sinceTimestamp": "2001-12-31T23:59:59.123Z",
"enabled": null,
"heartbeatIntervalHours": 6,
"deleteInd": null,
"queryParameter": "include\u003ditems.item,items.status"
}
]
}
Response Code: 200 (Success) 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 do not match the schema definition for this service. The element businessError will be present if the payload passes schema validation but an exception is caught while processing the business logic.
Table 5-86 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| service | Yes | String (100) | Service name for which the |
| registration failed | |||
| errorMessage | Yes | String (2000) | Error message |
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": [
{
"service": "foundation/items/manage",
"errorMessage": "Invalid API"
}
]
}
System Options
The following services are included in this functional area:
-
System Options Download Service
-
Get Functional System Options
-
Get Inventory Movement System Options
-
-
Get Procurement System Options
System Options Download Service
The following services are included in this functional area:
-
Get Functional System Options
-
Get Inventory Movement System Options
-
Get Procurement System Options
Get Functional System Options
Business Overview
Retrieve Merchandising’s Functional Config Options.
Service Type
GET
ReST URL
/Common/FuncSysOps
Input Parameters
N/A
Output
Table 5-87 FunctionalConfigRDO
| Parameter Name | Data Type |
|---|---|
| importInd | String |
| orgUnitInd | String |
| supplierSitesInd | String |
| contractInd | String |
| elcInd | String |
| JS | ON Structure: |
|---|---|
"{ | |
""links"": [], | |
""importInd"": ""Y"", | |
""orgUnitInd"": ""Y"", | |
""supplierSitesInd"": ""Y"", | |
""contractInd"": ""Y"", | |
""elcInd"": ""Y"", | |
""hyperMediaContent"": { | |
""linkRDO"": []} |
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| FUNCTIONAL_CONFIG_OPTIONS | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Get Inventory Movement System Options
Business Overview
Retrieve Merchandising’s Inventory Movement Unit Options.
Service Type
GET
ReST URL
/Common/InvMovSysOps
Input Parameters
N/A
Output
Table 5-88 InvMoveUnitOptRDO
| Parameter Name | Data Type |
|---|---|
| allocMethod | String |
| applyProfPresStock | String |
| autoRcvStore | String |
| closeOpenShipDays | BigDecimal |
| costMoney | BigDecimal |
| costOutStorage | BigDecimal |
| costOutStorageMeas | String |
| costOutStorageUom | String |
| costWhStorage | BigDecimal |
| costWhStorageMeas | String |
| costWhStorageUom | String |
| defaultAllocChrgInd | String |
| defaultOrderType | String |
| defaultSizeProfle | String |
| deptLevelTransfers | String |
| distributionRule | String |
| duplicateReceivingInd | String |
| increaseTsfQtyInd | String |
| intercompanyTransferBasis | String |
| invHistLevel | String |
| locActivityInd | String |
| locDlvryInd | String |
| lookAheadDays | BigDecimal |
| maxWeeksSupply | BigDecimal |
| ordWorksheetCleanUpDelay | BigDecimal |
| racRtvTsfInd | BigDecimal |
| rejectStoreOrdInd | String |
| replOrderDays | String |
| rtvNadLeadTime | BigDecimal |
| rtvUnitCostInd | BigDecimal |
| shipRcvStore | String |
| shipRcvWh | String |
| storageType | String |
| storePackCompRcvInd | String |
| wfDefaultWh | String |
| targetRoi | BigDecimal |
| tsfAutoCloseStore | BigDecimal |
Table 5-88 (Cont.) InvMoveUnitOptRDO
| Parameter Name | Data Type |
|---|---|
| tsfAutoCloseWh | String |
| tsfCloseOverdue | String |
| simForceCloseInd | String |
| tsfForceCloseInd | String |
| tsfOverReceiptInd | String |
| tsfMdStoreToStoreSndRcv | String |
| tsfMdStoreToWhSndRcv | String |
| tsfMdWhToStoreSndRcv | String |
| tsfMdWhToWhSndRcv | String |
| tsfPriceExceedWacInd | String |
| ssAutoCloseDays | String |
| wsAutoCloseDays | BigDecimal |
| swAutoCloseDays | BigDecimal |
| wwAutoCloseDays | BigDecimal |
| wfOrderLeadDays | BigDecimal |
| whCrossLinkInd | BigDecimal |
| wrongStReceiptInd | String |
JSON Structure:
{
"links": [],
"allocMethod": "P",
"applyProfPresStock": "N",
"autoRcvStore": "Y",
"closeOpenShipDays": 3,
"costMoney": 7.5,
"costOutStorage": 1.5,
"costOutStorageMeas": "P",
"costOutStorageUom": null,
"costWhStorage": 1.5,
"costWhStorageMeas": "P",
"costWhStorageUom": null,
"defaultAllocChrgInd": "Y",
"defaultOrderType": "WAVE",
"defaultSizeProfile": "N",
"deptLevelTransfers": "Y",
"distributionRule": "PRORAT",
"duplicateReceivingInd": "N",
"increaseTsfQtyInd": "N",
"intercompanyTransferBasis": "T",
"invHistLevel": "A",
"locActivityInd": "Y",
"locDlvryInd": "Y",
"lookAheadDays": 7,
"maxScalingIterations": null,
"maxWeeksSupply": 5,
"ordWorksheetCleanUpDelay": 1,
"racRtvTsfInd": "A",
"rejectStoreOrdInd": "N",
"replOrderDays": 3,
"rtvNadLeadTime": 1,
"rtvUnitCostInd": "A",
"shipRcvStore": "Y",
"shipRcvWh": "Y",
"storageType": "W",
"storePackCompRcvInd": "Y",
"wfDefaultWh": 1212,
"targetRoi": 7,
"tsfAutoCloseStore": "Y",
"tsfAutoCloseWh": "Y",
"tsfCloseOverdue": "Y",
"simForceCloseInd": "NL",
"tsfForceCloseInd": "SL",
"tsfOverReceiptInd": "NL",
"tsfMdStoreToStoreSndRcv": "S",
"tsfMdStoreToWhSndRcv": "S",
"tsfMdWhToStoreSndRcv": "S",
"tsfMdWhToWhSndRcv": "S",
"tsfPriceExceedWacInd": "Y",
"ssAutoCloseDays": 1,
"wsAutoCloseDays": 1,
"swAutoCloseDays": 1,
"wwAutoCloseDays": 1,
"wfOrderLeadDays": null,
"whCrossLinkInd": "Y",
"wrongStReceiptInd": "Y",
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| INV_MOVE_UNIT_OPTIONS | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Get Procurement System Options
Business Overview
Retrieve Merchandising’s Procurement Unit Options.
Service Type
GET
ReST URL
/Common/POSysOps
Input Parameters
N/A
Output
ProcurementUnitOptionsRDO
| Parameter Name | Data Type |
|---|---|
| backpostRcaRuaInd | String |
| calcNegativeIncome | String |
| copyPoCurrRate | String |
| costLevel | String |
| creditMemoLevel | String |
| dealAgePriority | String |
| dealLeadDays | BigDecimal |
| dealTypePriority | String |
| deptLevelOrders | String |
| ediCostOverrideInd | String |
| expiryDelayPreIssue | BigDecimal |
| genConsignmentInvcFreq | String |
| genConInvcItmSupLocInd | String |
| latestShipDays | BigDecimal |
| ordApprCloseDelay | BigDecimal |
| ordApprAmtCode | String |
| ordAutoClosePartRcvdInd | String |
| ordPartRcvdCloseDelay | BigDecimal |
| orderBeforeDays | BigDecimal |
| orderExchInd | String |
| otbSystemInd | String |
| rcvCostAdjType | String |
| reclassApprOrderInd | String |
| redistFactor | BigDecimal |
| softContractInd | String |
| wacRecalcAdjInd | String |
JSON Structure:
{
"links": [],
"backpostRcaRuaInd": "N",
"billToLoc": "1000",
"calcNegativeIncome": "N",
"copyPoCurrRate": null,
"costLevel": "DNN",
"creditMemoLevel": "D",
"dealAgePriority": "O",
"dealLeadDays": 1,
"dealTypePriority": "P",
"deptLevelOrders": "N",
"ediCostOverrideInd": "Y",
"expiryDelayPreIssue": 30,
"genConsignmentInvcFreq": "M",
"genConInvcItmSupLocInd": "I",
"latestShipDays": 30,
"ordApprCloseDelay": 1,
"ordApprAmtCode": "C",
"ordAutoClosePartRcvdInd": "N",
"ordPartRcvdCloseDelay": 1,
"orderBeforeDays": 5,
"orderExchInd": "N",
"otbSystemInd": "N",
"rcvCostAdjType": "F",
"reclassApprOrderInd": "Y",
"redistFactor": 2,
"softContractInd": "Y",
"wacRecalcAdjInd": "N",
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| PROCUREMENT_UNIT_OPTIONS | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Cost
The following services are included in this functional area:
-
Average Cost
-
Average Cost Upload Service
- Update Average Cost
-
-
Cost Changes
-
Cost Change Upload Service
-
Create Cost Change Effective Immediately
-
Manage Cost Changes
-
-
-
Pricing Cost
-
Pricing Cost Download Service
- Get Pricing Cost
-
Average Cost
The following services are included in this functional area:
-
Average Cost Upload Service
- Update Average Cost
Average Cost Upload Service
The following services are included in this functional area:
- Update Average Cost
Update Average Cost
Functional Area
Cost - Average Cost
Business Overview
This service can be used to update the weighted average cost (WAC) from an external system for one or more item/location combinations. It also creates a transaction data record posting with transaction code 70 for the difference in cost, based on the owned inventory at the location at the time the cost change is applied.
The web service can be called with the following details:
-
Item
-
Location
-
Location type
-
New average cost (must be greater than 0)
Service Type
PUT
ReST URL
MerchIntegrations/services/cost/averageCost/update
Input Payload Details
Table 5-89 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of | Collection of items and locations for |
| Object | which weight average cost needs to | ||
| be updated. |
Table 5-90 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Contains the item number for which the average cost has to be updated |
| location | Yes | Number (10) | Store or virtual warehouse location number. |
| locationType | Yes | String (1) | Location Type. Valid values are ‘S’ (store) and ‘W’ (warehouse). |
Table 5-90 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| averageCost | Yes | Number (20,4) | New average cost. |
Sample Input Message
{
"items": [
{
"item": "101450060",
"location": 6000,
"locationType": "S",
"averageCost": 19.50
}
]
}
Response Code: 200 (Success)
Sample Response Message
{ "status": "SUCCESS", "message": "Service call is successful" } 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"
]
}
Cost Changes
The following services are included in this functional area:
-
Cost Change Upload Service
-
Create Cost Change Effective Immediately
-
Manage Cost Changes
-
Cost Change Upload Service
The following services are included in this functional area:
-
Create Cost Change Effective Immediately
-
Manage Cost Changes
Create Cost Change Effective Immediately
Functional Area
Cost - Cost Changes
Business Overview
This service allows external systems to update unit costs within Merchandising. All cost changes that are sent through this service are executed immediately. This service creates both the cost change events with an effective date of the current date, as well as updates unit costs for item/locations that already exist in Merchandising. It does not create or delete item/location relationships in Merchandising. Cost changes can be performed at the item level, or at the following levels of the organization hierarchy - chain, area, region, district or store. Unit costs are updated for all stores within the location group. Warehouses are only impacted by cost changes applied at the warehouse level, since they are not part of the organization hierarchy. Since the user has the flexibility to have child items with the same or different purchase type compared to the parent item, any cost change created at the parent item level will impact only those child items having the same ownership as the parent. Cost changes can be created for individual child items as well.
The service takes in a collection of cost changes and will return success and failure through the service response object. This service validates that all the required fields are provided and also checks the supplier’s currency and the item status. In case differentiator IDs are passed in the message, it verifies that they are valid for the provided item. The service also retrieves the following:
-
Transaction level items, if the passed in item is an item parent.
-
All locations based on the passed in hierarchy type and value, if provided.
-
All item/location combinations where the passed in supplier/country is the primary supplier/ country at an item location.
-
All orderable buyer packs that the passed-in item or its children, if above transaction level.
-
All item/locations on approved (and worksheet) order, if the recalculate order indicator is set to Yes.
This service performs the following actions:
-
Creates a cost change event in the ‘Executed’ status, with the current date set as the effective date.
-
Updates the unit cost in Merchandising for all item/supplier/country and item/supplier/ country/locations based on the information provided.
-
Creates price history records for all item/locations that get updated as part of the cost change.
-
If the recalculate order indicator is set to Yes, it updates all relevant order/item/locations unit cost in Merchandising.
It is important to note that cost changes sent through this service do not include estimated landed costs. The cost updated here is the default purchase cost, before any deals, that will be used for purchase orders created in Merchandising, similar to cost changes initiated in Merchandising.
Service Type
POST
ReST URL
MerchIntegrations/services/cost/costChange/immediate/create
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-91 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | It’s a referenced element. For detailed |
| Object | description, please refer referenced element doc. |
Table 5-92 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The item to which the cost change applies. It can be a parent item, but its item level cannot be greater than its transaction level. This cannot be a buyer pack. |
| supplier | Yes | Number (10) | The ID of the supplier that sources the items the cost change affects. This value must be predefned on the SUPS table. This can be a primary or non- primary supplier. |
| originCountry | Yes | String (3) | The identifer of the origin country of the item supplier to which the cost change will apply. This value must be predefned on the COUNTRIES table. This can be the primary or a non- primary country. |
Table 5-92 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffId | No | String (10) | The identifer for a differentiator. This can be used with a parent or grandparent item. The cost change will explode to all the parent’s transaction level items with the differentiator. This value must be predefned on the DIFF_IDS table. |
| unitCost | Yes | Number (20,4) | The new unit cost of the item in the currency specifed on the message. Tables item_supp_country_loc, item_loc_soh, and ordloc will also be updated with this value, depending on the values in tags hier_level and hier_value. |
| recalculateOrderInd | Yes | String (1) | This feld will indicate if orders in approved status for items on the cost change will be recalculated with the new cost. Valid values will be Y (yes) and N (no). |
| currencyCode | Yes | String (3) | The currency code of the unit cost. This value must be predefned on the currencies table and must be the currency of the supplier. |
| hierarchyLevel | No | String (2) | The hierarchy level of the hierarchy value. This feld will indicate the level of the organizational hierarchy to which the cost change applies. Valid values are CH (chain), AR (area), RE (region), DI (district), S (store), W (warehouse). |
| details | No | Collection of Object | References a collection of hierarchy details |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
| purchaseRate | No | Number (12,4) | This column contains the percentage of the retail price which will determine the cost paid to the supplier for a consignment or concession item. |
Table 5-93 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyValue | Yes | Number (10) | The ID of the specifed hierarchy level which encompasses the locations |
| affected by the cost change. |
Table 5-94 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"items": [
{
"item": "100900006",
"supplier": 2400,
"originCountry": "US",
"diffId": "String",
"unitCost": 9.65,
"recalculateOrderInd": "N",
"currencyCode": "USD",
"hierarchyLevel": "S",
"details": [
{
"hierarchyValue": 1521
}
],
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"purchaseRate": 18.00
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Manage Cost Changes
Functional Area
Cost – Cost Change
Business Overview
This service is used by an external source, usually a supplier, to create and maintain futuredated cost changes in Merchandising. The service accepts a collection of cost changes and returns success or failure through the service response object. This service uses the cost change induction staging tables, populates those tables, then invokes the existing cost change induction API that validates the data and populates the base tables.
Service Type
Post
ReST URL
RmsRestServices/services/private/costChange
Input Parameters – Cost Change Header Record
| Parameter Name | Required (For Create) | Required (For Update) | Required (For Delete) | Data Type | Description |
|---|---|---|---|---|---|
| action | No | No | No | string | Action type for Cost Change. Valid values are NEW(for create),MOD(forupdate) or DEL(fordelete) |
| Parameter Name | Required (For Create) | Required (For Update) | Required (For Delete) | Data Type | Description |
|---|---|---|---|---|---|
| costChange | Yes | Yes | Yes | number | Holds the ID that uniquely identifes the cost change. The ID should not overlap with cost changes created through other modes such as induction or the Merchandising UI. |
| costChangeDes c | Yes | Yes | No | string | Cost change description. This along with the cost change number identifes the cost change for modifcation and deletion. |
| reason | Yes | Yes | No | string | Indicates the reason code for the cost change. Valid values for this input can be found in the COST_CHG_REASONtable. |
| activeDate | Yes | Yes | No | date | Indicates the date on which the cost change will become active. The date format should be YYYY-MM-DD |
| status | Yes | Yes | No | string | Contains the status of the cost change. Valid values are W=Worksheet, D= Deleted(to be deleted), C=Canceled, A= Approved,E= Extracted,R=Rejected, S= Submitted |
| costChangeOrig in | Yes | Yes | No | string | Contains a code that identifes the origin of the cost change. This code is used to determine whether the event was created by supplier or by SKU. Cost events with a supplier origin will have multiple detail records all having the same supplier. Cost events with a SKU origin will have multiple detail records that may have multiple SKUs and multiple suppliers. Valid Values are SUP- BySupplier, SKU- By SKU |
| Parameter Name | Required (For Create) | Required (For Update) | Required (For Delete) | Data Type | Description |
|---|---|---|---|---|---|
| approvalId | No | No | No | string | Contains the user ID who last approved the cost change. |
| suppItemDetail s | Child Node – cost change detail record. Either this node is populated or the detail location node. | ||||
| suppItemLocDe tails | Child Node – cost change detail location record. Either this node or the detail node is populated. | ||||
| customFlexAttr ibute | Child Node – custom fex attributes |
Input Parameters – Cost Change Detail Record
| Parameter Name | Required (For Create) | Required (For Update) | Required (For Delete) | Data Type | Description |
|---|---|---|---|---|---|
| action | No | No | No | string | Holds action type. Valid values are NEW(for create), MOD(forupdate) or DEL(fordelete) |
| supplier | Yes | Yes | Yes | number | Contains the number that identifes the supplier associated with the cost change. |
| originCountryId | Yes | Yes | Yes | string | The country where the item was manufactured or signifcantly altered. |
| item | Yes | Yes | Yes | string | Unique alphanumeric value that identifes the item. |
| bracketValue1 | No | Yes | Yes | number | The values are the various levels in the vendor price list whereby costing of the items will be affected as the levels are achieved on the purchase orders. |
| costChangeType | Yes | Yes | No | number | Describes the type of cost change. Valid values are A-Amount, F- Fixed orP- Percentage. |
| costChangeValu e | Yes | Yes | No | number | Holds the value of cost change |
| Parameter Name | Required (For Create) | Required (For Update) | Required (For Delete) | Data Type | Description |
|---|---|---|---|---|---|
| recalcOrdInd | No | Yes | No | string | This feld indicates whether or not approved order costs should be re- calculated when a supplier cost has changed. Default value for this input is No. Valid values are Y- Yes,N- No |
| defaultBracketI nd | No | No | No | string | This feld contains the value that will control which cost is the base cost for processing throughout the system. Each bracket group (either by supplier, supplier/department, supplier/department/ location, supplier/ location) must have one bracket defned as the default bracket. |
| calculationBasis | No | No | No | string | This indicates whether the cost for the consignment/ concession item will be managed either based on cost per unit or as a percentage of retail. Valid values are C-Cost per Unit, P-Purchase Rate. |
| purchaseRate | No | No | No | number | This column contains the percentage of the retail price which will determine the cost paid to the supplier for a consignment or concession item. |
Input Parameters – Cost Change Detail Location Record
| Parameter Name | Required (For Create) | Required (For Update) | Required (For Delete) | Data Type | Description |
|---|---|---|---|---|---|
| action | No | No | No | string | Holds action type. Valid values are NEW(for |
create),MOD(for update)or DEL(for delete) |
| Parameter Name | Required (For Create) | Required (For Update) | Required (For Delete) | Data Type | Description |
|---|---|---|---|---|---|
| supplier | Yes | Yes | Yes | number | Contains the number that identifes the supplier associated with the cost change. |
| originCountryI d | Yes | Yes | Yes | string | The country where the item was manufactured or signifcantly altered. |
| item | Yes | Yes | Yes | string | Unique alphanumeric value that identifes the item. |
| locType | Yes | Yes | Yes | string | Contains the type of the location. Valid values are StoreandWarehouse. |
| loc | Yes | Yes | Yes | number | Number of the location the cost change will occur at. This can represent a store or a warehouse. Cost changes will be managed and stored at the physical warehouse level since the unit cost must remain consistent across all virtual warehouses within the same physical warehouse. The sccextbatch program will handle exploding the cost change down to all virtual warehouses for the inputted physical warehouse. |
| bracketValue1 | No | No | No | number | The values are the various levels in the vendors price list whereby costing of the items will be affected as the levels are achieved on purchase orders. |
| costChangeTyp e | Yes | Yes | No | string | Describes the type of cost change |
| costChangeVal ue | Yes | Yes | No | number | Holds the value of the cost change |
| recalcOrdInd | No | Yes | No | string | This feld indicates whether or not approved order costs should be re-calculated when a supplier cost has changed. Default value for this input is No. Valid values are Y- Yes,N- No |
| Parameter Name | Required (For Create) | Required (For Update) | Required (For Delete) | Data Type | Description |
|---|---|---|---|---|---|
| defaultBracketI nd | No | No | No | string | This feld contains the value that will control which cost is the base cost for processing throughout the system. Each bracket group (either by supplier, supplier/department, supplier/department/ location, supplier/ location) must have one bracket defned as the default bracket. |
| calculationBasi s | No | No | No | string | The ID of the user who last updated this record. |
| purchaseRate | No | No | No | number | The date and time when this record was last updated. |
Input Parameters – Custom Flex Attribute Record
| Parameter Name | Required (For Create) | Required (For Update) | Required (For Delete) | Data Type | Description |
|---|---|---|---|---|---|
| action | No | No | NA | string | Holds action type. Valid values are NEW(forcreate), MOD(for update)or DEL(for delete) |
| cfaName | Yes | Yes | NA | string | |
| cfaValue | No | No | NA | string | |
| cfaValueDate | No | No | NA | date |
Example JSON input:
[
{
"action": "NEW",
"costChange": 123412,
"costChangeDesc": "Sample Cost Change",
"reason": 6,
"activeDate": "2022-04-18",
"status": "A",
"costChangeOrigin": "SKU",
"approvalId": "SomeUser",
"suppItemDetails": [
{
"action": "NEW",
"supplier": 60000,
"originCountryId": "US",
"item": "123412312",
"bracketValue1": 0,
"costChangeType": "F",
"costChangeValue": 19,
"recalcOrdInd": "N",
"defaultBracketInd": "",
"calculationBasis": "C",
"purchaseRate": 0
}
],
"suppItemLocDetails": [
{
"action": "NEW",
"supplier": 30201,
"originCountryId": "US",
"item": "103500024",
"locType": "S",
"loc": 1521,
"bracketValue1": 0,
"costChangeType": "F",
"costChangeValue": 19,
"recalcOrdInd": "N",
"defaultBracketInd": "",
"calculationBasis": "",
"purchaseRate": null
}
],
"customFlexAttribute": [
{
"action": "NEW",
"cfaName": "string",
"cfaValue": "string",
"cfaValueDate": "2022-04-18"
}
]
}
]
Output – Cost Change Response Object
| Attribute | Datatype | Description |
|---|---|---|
| message | string | Indicates processing outcome and the message is defned by cost type IIPS. Default confgured values are “Processed Successfully”, “Processed with errors” or “Processed with warnings” |
| errors | Child Node – This will be empty when all the records got successfully processed. In case of multiple cost change request in the input and there are one/multiple/all failures, the error/warning reasons for each of the Non-successful cost change request will be captured here. |
Output – Cost Change Response Record
| Attribute | Datatype | Description |
|---|---|---|
| costChange | number | Contains the number that uniquely identifes the cost change. |
| feld | string | This will contain the feld in error. |
| item | string | Unique alphanumeric value that identifes the item. |
| supplier | number | Contains the number that identifes the supplier associated with the cost change. |
| originCountryId | string | The country where the item was manufactured or signifcantly altered. |
| loc | number | Number of the location the cost change will occur at. |
| locType | string | Contains the type of the location. |
| errorMessage | string | Contains the error message |
Example JSON Output:
{
"message": "Processed Successfully",
"errors": [
{
"costChange": 123123,
"field": "ACTIVE_DATE",
"item": "123412312",
"supplier": 60000,
"originCountryId": "string",
"loc": 0,
"locType": "string",
"errorMessage": "Invalid Active Date."
}
]
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SVC_COST_SUSP_SUP_HEAD | Yes | Yes | No | Yes |
| SVC_COST_SUSP_SUP_DETAIL | Yes | Yes | No | Yes |
| SVC_COST_SUSP_SUP_DETAIL_LOC | Yes | Yes | No | Yes |
| CORESVC_COSTCHG_ERR | Yes | Yes | No | Yes |
| SVC_PROCESS_TRACKER | Yes | Yes | No | Yes |
| SVC_CFA_EXT | Yes | Yes | No | Yes |
| COST_SUSP_SUP_HEAD | Yes | Yes | Yes | Yes |
| COST_SUSP_SUP_DETAIL | Yes | Yes | Yes | Yes |
| COST_SUSP_SUP_DETAIL_LOC | Yes | Yes | Yes | Yes |
| COST_CHANGE_TEMP | Yes | Yes | Yes | Yes |
| COST_CHANGE_LOC_TEMP | Yes | Yes | Yes | Yes |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| COST_SUSP_SUP_HEAD_CFA_EXT | Yes | Yes | No | Yes |
Pricing Cost
The following services are included in this functional area:
-
Pricing Cost Download Service
- Get Pricing Cost
Pricing Cost Download Service
The following services are included in this functional area:
- Get Pricing Cost
Get Pricing Cost
Functional Area
Cost - Pricing Cost
Business Overview
This web service is used to provide pricing cost information to external systems. This information is assumed to be primarily used by Order Management System (OMS), which manages franchise customer orders and needs visibility to cost information as part of the negotiation process for margin visibility.
Pricing cost for an item at an owned location is the unit cost for the primary supplier/country, less off invoice deals, plus estimated landed costs. Pricing cost for an item at a customer (franchise) location is the unit cost for the costing location, less any deals passed through, plus estimated landed costs (based on system option), plus the franchise cost template details. This service supports providing cost information for an item/location or item/supplier/location.
The following validations are carried out for this service -
-
Only approved, transaction level items are valid.
-
The location must be a company store or a physical warehouse that is customer orderable. For a physical warehouse, it must also include the channel ID that should be used.
-
For physical warehouses, the cost returned will be for the virtual warehouse that matches the channel ID that is provided in the input. If there is no virtual warehouse that matches that channel in the physical warehouse, then the next best match will be determined based on channel type and the primary warehouse and protected flags on the virtual warehouses in the physical warehouse.
Service Type
POST
ReST URL
MerchIntegrations/services/cost/pricingCost/get
Input Payload Details
Table 5-95 Get - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of | It’s a referenced element. For detailed |
| Object | description, please refer referenced element doc. |
Table 5-96 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Contains the Merchandising item number that uniquely identifes the item. This is required input for the Pricing Cost Service |
| supplier | No | Number (10) | Contains the Merchandising Supplier number for retrieving the Pricing Cost |
| supplierCountry | No | String (3) | Contains the country, supplier belongs to for which the Pricing Cost needs to be retrieved. |
| fulfllLocation | Yes | Number (10) | Contains the location number. This is required input for the Pricing Cost Service. |
| locationType | Yes | String (1) | Type of item inventory location. Valid values are ‘S’ (store) and ‘W’ (warehouse). |
| channelId | No | Number (4) | Only used when a physical WH is passed. If a channel is passed the results will be limited by the passed in channel. |
| activeDate | No | date | Contains the active date for which the pricing cost needs to be retrieved. |
Sample Input Message
{
"items": [
{
"item": "100100068",
"supplier": 2400,
"supplierCountry": "US",
"fulfillLocation": 1141,
"locationType": "S",
"channelId": 1,
"activeDate": "2001-12-31"
}
]
}
Response Code: 200 (Success)
Table 5-97 GetResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of | It’s a referenced element. For detailed |
| Object | description, please refer referenced element doc. |
Table 5-98 GetResponse.Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Contains the Merchandising item number that uniquely identifes the item. This is required input for the Pricing Cost Service |
| supplier | No | Number (10) | Contains the Merchandising Supplier number for retrieving the Pricing Cost. |
| supplierCountry | No | String (3) | Contains the country, supplier belongs to for which the Pricing Cost needs to be retrieved. |
| fulfllLocation | Yes | Number (10) | Contains the location number. This is required input for the Pricing Cost Service. |
| locationType | Yes | String (1) | Type of item inventory location. Valid values are ‘S’ (store) and ‘W’ (warehouse). |
| channelId | No | Number (4) | Only used when a physical WH is passed. If a channel is passed the results will be limited by the passed in channel. |
| activeDate | No | date | Contains the active date for which the pricing cost needs to be retrieved. |
| pricingCost | Yes | Number (20,4) | Contains the retrieved pricing cost from the future cost table for the passed parameters. |
Sample Response Message
{
"items": [
{
"item": "100100076",
"supplier": 6000,
"supplierCountry": "US",
"fulfillLocation": 6000,
"locationType": "S",
"channelId": 1,
"activeDate": "2001-12-31",
"pricingCost": 9.65
}
]
}
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"
]
}
Customer Orders
The following services are included in this functional area:
-
Customer Order Available Inventory Download Service
- Get Available Inventory for Customer Orderable Items
-
Customer Order Inventory Backorder Upload Service
- Create Inventory Backorder
-
Customer Order Item Substitution Upload Service
- Create Customer Order Item Substitution
-
Customer Order Upload Service
-
Cancel Fulfillment Order
-
Create Fulfillment Order
-
Customer Order Available Inventory Download Service
The following services are included in this functional area:
- Get Available Inventory for Customer Orderable Items
Get Available Inventory for Customer Orderable Items
Functional Area
Customer Orders
Business Overview
This real-time inventory availability lookup facility can be used by external systems, such as an on-line order capture system (OOC) or order management system (OMS), to retrieve item/ location available inventory based on Merchandising’s current view of inventory. Merchandising will provide this information for any warehouse or store which is valid for customer order sourcing/fulfillment.
The Available inventory is calculated as Stock on Hand - (Transfer Reserved Quantity + Customer Reserved Quantity + RTV Quantity + Non-sellable Quantity)
Assumptions:
-
This inventory detail lookup is only for customer orderable inventory - sellable items at customer order locations. If a physical warehouse and channel are passed into the service, then only the inventory for the customer orderable virtual warehouses for that physical warehouse/channel are returned.
-
If the inventory lookup is for a pack item at store, the pack inventory is estimated based on the maximum number of complete packs which can be created by using the available inventory of its components.
Service Type
POST
ReST URL
MerchIntegrations/services/customerOrders/availableInventory/get
Input Payload Details
Get - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Array of String | Contains the transaction-level item numbers for which the inventory must be checked. |
| inventoryLocations | Yes | Collection of Object | Contains the locations at which to check inventory. |
InventoryLocations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| location | Yes | Number (10) | The location at which to check item inventory. |
| locationType | Yes | String (1) | Type of item inventory location. Valid values are S(store) andW(warehouse). |
| channelId | No | Number (4) | Only used when a physical warehouse is passed. If a channel is passed the results will be limited by the passed-in channel. |
Sample Input Message
{
"items": [
"String"
],
"inventoryLocations": [
{
"location": 6000,
"locationType": "S",
"channelId": 1
}
]
}
Response Code: 200 (Success)
GetResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of | A collection of items and locations for |
| Object | which inventory must be retrieved. |
Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The item identifer. |
| location | Yes | Number (10) | Location where the item is to be found. This feld may contain a store or a warehouse. |
| locationType | Yes | String (1) | Type of location. Valid values areS(store) and W(warehouse). |
| channelId | No | Number (4) | Channel identifer of the warehouse. If the location is a store, channelIdwillbe blank. If the location is a warehouse, this is optional, based on the input criteria. |
| availableQuantity | Yes | Number (12,4) | Contains the available quantity for the item/location in the standard unit of measure. |
| uom | Yes | String (4) | Contains the unit of measure for available quantity. |
| packCalculateInd | No | String (1) | Valid for pack item only. Indicates whether the pack item’s available quantity is actual a held value ( N) orcalculated using pack component ( Y).Calculated pack quantity should be treated as an estimated value. |
Sample Response Message
{
"items": [
{
"item": "100100076",
"location": 6000,
"locationType": "S",
"channelId": 1,
"availableQuantity": 3,
"uom": "EA",
"packCalculateInd": "Y"
}
]
}
Response Code: 400 (Error)
In case of error, the following standard error response will be returned. The element validationErrors is present when the input payload or input parameters do not match the schema definition for this service. The element businessError is present when the payload passes the schema validation but an exception is caught while processing the 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"
]
}
Customer Order Inventory Backorder Upload Service
The following services are included in this functional area:
• Create Inventory Backorder
Create Inventory Backorder
Functional Area
Customer Orders
Business Overview
Retailers selling through e-commerce channels often take customer orders even if inventory is not available immediately, with the expectation of future inventory being available to fill the order. If an order is captured against future inventory by the Order Management System (OMS), then a backorder message is sent to Merchandising through this service. The location which will be back ordered is decided by OMS.
This web service updates the backorder quantity in Merchandising - increasing when the backorder is taken and decreasing when the backorder is released for fulfillment or cancellation. Backorders can be taken against both stores and warehouses.
Service Type
POST
ReST URL
MerchIntegrations/services/customerOrders/inventoryBackorder/create
Input Payload Details
Table 5-99 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | No | Collection of Object | A collection of items for which backorder quantity has to be updated. |
Table 5-100 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The item identifer. An item does not need to have an open purchase order in order to increase backorder quantity. Catchweight, Transformable, Consignment, Concession and Deposit container items are not supported for backorder requests. The item should not be in discontinued status at the specifed location. |
| locationType | Yes | String (1) | Type of location. Valid values are ‘S’ (store) and ‘W’ (warehouse). |
| location | Yes | Number (10) | Location where the item back order inventory has to be updated. This feld may contain a store or a physical warehouse. |
| channelId | No | Number (4) | Channel id for the Physical Warehouse. |
Table 5-100 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| backorderQuantity | Yes | Number (12,4) | Contains the Back Order quantity to be adjusted for the item/location. |
| uom | No | String (4) | Contains the unit of measure for Back Order quantity. If not defned, back orderable quantity is assumed to be in standard unit of measure. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100050005",
"locationType": "S",
"location": 1521,
"channelId": 1,
"backorderQuantity": 3,
"uom": "EA"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Customer Order Item Substitution Upload Service
The following services are included in this functional area:
- Create Customer Order Item Substitution
Create Customer Order Item Substitution
Functional Area
Customer Orders
Business Overview
When a store is picking inventory in order to fulfill a customer order, if the inventory of the item ordered does not meet the required quality standards or is unavailable and the order indicates that substitutions are allowed for that item, the store may choose to fulfill the order with a substitute item. If that occurs, the Store Inventory Operations Cloud Services (SIOCS) has the ability to substitute items on the customer order with another predefined substitute item. In such cases, it will notify the Order Management System (OMS) via the Stock Order Status message that an alternative item has been pushed into the order.
Based on this notification, OMS updates the customer order and notifies Merchandising with the same details received from SIOCS using this service. Merchandising will then update the inventory and customer order details by removing the reservation for the original item and adding a reservation for the new item. It will also update the cancelled quantity for the original item on the order and add the details for the substituted item, with a cross reference to the original item.
Service Type
POST
ReST URL
MerchIntegrations/services/customerOrders/itemSubstitution/create
Input Payload Details
Table 5-101 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | No | Collection of | A collection of CustOrdSubDesc |
| Object | objects. |
Table 5-102 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customerOrderNo | Yes | String (48) | Holds the master customer order number from OMS. |
| fulfllOrderNo | Yes | String (48) | Unique number from OMS related to the fulfllment details. |
| location | Yes | Number (10) | Indicates the store number associated with the customer order. Should be a valid store location number as item substitution is only supported for Store location. |
| item | Yes | String (25) | Contains the item number for which substitute item is used. |
| quantity | Yes | Number (12,4) | Contains the revised order quantity of the original item. |
| uom | Yes | String (4) | Contains the unit of measure for original item order quantity. This will be the standard uom of the item. |
| details | Yes | Collection of Object | Contains the substitute item details. |
| itemLineNo | No | Number (10) | Indicates the detail item line number on the order being substituted for. |
Table 5-103 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| substituteItem | Yes | String (25) | Contains the substitute item number. Catchweight, Transformable, Consignment, Concession and Deposit container items are not supported for customer order item substitution. |
| substituteItemQuantity | Yes | Number (12,4) | Contains the order quantity for the substitute item. |
| substituteItemQuantityUom | Yes | String (4) | Contains the unit of measure for the substitute item order quantity. This will be the standard uom for the substitute item. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"customerOrderNo": "180008",
"fulfillOrderNo": "180008",
"location": 1311,
"item": "101550001",
"quantity": 3,
"uom": "EA",
"details": [
{
"substituteItem": "100000198",
"substituteItemQuantity": 3,
"substituteItemQuantityUom": "EA"
}
],
"itemLineNo": 1
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Customer Order Upload Service
The following services are included in this functional area:
-
Cancel Fulfillment Order
-
Create Fulfillment Order
Cancel Fulfillment Order
Functional Area
Customer Orders
Business Overview
This service can be used to cancel an existing Customer Order or Transfer within Merchandising based on cancellation requests from an external Order Management System.
Service Type
PUT
ReST URL
MerchIntegrations/services/customerOrders/fulfillmentOrder/cancel
Input Payload Details
Table 5-104 Cancel - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of | It’s a referenced element. For detailed |
| Object | description, please refer referenced element doc. |
Table 5-105 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customerOrderNo | Yes | String (48) | Holds the master customer order number from OMS. |
| fulfllOrderNo | Yes | String (48) | Unique number from OMS related to the fulfllment details. One or more fulfllment orders could relate back to a single customer order in OMS. |
| sourceLocationType | No | String (2) | This would be either ‘SU’ for supplier, ‘ST’ for store, or ‘WH’ for warehouse. This would only be populated for vendor, warehouse or multi-site fulfllment orders. |
| sourceLocation | No | Number (10) | Indicates the supplier, store or warehouse number associated with sourcing the customer order. Only populated for vendor, warehouse or multi-site fulfllment orders. |
| fulfllLocationType | No | String (1) | This would be either ‘S’ (for physical store) or ‘V’ (for virtual store). |
Table 5-105 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fulfllLocation | Yes | Number (10) | Indicates the store or warehouse number associated with fulflling the customer order. For this release, this should always be populated with a virtual or physical store number. |
| details | Yes | Collection of Object | Indicates the customer order fulfllment cancellation detail. |
Table 5-106 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Indicates the item ordered by the customer. |
| referenceItem | No | String (25) | Indicates the reference item ordered by the customer. Used only if a specifc UPC is ordered. This is supported for vendor drop-ships orders only as we don’t support transfer requests for a specifc reference item. |
| cancelQuantityInSuom | Yes | Number (12,4) | Indicates the quantity that should be cancelled from the order in item’s standard unit of measure. |
| standardUom | No | String (4) | Indicates item’s standard unit of measure. |
| transactionUom | No | String (4) | Indicates the original transaction unit of measure the order is placed in. |
| itemLineNo | No | Number (10) | Indicates the detail item line number on the order. |
Sample Input Message
{
"items": [
{
"customerOrderNo": "123124",
"fulfillOrderNo": "123124",
"sourceLocationType": "SU",
"sourceLocation": 2400,
"fulfillLocationType": "S",
"fulfillLocation": 1521,
"details": [
{
"item": "100100068",
"referenceItem": "String",
"cancelQuantityInSuom": 3,
"standardUom": "EA",
"transactionUom": "EA",
"itemLineNo": 1
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Create Fulfillment Order
Functional Area
Customer Orders
Business Overview
This service is used to process Customer Order Fulfillment requests from an external order management system (OMS). If the system option OMS_IND = ‘Y’, then Merchandising expects to receive customer orders through this API. If the system option PERSIST_CUSTOMER_DATA_IND = ‘N’, personal information will not be stored in the customer order table in Merchandising.
The confirmation messages will be sent in a collection as part of the response object.
-
Accepts a collection of fulfillment orders as input. If one order fails, the entire service call fails, and no orders will be created.
-
Returns Failure status as part of the response object in the web service call if customer orders are not created due to validation errors.
-
Returns Success status and a confirmation message as part of the response object of type:
-
X if customer orders are not created due to lack of inventory
-
P if customer orders are partially created due to insufficient inventory
-
C if customer orders are completely created, when sufficient inventory is available.
-
R if inventory reservations are created.
-
-
A confirmation type of C and P will be accompanied by a confirmation number, which is the transfer or purchase order number created.
The Customer Order Fulfillment message staged will go through a process of validation. Records that pass validation will create new customer order records. If any validation error occurs, transaction will be rolled back, and no customer orders will be created.
There are two scenarios where a customer order fulfillment request cannot be created in Merchandising:
1. Due to data validation errors (e.g., invalid item).
2. Due to ‘No Inventory’ - There is not enough inventory available at the source location or item is not ranged or inactive at the source location, or item is not supplied by the supplier (in a PO scenario).
Notes:
1. Non-stockholding franchise stores cannot part of a fulfillment order, either as a sourcing location or as a fulfillment location.
2. Catch weight and transformable sellable items are not supported in this integration. To sell items that can vary by weight, like bananas through online channels, setup should be done as a regular (non-catch weight) item with a unit cost and standard UOM defined in items of eaches.
3. It is assumed that customer orders will be captured in the selling UOM in OMS, but that all transactions will be communicated to Merchandising in standard UOM.
4. If the same customer order fulfillment request is sent for a different item or for an existing item but with a different item line number, the existing PO or transfer will be updated.
The Customer Order Fulfillment messages contain information such as delivery type, source type and destination type. Based on these, the system will proceed to create a Purchase Order, Transfer or Inventory Reservation.
Service Type
POST
ReST URL
MerchIntegrations/services/customerOrders/fulfillmentOrder/create
Input Payload Details
Table 5-107 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | It’s a referenced element. For detailed |
| Object | description, please refer referenced element doc. |
Table 5-108 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customerOrderNo | Yes | String (48) | Holds the master customer order number from OMS. |
| fulfllOrderNo | Yes | String (48) | Unique number from OMS related to the fulfllment details. One or more fulfllment orders could relate back to a single customer order in OMS. |
| sourceLocationType | No | String (2) | This would be either ‘SU’ for supplier, ‘ST’ for store, or ‘WH’ for warehouse. This would only be populated for vendor, warehouse or multi-site fulfllment orders. |
| sourceLocation | No | Number (10) | Indicates the supplier, store or warehouse number associated with sourcing the customer order. Only populated for vendor, warehouse or multi-site fulfllment orders. |
| fulfllLocationType | No | String (1) | This would be either ‘S’ (for physical store) or ‘V’ (for virtual store). |
| fulfllLocation | Yes | Number (10) | Indicates the store or warehouse number associated with fulflling the customer order. For this release, this should always be populated with a virtual or physical store number. |
| partialDeliveryInd | Yes | String (1) | Indicates if the order can be picked and shipped partially (‘N’) or if it should be shipped only when complete (‘Y’). |
| deliveryType | No | String (1) | Indicates the fulfllment method - ship to customer or store pickup. Expected values are ‘S’ (ship direct) and ‘C’ (customer pickup). |
| carrierCode | No | String (4) | Indicates the carrier the order is to be shipped with, if specifed on the order. |
| carrierServiceCode | No | String (6) | Indicates the method that was selected for shipping by the customer placing the order (e. g. Standard Shipping, Overnight, etc. ). |
Table 5-108 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| consumerDeliveryDate | Yes | date | Indicates the desired date the delivery is required by the customer. This will be the GMT time. |
| consumerDeliveryTime | No | date-time | Indicates the desired time the delivery is required by the customer. This will be the GMT time. |
| deliveryCharges | No | Number (20,4) | Contains the delivery charges on drop ship. Mostly relevant for Brazil. |
| deliveryChargesCurrency | No | String (3) | Contains the currency of the delivery charges. |
| comments | No | String (2000) | Any comments sent by OMS about the order. |
| customerDetails | No | Record | Referenced object for customer information related to the order. |
| details | Yes | Collection of Object | References a collection of customer order fulfllment details. |
| orderPlacedStore | No | Number (10) | Indicates the store number associated with the location that the customer order was placed. For on-line orders this will contain the virtual store number associated with the on-line store. For orders captured in a physical store this will contain the store number for the physical store. |
Table 5-109 CustomerDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customerNo | No | String (14) | Indicates the number that uniquely identifes the customer in OMS. |
| deliverFirstName | No | String (120) | Contains the frst name for the delivery address on the order. |
| deliverPhoneticFirst | No | String (120) | Contains the phonetic frst name for the delivery address on the order. |
| deliverLastName | No | String (120) | Contains the last name for the delivery address on the order. |
| deliverPhoneticLast | No | String (120) | Contains the phonetic last name for the delivery address on the order. |
| deliverPreferredName | No | String (120) | Contains the preferred name for the delivery address on the order. |
| deliverCompanyName | No | String (120) | Contains the company name for the delivery address on the order. |
| deliverAdd1 | No | String (240) | First line of the delivery address for the customer. |
| deliverAdd2 | No | String (240) | Second line of the delivery address for the customer. |
Table 5-109 (Cont.) CustomerDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| deliverAdd3 | No | String (240) | Third line of the delivery address for the customer. |
| deliverCounty | No | String (250) | County portion of the delivery address. |
| deliverCity | No | String (120) | City portion of the delivery address. |
| deliverState | No | String (3) | State portion of the delivery address. |
| deliverCountryId | No | String (3) | Country portion of the delivery address. |
| deliverPost | No | String (30) | Postal code portion of the delivery address. |
| deliverJurisdiction | No | String (10) | Identifes the jurisdiction code for the delivery country-state relationship. |
| deliverPhone | No | String (20) | Contains the delivery phone number. |
| deliverEmail | No | String (120) | Contains the delivery email. |
| billFirstName | No | String (120) | Contains the frst name for the billing address on the order. |
| billPhoneticFirst | No | String (120) | Contains the phonetic frst name for the billing address on the order. |
| billLastName | No | String (120) | Contains the last name for the billing address on the order. |
| billPhoneticLast | No | String (120) | Contains the phonetic last name for the billing address on the order. |
| billPreferredName | No | String (120) | Contains the preferred name for the billing address on the order. |
| billCompanyName | No | String (120) | Contains the company name for the billing address on the order. |
| billAdd1 | No | String (240) | First line of the billing address for the customer. |
| billAdd2 | No | String (240) | Second line of the billing address for the customer. |
| billAdd3 | No | String (240) | Third line of the billing address for the customer. |
| billCounty | No | String (250) | County portion of the billing address. |
| billCity | No | String (120) | City portion of the billing address. |
| billState | No | String (3) | State portion of the billing address. |
| billCountryId | No | String (3) | Country portion of the billing address. |
| billPost | No | String (30) | Postal code portion of the billing address. |
| billJurisdiction | No | String (10) | Identifes the jurisdiction code for the billing country-state relationship. |
| billPhone | No | String (20) | Contains the billing phone number. |
| billEmail | No | String (120) | Contains the billing email. |
Table 5-109 (Cont.) CustomerDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| localizationExtensions | No | Collection of | Holds optional localization attributes |
| Object | that will be processed by the localization extension module. |
Table 5-110 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-111 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-112 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Indicates the item ordered by the customer. |
| referenceItem | No | String (25) | Indicates the reference item ordered by the customer. Used only if a specifc UPC is ordered. This is supported for vendor drop-ships orders only as we don’t support transfer requests for a specifc reference item. |
| orderQuantitySuom | Yes | Number (12,4) | Indicates the quantity of the item ordered by the customer in item’s standard unit of measure. |
| standardUom | No | String (4) | Indicates item’s standard unit of measure. |
| transactionUom | No | String (4) | Indicates the original transaction unit of measure the order is placed in. |
| substituteInd | Yes | String (1) | Indicates if substitutes are allowed on a customer order. This will only be used by orders passed to SIM. |
Table 5-112 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| unitRetail | No | Number (20,4) | Indicates the unit sales retail of item on the customer order. This will only be used by Brazil orders in case of Warehouse Fulfllment or vendor sourced POs shipped directly to the customer. It is needed for Sales NF generation. |
| retailCurrency | No | String (3) | Indicates currency of unit retail and total retail. This will only be used by Brazil orders in case of Warehouse Fulfllment or vendor sourced POs shipped directly to the customer. It is needed for Sales NF generation. |
| comments | No | String (2000) | Used to indicate any special instructions for the item, such as services (monograms, engrave, etc). |
| itemLineNo | No | Number (10) | Indicates the detail item line number on the order. |
Sample Input Message
{
"items": [
{
"customerOrderNo": "123124",
"fulfillOrderNo": "123124",
"sourceLocationType": "SU",
"sourceLocation": 2400,
"fulfillLocationType": "S",
"fulfillLocation": 1521,
"partialDeliveryInd": "N",
"deliveryType": "S",
"carrierCode": "30",
"carrierServiceCode": "D",
"consumerDeliveryDate": "2001-12-31",
"consumerDeliveryTime": "2001-12-31T23:59:59.123Z",
"deliveryCharges": 3.55,
"deliveryChargesCurrency": "USD",
"comments": "CO for John Scott",
"customerDetails": {
"customerNo": "123456",
"deliverFirstName": "John",
"deliverPhoneticFirst": "Mr",
"deliverLastName": "Scott",
"deliverPhoneticLast": null,
"deliverPreferredName": null,
"deliverCompanyName": null,
"deliverAdd1": "7th Street",
"deliverAdd2": "2504 Centergate Dr Apt 103",
"deliverAdd3": null,
"deliverCounty": "Miramar County",
"deliverCity": "Minneapolis",
"deliverState": "MN",
"deliverCountryId": "US",
"deliverPost": "55555-1234",
"deliverJurisdiction": null,
"deliverPhone": "1800800800",
"deliverEmail": "someone@email.com",
"billFirstName": "John",
"billPhoneticFirst": "Mr",
"billLastName": "Scott",
"billPhoneticLast": null,
"billPreferredName": null,
"billCompanyName": null,
"billAdd1": "7th Street",
"billAdd2": "2504 Centergate Dr Apt 103",
"billAdd3": null,
"billCounty": "Miramar County",
"billCity": "Minneapolis",
"billState": "MN",
"billCountryId": "US",
"billPost": "55555-1234",
"billJurisdiction": null,
"billPhone": "1800800800",
"billEmail": "johnscott@gmail.com",
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
},
"details": [
{
"item": "100100068",
"referenceItem": null,
"orderQuantitySuom": 3,
"standardUom": "EA",
"transactionUom": "EA",
"substituteInd": "N",
"unitRetail": 12.99,
"retailCurrency": "USD",
"comments": "Customer Order Item Details",
"itemLineNo": 1
}
],
"orderPlacedStore": 1311
}
]
}
Response Code: 200 (Success)
Table 5-113 CreateResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of | It’s a referenced element. For detailed |
| Object | description, please refer referenced element doc. |
Table 5-114 CreateResponse.Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customerOrderNo | Yes | String (48) | Holds the master customer order number from OMS. |
| fulfllOrderNo | Yes | String (48) | Unique number from OMS related to the fulfllment details. One or more fulfllment orders could relate back to a single customer order in OMS. |
| confrmationType | Yes | String (1) | Contains the confrmation type. ‘P’ - Order Partially Created; ‘X’ - Order Could not be Created; ‘C’ - Order Completely Created, ‘R’ - Inventory Reservation. |
| confrmationNo | No | Number (12) | Contains the PO or Transfer number in RMS related to the fulfllment order line. Required if fulfllment status is ‘P’. |
| details | No | Collection of Object | References a collection of customer order confrmation item details. This will be null for confrmation type ‘R’ - inventory reservation. |
| fulfllLocation | No | Number (10) | Contains the fulfllment location for the order. This will be null for confrmation type ‘R’ - inventory reservation. |
| systemCode | No | String (10) | The code identifying the system associated with the location. This will be null for confrmation type ‘R’ - inventory reservation. |
Table 5-115 CreateResponse.Items.Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Indicates the item ordered by the |
| customer. This will be null for confrmation type ‘R’ - inventory reservation. |
Table 5-115 (Cont.) CreateResponse.Items.Details - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| referenceItem No | String (25) | Indicates the reference item ordered by the customer. Used only if a specifc UPC is ordered. This is supported for vendor drop-ships orders only as we don’t support transfer requests for a specifc reference item. This will be null for confrmation type ‘R’ - inventory reservation. |
| confrmedQuantity Yes | Number (12,4) | Indicates the quantity of the item that can be sourced or fulflled on the order. This will be null for confrmation type ‘R’ - inventory reservation. |
| confrmedQuantityUom Yes | String (4) | Indicates the unit of measure of the confrmation quantity. This will be null for confrmation type ‘R’ - inventory reservation. |
| itemLineNo No | Number (10) | Indicates the detail item line number on the order. This will be null for confrmation type ‘R’ - inventory reservation. |
Sample Response Message{"items": [{"customerOrderNo": "123123","fulfillOrderNo": "123124","confirmationType": "P","confirmationNo": 9999999,"details": [{ | ||
"item": "100100076","referenceItem": null,"confirmedQuantity": 3,"confirmedQuantityUom":"itemLineNo": 1}],"fulfillLocation": 6000,"systemCode": "INV"}]} | "EA", |
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"
]
}
Deals
The following services are included in this functional area:
-
Manage Complex Deals
-
Manage Fixed Deals
-
Deals Download Service
- Get Item Location Deals
Manage Complex Deals
Functional Area
Deals
Business Overview
This service can be used to create, modify and delete all forms of complex deals that are currently supported via the application UI such as Off Invoice, Allowance, Bill Back, Bill Back Rebate, Vendor Funded Markdown, Vendor Funded Promotion, Promotional Consignment Rate and Clearance Consignment Rate.
It would work as an enhanced version of the existing dealupld batch but containing the latest set of enhancements that have taken place in this workflow.
Service Type
PUT
ReST URL
MerchIntegrations/services/deals/complexDeals/manage
Input Payload Details
Manage - Object. See list of elements for detail
Items - Object. See list of elements for detail
Components - Object. See list of elements for detail ItemLocation - Object. See list of elements for detail ProofOfPerformance - Object. See list of elements for detail Fulfillment - Object. See list of elements for detail
Threshold - Object. See list of elements for detail
Promotion - Object. See list of elements for detail
ReferencedPromotion - Object. See list of elements for detail
ManageError - Object. See list of elements for detail
Response Code: 200 (Success)
ManageResponse - Object. See list of elements for detail
ComplexDeals - Object. See list of elements for detail
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.
ManageError - Object. See list of elements for detail
Manage Fixed Deals
Functional Area
Deals
Business Overview
This service can be used to create, modify and delete Merchandise as well as nonMerchandise based Fixed Deals.
Service Type
PUT
ReST URL
MerchIntegrations/services/deals/fixedDeals/manage
Input Payload Details
Manage - Object. See list of elements for detail Items - Object. See list of elements for detail Taxes - Object. See list of elements for detail Merchandise - Object. See list of elements for detail Locations - Object. See list of elements for detail Promotions - Object. See list of elements for detail ProofOfPerformance - Object. See list of elements for detail Fulfillment - Object. See list of elements for detail ManageError - Object. See list of elements for detail
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"action": "CREATE",
"externalReferenceNo": "FIXEDDEALREST_01",
"dealId": 133588,
"status": "A",
"dealDescription": "Fixed Deal",
"vendorType": "SS",
"vendorId": null,
"supplierId": 2400,
"dealType": "OTHER",
"dealAmount": 1000,
"currencyCode": "USD",
"organizationUnitId": null,
"merchandiseInd": "Y",
"nonMerchandiseCode": null,
"taxInd": "N",
"taxCode": null,
"merchandiseIncomeApportionMethod": "R",
"locationIncomeApportionMethod": "R",
"recalculateInventoryValueInd": "N",
"prepaidInd": "N",
"collectFrequency": "M",
"collectStartDate": "2001-12-31",
"collectCount": 1,
"postingFrequency": null,
"postingOccurrence": null,
"invoiceProcessingLogic": "AA",
"invoiceDocumentType": "C",
"comments": "Fixed Deal Header via ReST FDEALREST_01",
"clearComments": "N",
"taxes": [
{
"action": "CREATE",
"taxCode": "S",
"taxBasis": 1000,
"clearTaxBasis": "N",
"taxAmount": 50,
"clearTaxAmount": "N"
}
],
"merchandise": [
{
"action": "CREATE",
"sequenceNo": 1,
"merchandiseLevel": "D",
"dept": 1000,
"class": null,
"subclass": null,
"itemParent": null,
"item": null,
"contributionRatio": null,
"clearContributionRatio": "N",
"locations": [
{
"action": "CREATE",
"locationType": "S",
"location": 1521,
"contributionRatio": null,
"clearContributionRatio": "N"
}
]
}
],
"promotions": [
{
"action": "CREATE",
"promotionId": 1121
}
],
"proofOfPerformance": [
{
"action": "CREATE",
"proofOfPerformanceSequenceNo": 1,
"dealReferenceItem": "100100092",
"type": "ECD",
"duration": 7,
"durationType": "MONTH",
"vendorRecommendedStartDate": "2001-12-31",
"vendorRecommendedEndDate": "2001-12-31",
"plannedStartDate": "2001-12-31",
"plannedEndDate": "2001-12-31",
"comments": "Proof of performance for fixed deal",
"fulfillment": [
{
"action": "CREATE",
"fulfillmentSequenceNo": 1,
"promotionId": 14,
"startDate": "2001-12-31",
"endDate": "2001-12-31",
"comments": "Fulfillment of POP"
}
]
}
]
}
]
}
Response Code: 200 (Success)
ManageResponse - Object. See list of elements for detail FixedDeals - Object. See list of elements for detail
Sample Response Message
{
"fixedDeals": [
{
"dealId": 133578,
"externalReferenceNo": "String"
}
]
}
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.
ManageError - Object. See list of elements for detail
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": [
{
"externalReferenceNo": "String",
"dealId": 133578,
"merchSeqNo": 271772,
"location": 190104,
"taxCode": "String",
"popDefSeqNo": 390833,
"popType": "String",
"popFulfillSeqNo": 195679,
"promotionId": 799212,
"errorMessage": [
"String"
]
}
]
}
Deals Download Service
The following services are included in this functional area:
- Get Item Location Deals
Get Item Location Deals
Functional Area
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.
Service Type
POST
ReST URL
MerchIntegrations/services/deals/itemLocation/get
Input Payload Details
Table 5-116 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. |
Table 5-116 (Cont.) Get - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Contains the item number in the distro. |
| notBeforeDate | Yes | date | Contains the frst 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-117 GetResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of | References a collection of store order |
| Object | initiated deals. |
Table 5-118 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) | Identifes the calculation class of the deal component. |
| limitType | No | String (6) | Identifes 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). |
Table 5-118 (Cont.) Items - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| valueType No | String (6) | Identifes whether the discount values associated with the thresholds will be set up as qty values, currency amount values, percentages or fxed amounts. Valid values are Q for qty, A for currency amount, P for percentage or F for fxed 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 specifed 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 specifed 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 Sample Response Message | Number (20,4) | Value of the discount that will be given for meeting the specifed thresholds for this deal component. |
{"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"
]
}
Financials
The following services are included in this functional area:
-
Budgets
- Half Data Budget Upload Service
-
Currency
-
Currency Download Service
-
Currency Exchange Rate Download Service
-
Currency Exchange Rate Upload Service
-
-
General Ledger
- General Ledger Chart of Accounts Upload Service
-
Terms
-
Freight Term Upload Service
-
Payment Term Upload Service
-
-
Transaction Data
- Transaction Data Upload Service
Budgets
The following services are included in this functional area:
- Half Data Budget Upload Service
Half Data Budget Upload Service
Update Half Data Budget
Business Overview
The primary role of this service is to modify half data budgets and send them to Merchandising.
Functional Area
Financials
Modify Half Data Budget Business Overview
This service modifies half data budget by calling the SVCPROV_HDB package to load input data to the staging tables and then calling the core half data budget package to validate and update data to the HALF_DATA_BUDGET table.
Service Type
Post
Rest URL
financials/HalfDataBudgetREST/modifyHdb
Input Parameters
SvcprovHdbdescRecRDO
| Parameter Name | Data Type |
|---|---|
| dept | BigDecimal |
| class1 | BigDecimal |
| subclass | BigDecimal |
| halfNo | BigDecimal |
| locType | String |
| location | BigDecimal |
| setOfBooksId | BigDecimal |
| cumMarkonPct | BigDecimal |
| shrinkagePct | BigDecimal |
| markdownPct | BigDecimal |
JSON Structure
[
{
"dept": null,
"class1":null,
"subclass":null,
"halfNo": null,
"locType": null,
"location": null,
"setOfBooksId": null,
"cumMarkonPct": null,
"shrinkagePct": null,
"markdownPct": null
}
]
Output
SvcprovHdbStatusRecRDO
| Parameter Name | Data Type |
|---|---|
| statusMsg | String |
| hdbErrTbl | List< SvcprovFailHdbRecRDO> |
SvcprovFailHdbRecRDO
| Parameter Name | Data Type |
|---|---|
| dept | BigDecimal |
| class1 | BigDecimal |
| subclass | BigDecimal |
| halfNo | BigDecimal |
| locType | String |
| location | BigDecimal |
| setOfBooksId | BigDecimal |
| errorMsg | String |
The output will contain the status of the request including validation errors, if any.
JSON Structure
{
"statusMsg": null,
" hdbErrTbl ": [
{
"dept": null,
"class1":null,
"subclass":null,
"halfNo": null,
"locType": null,
"location": null,
"setOfBooksId": null,
"errorMsg": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| HALF_DATA_BUGET | Yes | No | Yes | No |
| SVC_PROCESS_TRACKER | Yes | Yes | Yes | No |
| SVC_ADMIN_UPLD_ER | Yes | Yes | No | No |
| SVC_HALF_DATA_BUDGET | Yes | Yes | No | Yes |
| CODE_DETAIL | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Currency
The following services are included in this functional area:
-
Currency Download Service
-
Currency Exchange Rate Download Service
-
Currency Exchange Rate Upload Service
Currency Download Service
Get Currency Definitions
Business Overview
Retrieve Merchandising’s Currencies table records.
Service Type
GET
ReST URL
/Common/Currencies
Input Parameters
N/A
Output
Table 5-119 MblCurrenciesRDO
| Parameter Name | Data Type |
|---|---|
| currencyCode | String |
| currencyDescription | String |
| currencyCostFormat | String |
| currencyRetailFormat | String |
| currencyCostDecimal | BigDecimal |
| currencyRetailDecimal | BigDecimal |
JSON Structure:
[
{
"links": [],
"currencyCode": "AED",
"currencyDescription": "U.A.E. Dirham",
"currencyCostFormat": "FM9G999G999G999G990D9099PR",
"currencyRetailFormat": "FM9G999G999G999G990D90PR",
"currencyCostDecimal": 4,
"currencyRetailDecimal": 2,
"hyperMediaContent": {
"linkRDO": []
}
},
{
"links": [],
"currencyCode": "ALL",
"currencyDescription": "UNKNOWN",
"currencyCostFormat": "FMD0",
"currencyRetailFormat": "FMD90",
"currencyCostDecimal": 2,
"currencyRetailDecimal": 2,
"hyperMediaContent": {
"linkRDO": []
}
},
........
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| CURRENCIES | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Currency Exchange Rate Download Service
Get Currency Exchange Rates
This section describes the Currency Rate service.
Business Overview
This service is used to retrieve all currencies and currency conversion rates. The conversion rate is the value used to convert to the primary currency.
Service Type
Get
ReST URL
CurrencyRates/currencyRates
Input Parameters
N/A
Output
RestCurrencyRatesRecRDO
| Parameter Name | Data Type |
|---|---|
| exchangeRate | BigDecimal |
| effectiveDate | Timestamp |
| currencyCode | String |
| exchangeType | String |
JSON Structure
[
{
"exchangeRate": null,
"effectiveDate": null,
"currencyCode": null,
"exchangeType": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
]
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| CURRENCY_RATES | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Currency Exchange Rate Upload Service
Manage Currency Exchange Rates
Functional Area
Financials - Currency
Business Overview
Currency exchange rates constitute financial information that is subscribed to by Merchandising. A currency exchange rate is the price of one country’s currency expressed in another country’s currency. This webservice assumes that currency codes are already present in Merchandising. This service supports creating new rates by date and updating existing rates for the same conversion date.
Service Type
PUT
ReST URL
MerchIntegrations/services/financials/currency/exchangeRate/manage
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Table 5-120 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of currency |
| Object | exchange rate details. |
Table 5-121 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromCurrency | Yes | String (3) | Contains the currency code that the rate exchange is from. |
| toCurrency | Yes | String (3) | Contains the currency code that the rate exchange is to. |
| conversionDate | Yes | date | Contains the date on which the currency rate became or will become active. |
| conversionRate | Yes | Number (20,10) | The exchange rate between the two currency codes for the type and effective date. |
| conversionType | Yes | String (30) | This feld identifes the type of exchange rate the history exists for. Valid values are valid exchange types in ff_currency_xref table. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"fromCurrency": "USD",
"toCurrency": "AUD",
"conversionDate": "2001-12-31",
"conversionRate": 3,
"conversionType": "C"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
General Ledger
The following services are included in this functional area:
• General Ledger Chart of Accounts Upload Service
General Ledger Chart of Accounts Upload Service
Manage General Ledger Chart of Accounts
Functional Area
Financials - General Ledger
Business Overview
This service is used when Retail Financial Integration (RFI) is not being used and integration with a financial system is a custom or to a non-Oracle financials system. When using RFI with an Oracle Financial system, the chart of accounts (COA) information in Merchandising and Sales Audit is created through a mapping and COA validation process. It is used to create new chart of account entries, as well as update existing entries.
Before Merchandising can publish stock ledger data to an external financial application, it must receive the General Ledger chart of accounts (GLCOA) structure. The chart of accounts is the financial application’s debit and credit account segments (for example, company, cost center, account, and so on). These are mapped to the transactions, locations, and product hierarchy in Merchandising when stock ledger data and Sales Audit totals are sent to the General Ledger. In some financial applications, these are known as code combination chart fields. There is also a primary account, in some systems know as a CCID that uniquely identifies the combination
of segment or chart field values. Upon receipt of GLCOA message data, Merchandising populates the data to the FIF_GL_ACCT table.
Service Type
PUT
ReST URL
MerchIntegrations/services/financials/generalLedger/chartOfAccounts/manage
Input Payload Details
Table 5-122 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of GL chart of |
| Object | accounts. |
Table 5-123 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAccount | Yes | String (25) | This denotes the primary account for a chart of accounts. |
| attribute1 | No | String (25) | Secondary Account information. A value is required if description1 is supplied. |
| attribute2 | No | String (25) | Secondary Account information. A value is required if description2 is supplied. |
| attribute3 | No | String (25) | Secondary Account information. A value is required if description3 is supplied. |
| attribute4 | No | String (25) | Secondary Account information. A value is required if description4 is supplied. |
| attribute5 | No | String (25) | Secondary Account information. A value is required if description5 is supplied. |
| attribute6 | No | String (25) | Secondary Account information. A value is required if description6 is supplied. |
| attribute7 | No | String (25) | Secondary Account information. A value is required if description7 is supplied. |
| attribute8 | No | String (25) | Secondary Account information. A value is required if description8 is supplied. |
| attribute9 | No | String (25) | Secondary Account information. A value is required if description9 is supplied. |
Table 5-123 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| attribute10 | No | String (25) | Secondary Account information. A value is required if description10 is supplied. |
| attribute11 | No | String (25) | Secondary Account information. A value is required if description11 is supplied. |
| attribute12 | No | String (25) | Secondary Account information. A value is required if description12 is supplied. |
| attribute13 | No | String (25) | Secondary Account information. A value is required if description13 is supplied. |
| attribute14 | No | String (25) | Secondary Account information. A value is required if description14 is supplied. |
| attribute15 | No | String (25) | Secondary Account information. A value is required if description15 is supplied. |
| description1 | No | String (50) | Description of the attribute1 feld. Required if attribute1 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
| description2 | No | String (50) | Description of the attribute2 feld. Required if attribute2 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
| description3 | No | String (50) | Description of the attribute3 feld. Required if attribute3 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
| description4 | No | String (50) | Description of the attribute4 feld. Required if attribute4 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
| description5 | No | String (50) | Description of the attribute5 feld. Required if attribute5 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
| description6 | No | String (50) | Description of the attribute6 feld. Required if attribute6 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
| description7 | No | String (50) | Description of the attribute7 feld. Required if attribute7 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
| description8 | No | String (50) | Description of the attribute8 feld. Required if attribute8 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
Table 5-123 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| description9 | No | String (50) | Description of the attribute9 feld. Required if attribute9 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
| description10 | No | String (50) | Description of the attribute10 feld. Required if attribute10 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
| description11 | No | String (50) | Description of the attribute11 feld. Required if attribute11 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
| description12 | No | String (50) | Description of the attribute12 feld. Required if attribute12 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
| description13 | No | String (50) | Description of the attribute13 feld. Required if attribute13 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
| description14 | No | String (50) | Description of the attribute14 feld. Required if attribute14 is supplied and you are not using Oracle Financials 11.5.10 or greater |
| description15 | No | String (50) | Description of the attribute15 feld. Required if attribute15 is supplied and you are not using Oracle Financials 11.5.10 or greater. |
| setOfBooksId | No | Number (15) | The Set of books Identifer. |
| attribute16 | No | String (25) | Secondary Account information. A value is required if description16 is supplied. |
| attribute17 | No | String (25) | Secondary Account information. A value is required if description17 is supplied. |
| attribute18 | No | String (25) | Secondary Account information. A value is required if description18 is supplied. |
| attribute19 | No | String (25) | Secondary Account information. A value is required if description19 is supplied. |
| attribute20 | No | String (25) | Secondary Account information. A value is required if description20 is supplied. |
| description16 | No | String (50) | Description of the attribute16 feld. Required if attribute16 supplied and you are not using Oracle Financials 11. 5. 10 or greater. |
Table 5-123 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| description17 | No | String (50) | Description of the attribute17 feld. Required if attribute17 supplied and you are not using Oracle Financials 11. 5. 10 or greater. |
| description18 | No | String (50) | Description of the attribute18 feld. Required if attribute18 supplied and you are not using Oracle Financials 11. 5. 10 or greater. |
| description19 | No | String (50) | Description of the attribute19 feld. Required if attribute19 supplied and you are not using Oracle Financials 11. 5. 10 or greater. |
| description20 | No | String (50) | Description of the attribute20 feld. Required if attribute20 supplied and you are not using Oracle Financials 11. 5. 10 or greater. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"primaryAccount": "99338",
"attribute1": "1001",
"attribute2": "1002",
"attribute3": "1003",
"attribute4": "1004",
"attribute5": "1005",
"attribute6": null,
"attribute7": null,
"attribute8": null,
"attribute9": null,
"attribute10": null,
"attribute11": null,
"attribute12": null,
"attribute13": null,
"attribute14": null,
"attribute15": null,
"description1": "Attribute 1001",
"description2": "Attribute 1002",
"description3": "Attribute 1003",
"description4": "Attribute 1004",
"description5": "Attribute 1005",
"description6": null,
"description7": null,
"description8": null,
"description9": null,
"description10": null,
"description11": null,
"description12": null,
"description13": null,
"description14": null,
"description15": null,
"setOfBooksId": 111111111111111,
"attribute16": null,
"attribute17": null,
"attribute18": null,
"attribute19": null,
"attribute20": null,
"description16": null,
"description17": null,
"description18": null,
"description19": null,
"description20": null
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Manage Merchandising General Ledger Cross Reference
Functional Area
Financials - General Ledger
Business Overview
This service will aid management of the General Ledger Cross Reference Data in Merchandising in addition to the existing spreadsheet upload. This will allow create, update and delete of records from FIF_GL_CROSS_REF table based on the action.
The account validation offered by this service will be based on the configuration of the ‘External Account Validation’ system option. If external account validation is opted for and if the account combination specified on the cross-reference record is not found locally (in the FIF_GL_ACCT table), a webservice call will be invoked to validate account combinations in Cloud Financials. (Note: The Account validation service credentials and end point will need to be configured in Merchandising to carry out this service call/validation). If the account is found to be valid via the service call, then the account will be added to the local account repository (FIF_GL_ACCT) for future reference and the cross reference saved successfully.
If External Account Validation is not opted for, then the account validation will be limited to validating against the accounts available locally (in the FIF_GL_ACCT table). Combinations not existing in FIF_GL_ACCT will not be included in the cross-reference table.
Service Type
PUT
ReST URL
MerchIntegrations/services/financials/generalLedger/crossReference/manage
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-124 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | Reference a collection of GL Cross Reference Data. |
Table 5-125 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | Yes | String (10) | Specifes the intended action to create, update or delete an externally generated location list. Valid values are CREATE, UPDATE or DELETE. |
Table 5-125 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| setOfBooksId | Yes | Number (15) | The Set of books Identifer. |
| dept | No | Number (4) | Oracle Retail department. A value of -1 will be used as a wildcard to mean all departments. |
| class | No | Number (4) | Oracle Retail Class. A value of -1 will be used as a wildcard to mean all classes. |
| subclass | No | Number (4) | Oracle Retail Subclass. A value of -1 will be used as a wildcard to mean all subclasses. |
| location | No | Number (10) | Oracle Retail Location. A value of -1 will be used as a wildcard to mean all locations. |
| transactionCode | Yes | Number (4) | Oracle Retail Transaction code. A value of -1 will be used as a wildcard to mean all tran codes. A tran code of zero will be used to refer to purchase order accounts. |
| costRetailInd | Yes | String (1) | Cost C or Retail R Flag. |
| lineType | Yes | String (6) | This indicates whether the account code of this record is for an Item, Freight, Tax, or Miscellaneous. This information will be necessary when choosing which Oracle Financials account to associate with each line in the invoice. Without this feld, we are only able to choose an account code for an item, not for freight, tax, or miscellaneous charges. |
Table 5-125 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transactionReferenceN o | No | String (25) | Contains the intercompany transfer from/to location ( tran code = 37, 38), the work order activity ID ( tran code = 63, 64), the inventory adjustment reason ( tran code = 22, 23), the vat code ( tran code = 87, 88) or -1 as a catch-all value, the merchandise cost mapping code system option, the unmapped cost component mapping code system option or a non- merchandise code found on the non- merchandise codes table ( tran code = 20). If the tran code is Intercompany Out, the feld will contain the transfer To Location. If the tran code is Intercompany, the feld will contain the transfer From Location. If the tran code is sales or return (Tran codes 1,2,3,4,5), the feld will contain the posting classifer. If the tran code is sales - based deal ( tran code 6), the feld will contain the deal billing type . |
| debitAccount | No | Number (18) | Oracle debit account combination code ID, determined from the 10 sequence numbers. |
| debitSegment1 | No | String (25) | Oracle debit account mapping feld1, maps to Oracle side GL_Code_combination s table. |
| debitSegment2 | No | String (25) | Oracle debit account mapping feld2, maps to Oracle side GL_Code_combination s table. |
Table 5-125 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| debitSegment3 | No | String (25) | Oracle debit account mapping feld3, maps to Oracle side GL_Code_combination s table. |
| debitSegment4 | No | String (25) | Oracle debit account mapping feld4, maps to Oracle side GL_Code_combination s table. |
| debitSegment5 | No | String (25) | Oracle debit account mapping feld5, maps to Oracle side GL_Code_combination s table. |
| debitSegment6 | No | String (25) | Oracle debit account mapping feld6, maps to Oracle side GL_Code_combination s table. |
| debitSegment7 | No | String (25) | Oracle debit account mapping feld7, maps to Oracle side GL_Code_combination s table. |
| debitSegment8 | No | String (25) | Oracle debit account mapping feld8, maps to Oracle side GL_Code_combination s table. |
| debitSegment9 | No | String (25) | Oracle debit account mapping feld9, maps to Oracle side GL_Code_combination s table. |
| debitSegment10 | No | String (25) | Oracle debit account mapping feld10, maps to Oracle side GL_Code_combination s table. |
| debitSegment11 | No | String (25) | Oracle debit account mapping feld11, maps to Oracle side GL_Code_combination s table. |
| debitSegment12 | No | String (25) | Oracle debit account mapping feld12, maps to Oracle side GL_Code_combination s table. |
Table 5-125 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| debitSegment13 | No | String (25) | Oracle debit account mapping feld13, maps to Oracle side GL_Code_combination s table. |
| debitSegment14 | No | String (25) | Oracle debit account mapping feld14, maps to Oracle side GL_Code_combination s table. |
| debitSegment15 | No | String (25) | Oracle debit account mapping feld15, maps to Oracle side GL_Code_combination s table. |
| debitSegment16 | No | String (25) | Oracle debit account mapping feld16, maps to Oracle side GL_Code_combination s table. |
| debitSegment17 | No | String (25) | Oracle debit account mapping feld17, maps to Oracle side GL_Code_combination s table. |
| debitSegment18 | No | String (25) | Oracle debit account mapping feld18, maps to Oracle side GL_Code_combination s table. |
| debitSegment19 | No | String (25) | Oracle debit account mapping feld19, maps to Oracle side GL_Code_combination s table. |
| debitSegment20 | No | String (25) | Oracle debit account mapping feld20, maps to Oracle side GL_Code_combination s table. |
| creditAccount | No | Number (18) | Oracle credit account combination code ID, determined from the 10 sequence numbers. |
| creditSegment1 | No | String (25) | Oracle credit account mapping feld1, maps to Oracle side GL_Code_combination s table. |
Table 5-125 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| creditSegment2 | No | String (25) | Oracle credit account mapping feld2, maps to Oracle side GL_Code_combination s table. |
| creditSegment3 | No | String (25) | Oracle credit account mapping feld3, maps to Oracle side GL_Code_combination s table. |
| creditSegment4 | No | String (25) | Oracle credit account mapping feld4, maps to Oracle side GL_Code_combination s table. |
| creditSegment5 | No | String (25) | Oracle credit account mapping feld5, maps to Oracle side GL_Code_combination s table. |
| creditSegment6 | No | String (25) | Oracle credit account mapping feld6, maps to Oracle side GL_Code_combination s table. |
| creditSegment7 | No | String (25) | Oracle credit account mapping feld7, maps to Oracle side GL_Code_combination s table. |
| creditSegment8 | No | String (25) | Oracle credit account mapping feld8, maps to Oracle side GL_Code_combination s table. |
| creditSegment9 | No | String (25) | Oracle credit account mapping feld9, maps to Oracle side GL_Code_combination s table. |
| creditSegment10 | No | String (25) | Oracle credit account mapping feld10, maps to Oracle side GL_Code_combination s table. |
| creditSegment11 | No | String (25) | Oracle credit account mapping feld11, maps to Oracle side GL_Code_combination s table. |
Table 5-125 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| creditSegment12 | No | String (25) | Oracle credit account mapping feld12, maps to Oracle side GL_Code_combination s table. |
| creditSegment13 | No | String (25) | Oracle credit account mapping feld13, maps to Oracle side GL_Code_combination s table. |
| creditSegment14 | No | String (25) | Oracle credit account mapping feld14, maps to Oracle side GL_Code_combination s table. |
| creditSegment15 | No | String (25) | Oracle credit account mapping feld15, maps to Oracle side GL_Code_combination s table. |
| creditSegment16 | No | String (25) | Oracle credit account mapping feld16, maps to Oracle side GL_Code_combination s table. |
| creditSegment17 | No | String (25) | Oracle credit account mapping feld17, maps to Oracle side GL_Code_combination s table. |
| creditSegment18 | No | String (25) | Oracle credit account mapping feld18, maps to Oracle side GL_Code_combination s table. |
| creditSegment19 | No | String (25) | Oracle credit account mapping feld19, maps to Oracle side GL_Code_combination s table. |
| creditSegment20 | No | String (25) | Oracle credit account mapping feld20, maps to Oracle side GL_Code_combination s table. |
Table 5-125 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| baseInd | No | String (1) | This column indicates if the record will be used as priority for cross reference mapping with dynamic segments.Valid values are ‘Y’ or Null. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"action": "CREATE",
"setOfBooksId": 1,
"dept": 209,
"class": -1,
"subclass": -1,
"location": 265080,
"transactionCode": 30,
"costRetailInd": "C",
"lineType": "ITEM",
"transactionReferenceNo": "265109",
"debitAccount": 1922,
"debitSegment1": "KS LLC",
"debitSegment2": "123100",
"debitSegment3": "32520",
"debitSegment4": "0",
"debitSegment5": null,
"debitSegment6": null,
"debitSegment7": null,
"debitSegment8": null,
"debitSegment9": null,
"debitSegment10": null,
"debitSegment11": null,
"debitSegment12": null,
"debitSegment13": null,
"debitSegment14": null,
"debitSegment15": null,
"debitSegment16": null,
"debitSegment17": null,
"debitSegment18": null,
"debitSegment19": null,
"debitSegment20": null,
"creditAccount": 498,
"creditSegment1": "KS LLC",
"creditSegment2": "123200",
"creditSegment3": "32520",
"creditSegment4": "0",
"creditSegment5": null,
"creditSegment6": null,
"creditSegment7": null,
"creditSegment8": null,
"creditSegment9": null,
"creditSegment10": null,
"creditSegment11": null,
"creditSegment12": null,
"creditSegment13": null,
"creditSegment14": null,
"creditSegment15": null,
"creditSegment16": null,
"creditSegment17": null,
"creditSegment18": null,
"creditSegment19": null,
"creditSegment20": null,
"baseInd": null
}
]
}
Response Code: 200 (Success)
Table 5-126 ManageResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| message | Yes | String (250) | Indicates processing outcome and the message is defned by code_detail code_type IIPS. Default confgured values are Processed Successfully or Processed with errors or Processed with warnings or Pending validation from external Financial System. |
| errors | Yes | Collection of Object | References a collection non-successful Cross Reference Data with its corresponding errors. This will be empty when all the records get successfully processed. In case of multiple GL Cross Reference data in the input and there are one/multiple/all failures, the error/ warning reasons for each of the non- successful Cross Reference data will be captured here. |
Table 5-127 Errors - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| setOfBooksId | Yes | Number (15) | The Set of books Identifer. |
| dept | Yes | Number (4) | Oracle Retail department. A value of -1 will be used as a wildcard to mean all departments. |
| class | Yes | Number (4) | Oracle Retail Class. A value of -1 will be used as a wildcard to mean all classes. |
| subclass | Yes | Number (4) | Oracle Retail Subclass. A value of -1 will be used as a wildcard to mean all subclasses. |
| location | Yes | Number (10) | Oracle Retail Location. A value of -1 will be used as a wildcard to mean all locations. |
| transactionCode | Yes | Number (4) | Oracle Retail Transaction code. A value of -1 will be used as a wildcard to mean all tran codes. A tran code of zero will be used to refer to purchase order accounts. |
| costRetailInd | Yes | String (1) | Cost C or Retail R Flag. |
| lineType | Yes | String (6) | This indicates whether the account code of this record is for an Item, Freight, Tax, or Miscellaneous. This information will be necessary when choosing which Oracle Financials account to associate with each line in the invoice. Without this feld, we are only able to choose an account code for an item, not for freight, tax, or miscellaneous charges. |
Table 5-127 (Cont.) Errors - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transactionReferenceN o | Yes | String (25) | Contains the intercompany transfer from/to location ( tran code = 37, 38), the work order activity ID ( tran code = 63, 64), the inventory adjustment reason ( tran code = 22, 23), the vat code ( tran code = 87, 88) or -1 as a catch-all value, the merchandise cost mapping code system option, the unmapped cost component mapping code system option or a non- merchandise code found on the non- merchandise codes table ( tran code = 20). If the tran code is Intercompany Out, the feld will contain the transfer To Location. If the tran code is Intercompany, the feld will contain the transfer From Location. If the tran code is sales or return (Tran codes 1,2,3,4,5), the feld will contain the posting classifer. If the tran code is sales-based deal ( tran code 6), the feld will contain the deal billing type. |
| errorMessage | Yes | Array of String | References a collection of errors for a given setOfBooksId , dept, class, subclass, location, transactionCode , costRetailInd , lineType , transactionReferenceN o record. |
Sample Response Message
{
"message": "Processed Successfully",
"errors": [
{
"setOfBooksId": null,
"dept": null,
"class": null,
"subclass": null,
"location": null,
"transactionCode": null,
"costRetailInd": null,
"lineType": null,
"transactionReferenceNo": null,
"errorMessage": [
"null"
]
}
]
}
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.
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"
}
]
}
Manage Sales Audit General Ledger Cross Reference
Functional Area
Sales Audit - Financials
Business Overview
This service will aid management of the General Ledger Cross Reference Data in Sales Audit in addition to the existing spreadsheet upload. This will allow create, update and delete of records from SA_FIF_GL_CROSS_REF table based on the action.
The account validation offered by this service will be based on the configuration of the ‘External Account Validation’ system option. If external account validation is opted for and if the account combination specified on the cross-reference record is not found locally (in the FIF_GL_ACCT table), a webservice call will be invoked to validate account combinations in Cloud Financials. (Note: The Account validation service credentials and end point will need to
be configured in Merchandising to carry out this service call/validation). If the account is found to be valid via the service call, then the account will be added to the local account repository (FIF_GL_ACCT) for future reference and the cross reference saved successfully.
If External Account Validation is not opted for, then the account validation will be limited to validating against the accounts available locally (in the FIF_GL_ACCT table). Combinations not existing in FIF_GL_ACCT will not be included in the cross-reference table.
Service Type
PUT
ReST URL
MerchIntegrations/services/resa/glCrossReference/manage
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-128 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | Reference a collection of GL Cross |
| Object | Reference Data. |
Table 5-129 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | Yes | String (10) | Specifes the intended action to create, update or delete an externally generated location list. Valid values are CREATE, UPDATE or DELETE. |
| store | Yes | Number (10) | This column indicates the location the account code is valid for. |
| total | Yes | String (10) | This column indicates the type of total the account is valid for. |
| setOfBooksId | Yes | Number (15) | Oracle set of books for Oracle Retail transactions. |
| rollupLevel1 | Yes | String (120) | This column indicates the frst rollup level of total. |
| rollupLevel2 | Yes | String (120) | This column indicates the second rollup level of total. |
| rollupLevel3 | Yes | String (120) | This column indicates the third rollup level of total. |
| debitAccount | No | Number (18) | Oracle debit account combination code ID, determined from the 10 sequence numbers. |
Table 5-129 (Cont.) Items - Object. See list of elements for detail
| Element Name | Requir | ed Data Type | Description |
|---|---|---|---|
| debitSegment1 | No | String (25) | Oracle debit account mapping feld1, maps to Oracle side GL_Code_combinations table. |
| debitSegment2 | No | String (25) | Oracle debit account mapping feld2, maps to Oracle side GL_Code_combinations table. |
| debitSegment3 | No | String (25) | Oracle debit account mapping feld3, maps to Oracle side GL_Code_combinations table. |
| debitSegment4 | No | String (25) | Oracle debit account mapping feld4, maps to Oracle side GL_Code_combinations table. |
| debitSegment5 | No | String (25) | Oracle debit account mapping feld5, maps to Oracle side GL_Code_combinations table. |
| debitSegment6 | No | String (25) | Oracle debit account mapping feld6, maps to Oracle side GL_Code_combinations table. |
| debitSegment7 | No | String (25) | Oracle debit account mapping feld7, maps to Oracle side GL_Code_combinations table. |
| debitSegment8 | No | String (25) | Oracle debit account mapping feld8, maps to Oracle side GL_Code_combinations table. |
| debitSegment9 | No | String (25) | Oracle debit account mapping feld9, maps to Oracle side GL_Code_combinations table. |
| debitSegment10 | No | String (25) | Oracle debit account mapping feld10, maps to Oracle side GL_Code_combinations table. |
| debitSegment11 | No | String (25) | Oracle debit account mapping feld11, maps to Oracle side GL_Code_combinations table. |
| debitSegment12 | No | String (25) | Oracle debit account mapping feld12, maps to Oracle side GL_Code_combinations table. |
| debitSegment13 | No | String (25) | Oracle debit account mapping feld13, maps to Oracle side GL_Code_combinations table. |
| debitSegment14 | No | String (25) | Oracle debit account mapping feld14, maps to Oracle side GL_Code_combinations table. |
| debitSegment15 | No | String (25) | Oracle debit account mapping feld15, maps to Oracle side GL_Code_combinations table. |
| debitSegment16 | No | String (25) | Oracle debit account mapping feld16, maps to Oracle side GL_Code_combinations table. |
| debitSegment17 | No | String (25) | Oracle debit account mapping feld17, maps to Oracle side GL_Code_combinations table. |
Table 5-129 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| debitSegment18 | No | String (25) | Oracle debit account mapping feld18, maps to Oracle side GL_Code_combinations table. |
| debitSegment19 | No | String (25) | Oracle debit account mapping feld19, maps to Oracle side GL_Code_combinations table. |
| debitSegment20 | No | String (25) | Oracle debit account mapping feld20, maps to Oracle side GL_Code_combinations table. |
| creditAccount | No | Number (18) | Oracle credit account combination code ID, determined from the 10 sequence numbers. |
| creditSegment1 | No | String (25) | Oracle credit account mapping feld1, maps to Oracle side GL_Code_combinations table. |
| creditSegment2 | No | String (25) | Oracle credit account mapping feld2, maps to Oracle side GL_Code_combinations table. |
| creditSegment3 | No | String (25) | Oracle credit account mapping feld3, maps to Oracle side GL_Code_combinations table. |
| creditSegment4 | No | String (25) | Oracle credit account mapping feld4, maps to Oracle side GL_Code_combinations table. |
| creditSegment5 | No | String (25) | Oracle credit account mapping feld5, maps to Oracle side GL_Code_combinations table. |
| creditSegment6 | No | String (25) | Oracle credit account mapping feld6, maps to Oracle side GL_Code_combinations table. |
| creditSegment7 | No | String (25) | Oracle credit account mapping feld7, maps to Oracle side GL_Code_combinations table. |
| creditSegment8 | No | String (25) | Oracle credit account mapping feld8, maps to Oracle side GL_Code_combinations table. |
| creditSegment9 | No | String (25) | Oracle credit account mapping feld9, maps to Oracle side GL_Code_combinations table. |
| creditSegment10 | No | String (25) | Oracle credit account mapping feld10, maps to Oracle side GL_Code_combinations table. |
| creditSegment11 | No | String (25) | Oracle credit account mapping feld11, maps to Oracle side GL_Code_combinations table. |
| creditSegment12 | No | String (25) | Oracle credit account mapping feld12, maps to Oracle side GL_Code_combinations table. |
| creditSegment13 | No | String (25) | Oracle credit account mapping feld13, maps to Oracle side GL_Code_combinations table. |
Table 5-129 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| creditSegment14 | No | String (25) | Oracle credit account mapping feld14, maps to Oracle side GL_Code_combinations table. |
| creditSegment15 | No | String (25) | Oracle credit account mapping feld15, maps to Oracle side GL_Code_combinations table. |
| creditSegment16 | No | String (25) | Oracle credit account mapping feld16, maps to Oracle side GL_Code_combinations table. |
| creditSegment17 | No | String (25) | Oracle credit account mapping feld17, maps to Oracle side GL_Code_combinations table. |
| creditSegment18 | No | String (25) | Oracle credit account mapping feld18, maps to Oracle side GL_Code_combinations table. |
| creditSegment19 | No | String (25) | Oracle credit account mapping feld19, maps to Oracle side GL_Code_combinations table. |
| creditSegment20 | No | String (25) | Oracle credit account mapping feld20, maps to Oracle side GL_Code_combinations table. |
| attribute3Map | No | String (30) | This column will store the metadata information on which feld can be mapped to the STG_FIF_GL_DATA.ATTRIBUTE3 column for a specifc GL cross reference mapping. |
| attribute4Map | No | String (30) | This column will store the metadata information on which feld can be mapped to the STG_FIF_GL_DATA.ATTRIBUTE4 column for a specifc GL cross reference mapping. |
| attribute5Map | No | String (30) | This column will store the metadata information on which feld can be mapped to the STG_FIF_GL_DATA.ATTRIBUTE5 column for a specifc GL cross reference mapping. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"action": "CREATE",
"store": 320,
"total": "TENDER",
"setOfBooksId": 2021,
"rollupLevel1": "44",
"rollupLevel2": "-1",
"rollupLevel3": "-1",
"debitAccount": null,
"debitSegment1": "1",
"debitSegment2": "1",
"debitSegment3": "0",
"debitSegment4": "0",
"debitSegment5": "10003",
"debitSegment6": "52028",
"debitSegment7": "0",
"debitSegment8": "0",
"debitSegment9": null,
"debitSegment10": null,
"debitSegment11": null,
"debitSegment12": null,
"debitSegment13": null,
"debitSegment14": null,
"debitSegment15": null,
"debitSegment16": null,
"debitSegment17": null,
"debitSegment18": null,
"debitSegment19": null,
"debitSegment20": null,
"creditAccount": null,
"creditSegment1": "1",
"creditSegment2": "1",
"creditSegment3": "0",
"creditSegment4": "0",
"creditSegment5": "10003",
"creditSegment6": "52045",
"creditSegment7": "0",
"creditSegment8": "0",
"creditSegment9": null,
"creditSegment10": null,
"creditSegment11": null,
"creditSegment12": null,
"creditSegment13": null,
"creditSegment14": null,
"creditSegment15": null,
"creditSegment16": null,
"creditSegment17": null,
"creditSegment18": null,
"creditSegment19": null,
"creditSegment20": null,
"attribute3Map": "ROLLUP_LEVEL_1",
"attribute4Map": null,
"attribute5Map": null
}
]
}
Response Code: 200 (Success)
Table 5-130 ManageResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| message | Yes | String (30) | Indicates processing outcome and the message is defned by code_detail code_type IIPS. Default confgured values are Processed Successfully or Processed with errors or Processed with warnings or Pending validation from external Financial System. |
| errors | Yes | Collection of Object | References a collection non-successful Cross Reference Data with its corresponding errors. This will be empty when all the records get successfully processed. In case of multiple GL Cross Reference data in the input and there are one/multiple/all failures, the error/ warning reasons for each of the non- successful Cross Reference data will be captured here. |
Table 5-131 Errors - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | This column indicates the location the account code is valid for |
| total | Yes | String (10) | This column indicates the type of total the account is valid for. |
| rollupLevel1 | Yes | String (120) | This column indicates the frst rollup level of total. |
| rollupLevel2 | Yes | String (120) | This column indicates the second rollup level of total. |
| rollupLevel3 | Yes | String (120) | This column indicates the third rollup level of total. |
| setOfBooksId | Yes | Number (15) | Oracle set of books for Oracle Retail transactions. |
| errorMessage | Yes | Array of String | References a collection of errors for a given setOfBooksId, dept, class, subclass, location, transactionCode, costRetailInd, lineType, transactionReferenceNo record. |
Sample Response Message
{
"message": "Processed Successfully",
"errors": [
{
"store": null,
"total": null,
"rollupLevel1": null,
"rollupLevel2": null,
"rollupLevel3": null,
"setOfBooksId": null,
"errorMessage": [
"null"
]
}
]
}
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 do not match the schema definition for this service.
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"
}
]
}
Terms
The following services are included in this functional area:
-
Freight Term Upload Service
-
Payment Term Upload Service
Freight Term Upload Service
Manage Freight Term
Functional Area
Financials - Terms
Business Overview
This service is exposed to allow an external financial system to manage freight terms in Merchandising. Freight Terms are financial arrangement information related to shipping that can be subscribed to by Merchandising from a financial system. Freight terms are the terms for shipping - for example, the freight terms could be a certain percentage of the total cost; a flat fee per order, etc. After confirming the validity of the records enclosed within the message, Merchandising is updated with the information.
Both new records and updates to already existing ones are sent through this single service. Freight Terms and external reference ID are optional fields. If both are empty or the external reference ID does not map to an existing record, a new ID will be generated to create the freight term. If both are passed, Freight Terms will be used to create or update the record. If
only the external reference ID is provided and more than one matching record is found, service will raise an error.
When a new freight term is created, this service will validate that all required fields such as description, enabled flag, start and end dates are present in the message. After this field validation is completed successfully, the freight term record in the message will be inserted if the term does not exist. If the freight term exists, then the external reference ID, dates and enabled flag will be updated.
Service Type
PUT
ReST URL
MerchIntegrations/services/financials/terms/freightTerm/manage
Input Payload Details
Table 5-132 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| freightTerms | No | String (30) | Contains a number that uniquely identifes the freight terms. |
| externalReferenceId | No | String (50) | Contains the ID for the freight terms used in the external fnancial system. |
| description | Yes | String (240) | Contains a description of the freight terms used in the system. |
| enabledFlag | Yes | String (1) | Indicates whether the freight terms are valid or invalid within the respective application. Valid values are ‘Y’es or ‘N’o. If interface is from Oracle Financials, the Check_Enabled logic will be bypassed which means feld would not be required. |
| startActiveDate | No | date | Indicates the date for assigning an active date to the Freight Terms. |
| endActiveDate | No | date | Indicates the date for assigning an inactive date to the Freight Terms. |
Sample Input Message
{
"freightTerms": "FTTERM01",
"externalReferenceId": "FTTERM55",
"description": "Freight Term 01",
"enabledFlag": "Y",
"startActiveDate": "2001-12-31",
"endActiveDate": "2001-12-31"
}
Response Code: 200 (Success)
Table 5-133 ManageResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | Yes | String (10) | Status code for a successful service call. |
| freightTerms | Yes | String (30) | Contains a number that uniquely identifes the freight terms. |
| externalReferenceId | No | String (50) | Contains the ID for the freight terms used in the external fnancial system. |
Sample Response Message
{
"status": "SUCCESS",
"freightTerms": "FTTERM01",
"externalReferenceId": "FTTERM55"
}
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 do not match the schema definition for this service.
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"
}
]
}
Payment Term Upload Service
Create Payment Term
Functional Area
Financials - Terms
Business Overview
This service is used by Oracle Retail Financial Integration (RFI) for integration of payment terms with PeopleSoft Financials, and can also be used by an external financial system to send new payment terms information to Merchandising. Terms and external reference Id are optional fields. If Terms id is empty, a new Id will be generated to create the payment term.
Service Type
POST
ReST URL
MerchIntegrations/services/financials/terms/paymentTerm/create
Input Payload Details
Table 5-134 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| terms | No | String (15) | Unique id for this payment term. |
| externalReferenceId | No | String (50) | ID for the supplier terms used in the external fnancial system. |
| termsCode | Yes | String (50) | The alpha value which acts as the Term code in Oracle Financials. |
| description | Yes | String (240) | Description of the payment terms. |
| rank | No | Number (10) | Unique rank to rate invoice payment terms against PO terms |
| details | No | Collection of Object | Child node. |
Table 5-135 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| termsSequence | Yes | Number (10) | Sequence for the discount percent and part of unique identifer for the detail line. |
| dueDays | Yes | Number (3) | The number of days until payment is due. |
| dueMaximumAmount | Yes | Number (12,4) | Maximum payment amount due by a certain date. |
| dueDayOfMonth | Yes | Number (2) | Day of month used to calculate due date. |
| discountDays | Yes | Number (3) | Number of days in which payment must be made to get the discount. |
| percent | Yes | Number (12,4) | Percentage used to calculate discount available. |
| discountDayOfMonth | Yes | Number (2) | Day of month used to calculate discount date. |
| discountMonthForward | Yes | Number (3) | Number of months ahead to calculate discount date. |
Table 5-135 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fxedDate | No | date | Fixed due date. |
| enabledFlag | Yes | String (1) | Indicates whether the Payment terms are valid or invalid within the respective application. The values would be either (Y)es or (N)o. |
| startActiveDate | No | date | Start date terms are in effect. |
| endActiveDate | No | date | End date terms are in effect. |
| dueMonthForward | Yes | Number (3) | Number of months ahead to calculate due date. |
| cutoffDay | Yes | Number (2) | Day of month after which the following month will be used for calculations. |
Sample Input Message
{
"terms": "55",
"externalReferenceId": "55",
"termsCode": "55",
"description": "55 termsDesc",
"rank": 12,
"details": [
{
"termsSequence": 1,
"dueDays": 100,
"dueMaximumAmount": 12.95,
"dueDayOfMonth": 10,
"discountDays": 100,
"percent": 3,
"discountDayOfMonth": 10,
"discountMonthForward": 100,
"fixedDate": "2001-12-31",
"enabledFlag": "N",
"startActiveDate": "2001-12-31",
"endActiveDate": "2001-12-31",
"dueMonthForward": 100,
"cutoffDay": 10
}
]
}
Response Code: 200 (Success)
Table 5-136 CreateResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | Yes | String (10) | Status code for a successful service |
| call. |
Table 5-136 (Cont.) CreateResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| terms | Yes | String (15) | Unique id for this payment term. |
| externalReferenceId | No | String (50) | ID for the supplier terms used in the external fnancial system. |
Sample Response Message
{
"status": "SUCCESS",
"terms": "55",
"externalReferenceId": "55"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Payment Term Detail
Functional Area
Financials - Terms
Business Overview
This service can be used by an external financial system to send additional details for existing payment terms to Merchandising. Terms and external reference ID are optional fields, but at least one must be provided when adding details to an existing payment term. If both are passed, Terms will be used to identify the record. If only the external reference ID is provided, it will be used to find a matching payment term. If more than one record is found, service will raise an error.
Service Type
POST
ReST URL
MerchIntegrations/services/financials/terms/paymentTerm/detail/create
Input Payload Details
Table 5-137 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| terms | No | String (15) | Unique id for this payment term. |
| externalReferenceId | No | String (50) | ID for the supplier terms used in the external fnancial system. |
| termsCode | Yes | String (50) | The alpha value which acts as the Term code in Oracle Financials. |
| description | Yes | String (240) | Description of the payment terms. |
| rank | No | Number (10) | Unique rank to rate invoice payment terms against PO terms |
| details | No | Collection of Object | Child node. |
Table 5-138 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| termsSequence | Yes | Number (10) | Sequence for the discount percent and part of unique identifer for the detail line. |
| dueDays | Yes | Number (3) | The number of days until payment is due. |
| dueMaximumAmount | Yes | Number (12,4) | Maximum payment amount due by a certain date. |
| dueDayOfMonth | Yes | Number (2) | Day of month used to calculate due date. |
| discountDays | Yes | Number (3) | Number of days in which payment must be made to get the discount. |
| percent | Yes | Number (12,4) | Percentage used to calculate discount available. |
| discountDayOfMonth | Yes | Number (2) | Day of month used to calculate discount date. |
| discountMonthForward | Yes | Number (3) | Number of months ahead to calculate discount date. |
| fxedDate | No | date | Fixed due date. |
| enabledFlag | Yes | String (1) | Indicates whether the Payment terms are valid or invalid within the respective application. The values would be either (Y)es or (N)o. |
| startActiveDate | No | date | Start date terms are in effect. |
| endActiveDate | No | date | End date terms are in effect. |
| dueMonthForward | Yes | Number (3) | Number of months ahead to calculate due date. |
| cutoffDay | Yes | Number (2) | Day of month after which the following month will be used for calculations. |
Sample Input Message
{
"terms": "55",
"externalReferenceId": "55",
"termsCode": "55DTLADD",
"description": "55DESCDTLADD",
"rank": 14,
"details": [
{
"termsSequence": 2,
"dueDays": 100,
"dueMaximumAmount": 12.95,
"dueDayOfMonth": 10,
"discountDays": 100,
"percent": 4,
"discountDayOfMonth": 10,
"discountMonthForward": 100,
"fixedDate": "2001-12-31",
"enabledFlag": "N",
"startActiveDate": "2001-12-31",
"endActiveDate": "2001-12-31",
"dueMonthForward": 100,
"cutoffDay": 12
}
]
}
Response Code: 200 (Success)
Table 5-139 CreateResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | Yes | String (10) | Status code for a successful service call |
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Payment Term
Functional Area
Financials - Terms
Business Overview
This service can be used by an external financial system to send updated payment terms information to Merchandising. Terms and external reference ID are optional fields, but at least one must be provided when updating a payment term. If both are passed, Terms will be used to identify the record. If only the external reference ID is provided, it will be used to find a matching payment term. If more than one record is found, the service will raise an error.
For more details on Payment Terms, see the Create Payment Term service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/financials/terms/paymentTerm/update
Input Payload Details
Table 5-140 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| terms | No | String (15) | Unique id for this payment term. |
| externalReferenceId | No | String (50) | ID for the supplier terms used in the external fnancial system. |
| termsCode | Yes | String (50) | The alpha value which acts as the Term code in Oracle Financials. |
| description | Yes | String (240) | Description of the payment terms. |
| rank | No | Number (10) | Unique rank to rate invoice payment terms against PO terms |
Sample Input Message
{
"terms": "55",
"externalReferenceId": "55",
"termsCode": "55HDRUPD",
"description": "55 TERMS Description HDR UPD",
"rank": 13
}
Response Code: 200 (Success)
Table 5-141 UpdateResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | Yes | String (10) | Status code for a successful service call |
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Payment Term Detail
Functional Area
Financials - Terms
Business Overview
This service can be used by an external financial systems to send detail level updates to the payment terms that already exist within Merchandising. Terms and external reference ID are optional fields, but at least one must be provided when updating details of an existing payment term. If both are passed, Terms will be used to identify the record. If only the external reference ID is provided, it will be used to find a matching payment term. If more than one record is found, service will raise an error.
Service Type
PUT
ReST URL
MerchIntegrations/services/financials/terms/paymentTerm/detail/update
Input Payload Details
Table 5-142 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| terms | No | String (15) | Unique id for this payment term. |
| externalReferenceId | No | String (50) | ID for the supplier terms used in the external fnancial system. |
| termsCode | Yes | String (50) | The alpha value which acts as the Term code in Oracle Financials. |
| description | Yes | String (240) | Description of the payment terms. |
| rank | No | Number (10) | Unique rank to rate invoice payment terms against PO terms |
| details | No | Collection of Object | Child node. |
Table 5-143 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| termsSequence | Yes | Number (10) | Sequence for the discount percent and part of unique identifer for the detail line. |
| dueDays | Yes | Number (3) | The number of days until payment is due. |
| dueMaximumAmount | Yes | Number (12,4) | Maximum payment amount due by a certain date. |
| dueDayOfMonth | Yes | Number (2) | Day of month used to calculate due date. |
| discountDays | Yes | Number (3) | Number of days in which payment must be made to get the discount. |
| percent | Yes | Number (12,4) | Percentage used to calculate discount available. |
| discountDayOfMonth | Yes | Number (2) | Day of month used to calculate discount date. |
| discountMonthForward | Yes | Number (3) | Number of months ahead to calculate discount date. |
| fxedDate | No | date | Fixed due date. |
| enabledFlag | Yes | String (1) | Indicates whether the Payment terms are valid or invalid within the respective application. The values would be either (Y)es or (N)o. |
| startActiveDate | No | date | Start date terms are in effect. |
| endActiveDate | No | date | End date terms are in effect. |
| dueMonthForward | Yes | Number (3) | Number of months ahead to calculate due date. |
| cutoffDay | Yes | Number (2) | Day of month after which the following month will be used for calculations. |
Sample Input Message
{
"terms": "55",
"externalReferenceId": "55",
"termsCode": "55DTLUPD",
"description": "55DESCDTLUPD",
"rank": 14,
"details": [
{
"termsSequence": 2,
"dueDays": 55,
"dueMaximumAmount": 12.95,
"dueDayOfMonth": 10,
"discountDays": 55,
"percent": 4,
"discountDayOfMonth": 10,
"discountMonthForward": 100,
"fixedDate": "2001-12-31",
"enabledFlag": "N",
"startActiveDate": "2001-12-31",
"endActiveDate": "2001-12-31",
"dueMonthForward": 55,
"cutoffDay": 12
}
]
}
Response Code: 200 (Success)
Table 5-144 UpdateResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | Yes | String (10) | Status code for a successful service call |
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Transaction Data
The following services are included in this functional area:
- Transaction Data Upload Service
Transaction Data Upload Service
Manage Transaction Data
Functional Area
Financials
Business Overview
The primary role of this service is to create transaction data records in the stock ledger, such as to adjust previously posted transactions. If the transaction is marked for WAC recalculation, it will recalculate the WAC for the item/location at the same time. The transactions written by this service will not impact unit inventory in Merchandising.
Service Type
Post
ReST URL
/Financials/uploadTranData
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| Item | No | String | Item Identifcation |
| Dept | Yes | Number | Department Id |
| Class | Yes | Number | Class Id |
| Subclass | Yes | Number | Subclass Id |
| LocType | Yes | String | Location Type, Valid values areS-Store, W-Warehouse andE-ExternalFinisher. |
| Location | Yes | Number | Location ID |
| TranDate | No | Date | Date of Transaction. (Format: DD-MON-YYYY). If null, vdatewill be populated. |
| TranCode | Yes | Number | Transaction Type Identifcation. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| AdjCode | No | String | Type of Adjustment. Valid values areA-Actual Landed Cost Adjustment, C-CostAdjustment, U-Unit Adjustment. |
| Units | Yes | BigDecimal | Number of units involved in transaction. |
| TotalCost | No | BigDecimal | Total Cost associated with transaction. |
| TotalRetail | No | BigDecimal | Total Retail value associated with transaction. |
| RefNo1 | No | String | Reference number associated with transaction. |
| RefNo2 | No | String | Reference number associated with transaction. |
| GLRefNo | No | String | Reference number associated with transactions, and is used for defning the General Ledger account relationship, along with dept, class, subclass, location and tran_code. |
| OldUnitRetail | No | BigDecimal | Old Unit Retail |
| NewUnitRetail | No | BigDecimal | New Unit Retail |
| PgmName | No | String | Identifes the Oracle Retail module which inserted the record into the transaction data table. |
| SalesType | No | String | Type of Sale.Valid Values are ‘C’learance,’P’romotion and ‘R’egular. |
| VatRate | No | BigDecimal | VAT Rate |
| Avg Cost | No | BigDecimal | Average cost for the SKU |
| RefPackNo | No | String | Pack Number for the transaction item. |
| TotalCostExclusiveELC | No | BigDecimal | Cost Exclusive for ELC |
| WACRecalcIndicator | No | String | WAC should be recalculated.Valid values are Y-Yes orN-No. |
Example JSON input
[
{
"item": "string",
"dept": 0,
"classId": 0,
"subClass": 0,
"locType": "string",
"location": 0,
"tranDate": "string",
"tranCode": 0,
"adjCode": "string",
"units": 0,
"totalCost": 0,
"totalRetail": 0,
"refNo1": "string",
"refNo2": "string",
"glRefNo": "string",
"oldUnitRetail": 0,
"newUnitRetail": 0,
"pgmName": "string",
"salesType": "string",
"vatRate": 0,
"avCost": 0,
"refPackNo": "string",
"totalCostExclElc": 0,
"wacRecalcInd": "string"
"hyperMediaContent": {}
}
]
Output
Table 5-145 RestTranDataStatusRec
| Parameter Name | Data Type |
|---|---|
| Status Message | String |
| TranDataErrorTBL | List< RestTranDataFailTbl> |
Table 5-146 TranDataErrorTBL
| Parameter Name | Data Type |
|---|---|
| Item | String |
| Dept | Number |
| Class | Number |
| Subclass | Number |
| Location Type | String |
| Location | Number |
| Tran Code | Number |
| Units | BigDecimal |
| Total Cost | BigDecimal |
| Total Retail | BigDecimal |
| RefNo1 | String |
| RefNo2 | String |
| GLRefNo | String |
| WACRecalcIndicator | String |
| ErrorMessage | String |
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| TRAN_DATA | No | Yes | No | No |
| ITEM_MASTER | Yes | No | No | No |
| DEPS | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SUBCLASS | Yes | No | No | No |
| STORE | Yes | No | No | No |
| WH | Yes | No | No | No |
| PARTNER | Yes | No | No | No |
| TRAN_DATA_CODES | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| ITEM_LOC_SOH | Yes | No | Yes | No |
| VAT_RATE | Yes | No | No | No |
| VAT_REGION | Yes | No | No | No |
| PACKITEM | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| PERIOD | Yes | No | No | No |
Foundation
The following services are included in this functional area:
-
Banners and Channels Download Service
-
Get Banners
-
Get Channels
-
-
Location List Upload Service
- Manage Location Lists
-
Location Trait Upload Service
-
Create Location Trait
-
Delete Location Trait
-
Update Location Trait
-
-
Suppliers and Partners
-
Partner Download Service
-
Supplier and Partner Upload Service
-
Supplier Download Service
-
– Supplier Upload Service
-
-
Tax Rules
-
Tax Rule Download Service
-
Get Item Location Tax Rules
-
Get Store Tax Location
-
Get Tax Rule Groups
-
-
Tax Rule Upload Service
-
Banners and Channels Download Service
The following services are included in this functional area:
-
Get Banners
-
Get Channels
Get Banners
Endpoints
/MerchIntegrations/services/foundation/banners
Functional Area
Foundation
Business Overview
This service retrieves all Banners. This service takes an optional query parameter of bannerId to retrieve detail for specified banner id
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/banners
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| bannerId | No | String (4) | Banner ID |
Output – Banner
Table 5-147 Banner - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| bannerId | Yes | Number | This feld contains the banner id. |
| bannerName | Yes | String (120) | This feld contains the banner name. |
Sample Response Message
[
{
"bannerId": 1,
"bannerName": "Brick and mortar"
}
]
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| BANNER | Yes | No | No | No |
Get Channels
Endpoint
/MerchIntegrations/services/foundation/channels
Functional Area
Foundation
Business Overview
This service retrieves all Channel records. This service takes an optional query parameter of channel id to retrieve detail for specified channel
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/channels
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| channelId | No | String (4) | Channel Id |
Output – Channel
Table 5-148 Channel - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| channelId | Yes | Number | This feld contains the channel id. |
| channelName | Yes | String (120) | This feld contains the channel name. |
Table 5-148 (Cont.) Channel - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| channelType | Yes | String (6) | This feld contains the channel type. Channel type is a user confgured value defned in Code Detail with code_type as CHTY. Default values (which can be changed) are BANDM - Brick and Mortar, WEBSTR - Webstore, CAT - Catalog. |
| bannerId | Yes | Number | This feld contains the banner id associated with this Channel. |
Sample Response Message
[
{
"channelId": 1,
"channelName": "Brick and mortar",
"channelType": "BANDM",
"bannerId": 1
}
]
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| CHANNELS | Yes | No | No | No |
Location List Upload Service
The following services are included in this functional area:
- Manage Location Lists
Manage Location Lists
Functional Area
Foundation
Business Overview
This service allows for the creation and management of externally generated static location lists, as well as managing translated location list descriptions. Externally generated location lists are a list of explicitly provided stores and/or virtual warehouses. Static location lists cannot be rebuilt; no criteria is stored against externally generated static location lists. These lists can
only be maintained through the web service; no updates are allowed through the Merchandising user interface. Externally generated location lists are always public. Restricting the modification of an externally generated list should be handled in the source system.
This service supports three actions: Create, Update and Delete. The Create action allows the creation of a new location list, along with a list of one or more stores and/or stock-holding virtual warehouses that are not finishers to be grouped within. The Update action supports edits to location list definitions, adding or deleting of stores or virtual warehouses grouped in a list and adding or deleting translations of location list descriptions. The Delete action supports the ability to delete an entire location list. Physical warehouses can be passed to the service to be added to or deleted from a given list, the result will be the addition or removal of all virtual warehouses within the provided physical warehouse to/from the location list.
If Data Filtering is enabled in Merchandising through system options, you can control which users may use a given location list within Merchandising solutions by providing a filter organizational identifier with the list. This identifier can be for a chain, area, region or district depending on the Data Filtering Location List Organization Hierarchy level selected in system options. For example, if the system option level is area, then an area can be associated with a location list. Subsequently, only users with data filtering access to that area are able to use that location list on transactions throughout Merchandising. If no filter organizational identifier is associated with a location list, then any user can use the list within Merchandising.
Upon successful completion the service returns success along with the location list identifier and, if provided, the external reference. If there are upload validation errors the entire message is rejected and the service returns a failure status, along with a list of errors for each location list identifier, external reference, and location.
Service Type
PUT
ReST URL
MerchIntegrations/services/foundation/locationLists/manage
Input Payload Details
Table 5-149 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of Location List |
| Object | Data. |
Table 5-150 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | Yes | String (10) | Specifes the intended action to create, update or delete an externally generated location list. Valid values are CREATE, UPDATE, or DELETE. |
Table 5-150 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| locationList | No | Number (10) | Contains a location list identifer. When creating a location list, if a value is not provided, the system will create a unique sequence-generated identifer. For action as UPDATE, DELETE and if this value is provided, then it will be used to identify the location list. |
| locationListDescription | No | String (120) | Contains the location list description. This is mandatory feld with action as CREATE. |
| externalReferenceNo | No | Number (20) | This feld will optionally contain an external reference number used by an external system to identify the location list. For action as UPDATE and DELETE, if the location list id is not provided, then this feld is mandatory. |
| flterOrganizationHierarchy | No | Number (10) | When Data Filtering is enabled in the system, the Filter Organizational Hierarchy may contain the Organizational Hierarchy value to which the Location List is assigned. This feld will be used to control the Location Lists a user can use, based on whether the user has data fltering access to the Filter Organizational Hierarchy value |
| comments | No | String (2000) | Contains comments about the location list. For externally generated lists user may wish to provide information about the list origins or intended use. |
| locations | No | Collection of Object | References a collection of location list locations. |
| translations | No | Collection of Object | References a collection of translations of the location list description feld. |
Table 5-151 Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| locationType | Yes | String (1) | This feld will carry the location type of the location being added to or deleted from the location list. Valid values for |
| this feld are Store (S) or Warehouse (W). |
Table 5-151 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| location | Yes | Number (10) | This feld will contain a location to be added to or deleted from the location list. The provided location may be a store, a stockholding virtual warehouses that is not fnisher, or a physical warehouse. If a physical warehouse is provided, all stockholding/non-fnisher virtual warehouses within that physical warehouse will be added or deleted. |
| deleteInd | No | String (1) | This optional feld indicates if an existing location (or all virtual warehouses matching a physical warehouse location) should be deleted from a location list. This feld will not have a value as Y with action as CREATE. |
Table 5-152 Translations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This feld contains the language ID. |
| locationListDescription | No | String (120) | This feld contains the translated description of the location list in the provided language. This feld is mandatory is the translation tag is present. This feld is not needed for delete of an existing translation. |
| deleteInd | No | String (1) | This optional feld indicates if an existing translation should be deleted from a location list. |
Table 5-153 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| locationList | Yes | Number (10) | Contains a location list identifer. |
| externalReferenceNo | Yes | Number (20) | This feld will optionally contain an external reference number used by an external system to identify the location list. |
| errors | Yes | Array of String |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"action": "CREATE",
"locationList": 585313,
"locationListDescription": "location list description",
"externalReferenceNo": 157810,
"filterOrganizationHierarchy": 126882,
"comments": "comments",
"locations": [
{
"locationType": "S",
"location": 190104,
"deleteInd": "N"
}
],
"translations": [
{
"language": 2,
"locationListDescription": "Standortliste Beschreibung",
"deleteInd": "N"
}
]
}
]
}
Response Code: 200 (Success)
Table 5-154 ManageResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | |
| Object |
Table 5-155 ManageResponse.Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| locationList | Yes | Number (10) | Contains a location list identifer. |
| externalReferenceNo | Yes | Number (20) | This feld will optionally contain an external reference number used by an external system to identify the location list. |
Sample Response Message
{
"items": [
{
"locationList": 585313,
"externalReferenceNo": 157810
}
]
}
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 do not match the schema definition for this service. The element businessError will be present if the payload passes schema validation but an exception is caught while processing the business logic.
Table 5-156 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| locationList | Yes | Number (10) | Contains a location list identifer. |
| externalReferenceNo | Yes | Number (20) | This feld will optionally contain an external reference number used by an external system to identify the location list. |
| errors | Yes | Array of String |
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": [
{
"locationList": 585313,
"externalReferenceNo": 433378,
"errors": [
"String"
]
}
]
}
Location Trait Upload Service
The following services are included in this functional area:
-
Create Location Trait
-
Delete Location Trait
-
Update Location Trait
Create Location Trait
Functional Area
Foundation
Business Overview
The service is used to create location traits within Merchandising in order to keep it in sync with an external system that is used to maintain location traits. While a location trait is being created, this service will first validate that all required fields are present in the payload. Next, business level validations will be performed on the input information. Once all the validations are met, the location trait gets created in Merchandising.
Service Type
POST
ReST URL
MerchIntegrations/services/foundation/locationTrait/create
Input Payload Details
Table 5-157 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| traitId | Yes | Number (4) | The unique id number of the location trait. |
| description | Yes | String (120) | The description of the location trait. |
Sample Input Message
{
"traitId": 1000,
"description": "traitDesc"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Location Trait
Functional Area
Foundation
Business Overview
The service is used to delete an existing location trait from Merchandising in order to keep it in sync with an external system that is used to maintain location traits. While deleting a location trait, this service will first validate that all required fields are present in the payload. If all the validations are met, the location trait data is deleted from Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/foundation/locationTrait/delete
Input Payload Details
Table 5-158 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| traitId | Yes | Number (4) | The id number of the location trait |
| being deleted. |
Sample Input Message
{
"traitId": 1000
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Location Trait
Functional Area
Foundation
Business Overview
This service is used to update existing location traits within Merchandising in order to keep it in sync with an external system that is used to maintain location traits. While updating a location trait, this service will first validate that all required fields are present in the payload. Next, business level validations will be performed on the input information. Once all the validations are met, the location trait data gets updated in Merchandising.
Service Type
PUT
ReST URL
MerchIntegrations/services/foundation/locationTrait/update
Input Payload Details
Table 5-159 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| traitId | Yes | Number (4) | The unique id number of the location trait. |
| description | Yes | String (120) | The description of the location trait. |
Sample Input Message
{
"traitId": 1000,
"description": "traitDesc"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Suppliers and Partners
The following services are included in this functional area:
-
Partner Download Service
-
Supplier and Partner Upload Service
-
Supplier Download Service
-
Supplier Upload Service
Partner Download Service
Partner Publish Services
Endpoints
MerchIntegrations/services/foundation/partner
MerchIntegrations/services/foundation/partner/{partnerId}
Functional Area
Foundation - Partners
Business Overview
This service publishes partner master data to downstream consuming systems. There is no explicit filter in V_MERCHAPI_EXT_PARTNER_JSON, so functionally all rows from PARTNER are eligible for publication.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: PARTNER, PARTNER_ADDR
Additional business tables: ADDR, ADD_TYPE_MODULE, V_ADD_TYPE_TL, STATE, COUNTRY, PARTNER_CFA_EXT, ADDR_CFA_EXT
JSON cache table: MERCHAPI_EXT_PARTNER
JSON generation view: V_MERCHAPI_EXT_PARTNER_JSON
Builds the partner header from PARTNER, derives the primary address from ADDR joined to ADD_TYPE_MODULE, V_ADD_TYPE_TL, STATE, and COUNTRY, aggregates all partner addresses from ADDR, and adds partner- and address-level custom flex attributes from MERCHAPI_EXT_PARTNER_CFA and MERCHAPI_EXT_PARTNER_ADDR_CFA.
There is no explicit filter in V_MERCHAPI_EXT_PARTNER_JSON, so functionally all rows from PARTNER are eligible for publication.
The primary-address portion of the payload uses ADDR.MODULE = ‘PTNR’, ADD_TYPE_MODULE.PRIMARY_IND = ‘Y’, and ADDR.PRIMARY_ADDR_IND = ‘Y’; the address array includes all partner addresses for ADDR.MODULE = ‘PTNR’.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_PARTNER_JSON and apply no additional filter criteria; all PARTNER rows are eligible for publication.
The REBUILD branch updates changed and new rows and marks missing cache rows with DELETE_DATETIME.
ICL (Integration Change Log) table: ICL_RMS_PARTNER and ICL_RMS_ADDR (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on PARTNER, and address-related republishes are captured through ICL_RMS_ADDR for PARTNER_ADDR and PARTNER_ADDR_CFA_EXT changes.
ICL_RMS_ADDR rows are filtered to MODULE = ‘PTNR’ and ICL_TABLE_NAME IN (‘PARTNER_ADDR’,‘PARTNER_ADDR_CFA_EXT’), then republish the parent partner payload.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_PARTNER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_PARTNER_ADHOC_PROCESS → MERCHAPI_EXT_PARTNER_ADHOC_JOB
Webhook configuration api name: foundation/partner
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/partner
MerchIntegrations/services/foundation/partner/{partnerId}
Input Parameters for ​​MerchIntegrations/services/foundation/partner
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String (17) | Offset key ([partner type],[partner id] Example: AG,17) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-160 Input Parameter for “MerchIntegrations/services/foundation/partner/ {partnerId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| partnerId | Yes | String | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Input Parameters for MerchIntegrations/services/foundation/partner/{partnerId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| partnerId | Yes | String | Partner ID |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Partner
Table 5-161 PageResultsItemsMerchApiPartner - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-162 MerchApiPartner - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for partner details. |
| partnerType | No | String (6) | Specifes the type of partner. Valid partner types are held on the code tables under code type PTNR. |
| partnerId | No | String (10) | This feld contains the unique number that identifes the partner within the system. |
| partnerName | No | String (240) | This feld contains the partner’s description or name. |
| partnerNameSecondar y | No | String (240) | This feld contains the secondary name of the partner. |
| currencyCode | No | String (3) | This feld contains a code identifying the currency the partner uses for business transactions. |
| language | No | Number(6,0) | This feld contains the partner’s preferred language. |
| status | No | String (1) | This feld indicates if the partner is currently active. |
| contactName | No | String (120) | This feld contains the name of the partner’s representative contact. |
| contactPhone | No | String (20) | This feld contains the phone number of the partner’s representative contact. |
| contactFax | No | String (20) | This feld contains the fax number of the partner’s representative contact. |
| contactTelex | No | String (20) | This feld contains the telex number of the partner’s representative contact. |
| contactEmail | No | String (100) | This feld contains the email address of the partner’s representative contact. |
Table 5-162 (Cont.) MerchApiPartner - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| manufacturerTaxId | No | String (18) | This feld contains the manufacturer’s tax identifcation number. This feld is used for partner type Manufacturer. |
| principleCountryId | No | String (3) | This feld contains the country ID to which the partner is assigned. |
| lineOfCredit | No | Number(20,4) | This feld contains the line of credit the company has at the bank in the partner’s currency. This feld is not null when the partner type is Bank (BK). |
| outstandingCredit | No | Number(20,4) | This feld contains the total amount of credit that the company has used or has charged against in the partner’s currency. This feld is not null when the partner type is Bank (BK). |
| openCredit | No | Number(20,4) | This feld contains the total amount that the company can still charge against in the partner’s currency. This feld is not null when the partner type is Bank (BK). |
| yearToDateCredit | No | Number(20,4) | This feld contains the total amount of credit the company has used year to date in the partner’s currency. This feld is not null when the partner type is Bank (BK). |
| yearToDateDrawdown s | No | Number(20,4) | This feld contains the year-to-date payments the bank has made on behalf of the company in the partner’s currency. This feld is not null when the partner type is Bank (BK). |
Table 5-162 (Cont.) MerchApiPartner - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| taxId | No | String (20) | This feld contains the unique tax identifcation number of the partner. This will be used for reporting during the Customs Entry process. |
| terms | No | String (15) | This feld contains the payment terms for the partner. These terms specify when payment is due and if any discounts exist for early payment. If populated, they will default on any invoice entered for this partner. |
| servicePerfReqInd | No | String (1) | This feld indicates if the expense vendor’s services (for example, snowplowing and window washing) must be confrmed as performed before paying an invoice from that expense vendor. Valid values are Y and N. |
| invoicePayLocation | No | String (6) | This feld indicates where invoices from this expense vendor are paid, either at the store or centrally through corporate accounting. Valid values are S and C. This feld will only be populated for expense vendors, and should only be S if using ReSA to accept payment at the store. |
Table 5-162 (Cont.) MerchApiPartner - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| invoicecReceiveLocati on | No | String (6) | This feld indicates where invoices from this expense vendor are received, either at the store or centrally through corporate accounting. Valid values are S and C. This feld should only be populated when using invoice matching. |
| importCountryId | No | String (3) | This feld contains the import country of the Import Authority. This feld is not populated for other partner types. |
| primaryImportAuthIn d | No | String (1) | This feld indicates if an Import Authority is the primary Import Authority for an import country. This feld will always be N for other partner types. There must be one and only one primary Import Authority for each country associated with an Import Authority on the partner table. |
| comments | No | String (2000) | This feld contains any comments associated with the partner. |
| transferEntityId | No | Number(10,0) | This feld contains the transfer entity with which an external fnisher is associated. |
Table 5-162 (Cont.) MerchApiPartner - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| vatRegion | No | Number(4,0) | This feld contains the tax region with which a partner is associated. Valid values will be found on the VAT_REGION table. If SYSTEM_OPTIONS.DEF AULT_TAX_TYPE is SVAT or GTS, then each partner will be required to have an associated VAT_REGION. For other DEFAULT_TAX_TYPE values, VAT functionality is not used and PARTNER.VAT_REGION will not be required. |
| orgUnitId | No | Number(15,0) | This feld contains the org unit ID with which the partner is associated. |
| autoRcvStockInd | No | String (1) | This feld indicates whether the system will update the stock for the external fnisher when the frst leg of the transfer is shipped. Valid values are Y and N. |
| primaryAddressType | No | String (2) | This feld specifes the type for the address. Valid values are: 01 - Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
| primaryAddressTypeD escription | No | String (40) | This feld specifes the address type description. |
| primaryAddressAdd1 | No | String (240) | This feld contains the frst line of the address. |
| primaryAddressAdd2 | No | String (240) | This feld contains the second line of the address. |
| primaryAddressAdd3 | No | String (240) | This feld contains the third line of the address. |
Table 5-162 (Cont.) MerchApiPartner - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddressCity | No | String (120) | This feld contains the name of the city that is associated with the address. |
| primaryAddressState | No | String (3) | This feld contains the abbreviation of the state for the address. |
| primaryAddressStateN ame | No | String (120) | This feld contains the full name of the state for the address. |
| primaryAddressCount ryId | No | String (3) | This feld contains the country where the address exists. |
| primaryAddressCount ryName | No | String (120) | This feld contains the country name for the address. |
| primaryAddressPost | No | String (30) | This feld contains the zip code for the address. |
| primaryAddressContac tName | No | String (120) | This feld contains the name of the contact for the partner at this address. |
| primaryAddressContac tPhone | No | String (20) | This feld contains the phone number of the contact person at this address. |
| primaryAddressContac tTelex | No | String (20) | This feld contains the telex number of the partner’s representative contact. |
| primaryAddressContac tFax | No | String (20) | This feld contains the fax number of the contact person at this address. |
| primaryAddressContac tEmail | No | String (100) | This feld contains the email address of the partner’s representative contact. |
| primaryAddressCount y | No | String (250) | This feld contains the county name for the address. |
| primaryAddressJurisdi ctionCode | No | String (10) | This feld identifes the jurisdiction code for the country-state relationship. |
| createDateTime | No | dateTime | This feld holds the date and time when the record was inserted (UTC). |
Table 5-162 (Cont.) MerchApiPartner - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| updateDateTime | No | dateTime | This feld holds the date and time when the record was updated (UTC). |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the partner. |
| address | No | Collection of Object | This list holds address details for the partner. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the partner record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-163 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-164 Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressKey | No | Number(11,0) | This feld contains the unique address key. |
| addressType | No | String (2) | This feld specifes the type for the address. Valid values are: 01 - Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
| addressTypeDescriptio n | No | String (40) | This feld specifes the address type description. |
| primaryAddressInd | No | String (1) | This feld indicates whether the address is the primary address for the address type. |
| add1 | No | String (240) | This feld contains the frst line of the address. |
| add2 | No | String (240) | This feld contains the second line of the address. |
| add3 | No | String (240) | This feld contains the third line of the address. |
| city | No | String (120) | This feld contains the name of the city that is associated with the address. |
| state | No | String (3) | This feld contains the state abbreviation that is associated with the address. |
| stateName | No | String (120) | This feld contains the state description that is associated with the address. |
| countryId | No | String (3) | This feld contains the country where the address exists. |
| countryName | No | String (120) | This feld contains the country description that is associated with the address. |
| post | No | String (30) | This feld contains the zip code for the address. |
| contactName | No | String (120) | This feld contains the name of the contact person at this address. |
Table 5-164 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| contactPhone | No | String (20) | This feld contains the phone number of the contact person at this address. |
| contactTelex | No | String (20) | This feld contains the telex number of the contact person at this address. |
| contactFax | No | String (20) | This feld contains the fax number of the contact person at this address. |
| contactEmail | No | String (100) | This feld contains the email address of the contact person at this address. |
| phone2Type | No | String (6) | This feld contains the type of the phone number stored in the phone2 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| phone2 | No | String (20) | This feld contains an additional phone number associated with the address. |
| phone3Type | No | String (6) | This feld contains the type of the phone number stored in the phone3 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| phone3 | No | String (20) | This feld contains a second additional phone number associated with the address. |
Table 5-164 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| latitude | No | String (30) | This feld contains the north-south geographic coordinate of the address, represented in decimal degrees. |
| longitude | No | String (30) | This feld contains the east-west geographic coordinate of the address, represented in decimal degrees. |
| county | No | String (250) | This feld contains the county where the address exists. |
| jurisdictionCode | No | String (10) | This feld contains the ID associated with the tax jurisdiction of the country-state relationship. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the warehouse’s address. |
Table 5-165 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"partnerType": "AG",
"partnerId": null,
"partnerName": null,
"partnerNameSecondary": null,
"currencyCode": "USD",
"language": 1,
"status": null,
"contactName": "contactName",
"contactPhone": "1800800800",
"contactFax": "617-897-0902",
"contactTelex": null,
"contactEmail": "someone@email.com",
"manufacturerTaxId": null,
"principleCountryId": null,
"lineOfCredit": 1.0,
"outstandingCredit": 1.0,
"openCredit": 1.0,
"yearToDateCredit": 1.0,
"yearToDateDrawdowns": 1.0,
"taxId": null,
"terms": "108",
"servicePerfReqInd": null,
"invoicePayLocation": "S",
"invoicecReceiveLocation": null,
"importCountryId": null,
"primaryImportAuthInd": null,
"comments": null,
"transferEntityId": 1,
"vatRegion": 1000,
"orgUnitId": 1111111111,
"autoRcvStockInd": null,
"primaryAddressType": "01",
"primaryAddressTypeDescription": null,
"primaryAddressAdd1": "101 First Street",
"primaryAddressAdd2": "201 Second Street",
"primaryAddressAdd3": null,
"primaryAddressCity": "Minneapolis",
"primaryAddressState": "MN",
"primaryAddressStateName": "stateName",
"primaryAddressCountryId": "US",
"primaryAddressCountryName": "countryName",
"primaryAddressPost": "55555-1234",
"primaryAddressContactName": "contactName",
"primaryAddressContactPhone": "1800800800",
"primaryAddressContactTelex": null,
"primaryAddressContactFax": "617-897-0902",
"primaryAddressContactEmail": "someone@email.com",
"primaryAddressCounty": "Some County",
"primaryAddressJurisdictionCode": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"address": [
{
"addressKey": 114772,
"addressType": "01",
"addressTypeDescription": null,
"primaryAddressInd": "Y",
"add1": "101 First Street",
"add2": "201 Second Street",
"add3": null,
"city": "Minneapolis",
"state": "MN",
"stateName": "MN",
"countryId": "US",
"countryName": "US",
"post": "55555-1234",
"contactName": "Laura Johnson",
"contactPhone": "1800800800",
"contactTelex": null,
"contactFax": "617-897-0902",
"contactEmail": "someone@email.com",
"phone2Type": "WO",
"phone2": "5551234567",
"phone3Type": "WO",
"phone3": "5551234567",
"latitude": "44.38129",
"longitude": "-92.03521",
"county": null,
"jurisdictionCode": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Address
| Name | Data Type | Description |
|---|---|---|
| addressKey | Number | This feld contains the unique address key. |
| addressType | String | This feld specifes type for the address. Valid values are: 01 -Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
| addressTypeDescription | String | This feld specifes address type description. |
| primaryAddressInd | String | This feld indicates whether the address is the primary address for the address type. |
| add1 | String | This feld contains the frst line of the address. |
| add2 | String | This feld contains the second line of the address. |
| add3 | String | This feld contains the third line of the address. |
| city | String | This feld contains name of the city that is associated with the address. |
| state | String | This feld contains name of the state that is associated with the address. |
| stateName | String | This feld contains name of the state description that is associated with the address. |
| countryID | String | This feld contains name of the country that is associated with the address. |
| countryName | String | This feld contains name of the country description that is associated with the address. |
| post | String | This feld contains the zip code for the address. |
| contactName | String | This feld contains the name of the contact person at this address. |
| contactPhone | String | This feld contains the phone number of the contact person at this address. |
| contactTelex | String | This feld contains the telex number of the warehouse’s representative contact. |
| contactFax | String | This feld contains the fax number of the contact person at this address. |
| contactEmail | String | This feld contains email address of the warehouse’s representative contact. |
| county | String | This feld contains the county where the address exists. |
| jurisdictionCode | String | This feld contains the ID associated to the tax jurisdiction of the country-state relationship. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttribute | This list holds custom fex attributes for the address. |
Output - Custom Flex Attribute
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| updateDateTime | String | This feld will hold the date time when the custom fex attribute was last updated. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON output:
{
"items": [
{
"action": "INSERT",
"partnerType": "E",
"partnerId": "B",
"partnerName": "Packaging External Finisher updated",
"partnerNameSecondary": "Packaging External Finisher",
"currencyCode": "USD",
"language": null,
"status": "A",
"contactName": "Elinor",
"contactPhone": "1545223556",
"contactFax": null,
"contactTelex": null,
"contactEmail": null,
"manufacturerTaxId": null,
"principleCountryId": "US",
"lineOfCredit": null,
"outstandingCredit": null,
"openCredit": null,
"yearToDateCredit": null,
"yearToDateDrawdowns": null,
"taxId": null,
"terms": "1",
"servicePerfReqInd": "N",
"invoicePayLocation": null,
"invoicecReceiveLocation": null,
"importCountryId": null,
"primaryImportAuthInd": "N",
"comments": null,
"transferEntityInd": 2000,
"vatRegion": null,
"orgUnitId": 1111111111,
"autoRcvStockInd": "N",
"primaryAddrAdd1": "Add1",
"primaryAddrAdd2": null,
"primaryAddrAdd3": null,
"primaryAddrCity": "City",
"primaryAddrState": null,
"primaryAddrStateName": null,
"primaryAddrCountryId": "US",
"primaryAddrCountryName": "United States of America",
"primaryAddrPost": null,
"primaryAddrContactName": null,
"primaryAddrContactPhone": null,
"primaryAddrContactTelex": null,
"primaryAddrContactFax": null,
"primaryAddrContactEmail": null,
"primaryAddrOracleVendorSiteId": null,
"primaryAddrCounty": null,
"primaryAddrJurisdictionCode": null,
"createDateTime": "2021-05-07T09:23:59",
"updateDateTime": "2021-05-07T09:23:59",
"customFlexAttribute": [{
"name": "LANGUAGE",
"value": "German",
"valueDate": null,
"createDateTime": "2021-02-17T00:00:00",
"updateDateTime": "2021-02-17T00:00:00"
}, {
"name": "COMPANY_SIZE",
"value": "525",
"valueDate": null,
"createDateTime": "2021-02-17T00:00:00",
"updateDateTime": "2021-02-17T00:00:00"
}],
"address": [{
"addressKey": 20069,
"addressType": "05",
"primaryAddressInd": "Y",
"add1": "Add1",
"add2": null,
"add3": null,
"city": "City",
"state": null,
"stateName": null,
"countryId": "US",
"countryName": "United States of America",
"post": null,
"contactName": null,
"contactPhone": null,
"contactTelex": null,
"contactFax": null,
"contactEmail": null,
"oracleVendorSiteId": null,
"county": null,
"jurisdictionCode": null,
"createDateTime": "2021-02-16T00:00:00",
"updateDateTime": "2018-09-20T00:00:00",
"customFlexAttribute": null
}, {
"addressKey": 20068,
"addressType": "01",
"primaryAddressInd": "Y",
"add1": "Add1",
"add2": null,
"add3": null,
"city": "City",
"state": null,
"stateName": null,
"countryId": "US",
"countryName": "United States of America",
"post": null,
"contactName": null,
"contactPhone": null,
"contactTelex": null,
"contactFax": null,
"contactEmail": null,
"oracleVendorSiteId": null,
"county": null,
"jurisdictionCode": null,
"createDateTime": "2021-02-16T00:00:00",
"updateDateTime": "2018-09-20T00:00:00",
"customFlexAttribute": null
}],
"hasMore": false,
"limit": 10000,
"count": 3,
"links": [
{
"href": "https://rex.retail.us-phoenix-1.ocs.oc-test.com/rgbu-rex-rgbu-
dev1-mfcs19-1/MerchIntegrations/services/foundation/partner?
limit=10000&since=1970-01-01T00:00:00.001Z&before=2022-03-25T10:34:36.748111+0
0:00",
"rel": "self"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_PARTNER | Yes | No | Yes | Yes |
| ICL_RMS_ADDR | Yes | No | Yes | Yes |
| MERCHAPI_PARTNER | Yes | Yes | Yes | Yes |
| PARTNER_CFA_EXT | Yes | No | No | No |
| ADDR_CFA_EXT | Yes | No | No | No |
| V_ MERCHAPI_EXT_PARTNER_JSON | Yes | No | No | No |
Supplier and Partner Upload Service
Manage Suppliers and Partners
Functional Area
Foundation - Suppliers and Partners
Business Overview
This service is used for the creation and update of suppliers, supplier sites, partners, org unit association, addresses and flex attributes from an external application.
When new suppliers or supplier sites are sent from an external system, they must contain the required header details, as well as address and org unit information. One or more org units can be associated with a supplier site using this service, if applicable. When creating a supplier parent, providing the supplier site information is optional. However, when creating or updating supplier sites, both supplier parent and supplier site information must be provided.
The following defaults are performed by the service:
Yes/No indicators are defaulted to No if not provided.
Settlement code - defaulted to N if not provided.
EDI sales report frequency - defaulted to NULL if the provided value is not D or W.
Supplier Quantity Level - defaulted to EA if not provided.
Inventory Management Level - Defaulted to D/S if not provided. Updating this value later will trigger deletion of all existing Supplier Inventory Management Records.
Delivery Policy - Defaulted to NEXT if not provided.
Invoice Gross Net - Defaulted to Net if not provided.
Mandatory addresses as defined in the system are defaulted when creating address records even if the request does not contain the mandatory address types.
Finance Integration Specific Enrichment Workflow
The dependence of this service on the FINANCIAL_AP system option has been functionally migrated to the External Supplier Management system option and a set of sub options
discussed below. When External Supplier Management is enabled, the optional attribute vendorTypeCode in the payload will be used to identify if the inbound information should be used to create or update a supplier or a partner record in Merchandising. External financial systems can utilize this attribute to create partners in Merchandising. The vendorTypeCode will be validated against data available in the Vendor type code mapping table in Merchandising that holds detail of whether a specific code maps to a supplier or partner and the type of partner intended. The vendor type code mapping must be setup via the Merchandising spreadsheet upload functionality prior to the integration of supplier/partner records. Additionally, if External Supplier Management is opted for the payload would be subject to enrichment based on the below options.
Filter inactive suppliers - Controls whether inactive suppliers should be excluded in the Create subscription.
Use Purchase Pay Site Flag - Controls if the Purchase Pay site Flags should be used to create and manage the ‘Purchasing Address’ and ‘Remittance Address’ respectively if a specific address type isn’t specified in the payload.
Use Site Defaults - Controls if a subset of supplier details should be populated using information at the site level if not specified for the supplier.
Use Supplier Alternate Name - Controls if the secondary name on the payload should be used for Supplier Description Creation as opposed to the Supplier Name
As part of the Financial Integration specific workflow, supplier/partner integration into Merchandising will be subject to the below.
While creating a new supplier, there must be at least one supplier site that is either a payment site or purchasing site as part of the payload. If there is only one supplier site associated, it must be both a purchasing and payment site.
Freight Terms, Payment Terms, Language, Currency, Contact Name, and Contact Phone information will be defaulted from the supplier site (primary pay site/procurement site/payment site) to the supplier record.
Address Type is typically not expected from the external financial system and will be determined using the procurement site and payment site attributes if the Purchase Pay Site Flag is set. An address type of 04 will be created for a procurement site while an address type of 06 will be created for a payment site. If the supplier site has both procurement and payment site flags set , both address types 04 and 06 will be created.
Contact specific defaulting will be based on the below
If there are multiple contacts for a supplier site, the contact name with the lowest external reference key (earliest record) will be used as the default contact name for the supplier site.
If there are multiple contacts for a supplier site and the contact phone/contact fax for the supplier site is not provided, it will be defaulted to 999999999.
If no contact name is available for the supplier and supplier site, it will be set to ‘UNKNOWN’.
If no contact phone is available for the supplier and supplier site, it will be set to 0.
If no contact fax/contact email is available for the supplier site, it will be set to its addresses’ contact fax/contact email.
If default tax type is SVAT or GTS, vat region on the supplier/partner record will be defaulted from a store having the same state in the address as the payment site or procurement site address. If state is not provided, country will be used as the basis for defaulting. If a default value is not found, the supplier/supplier site will be created with a null vat region and set to Inactive status until the vat region is associated in Merchandising.
The Use Alternate Supplier Site Name system option will control if the supplier site name will be substituted with the secondary name in the payload and vice versa. This is intended to allow for a more descriptive supplier name integration into Merchandising if the site name carried an abridged description/key. Substitution will only be performed if supplier site secondary name is provided. This system option can be managed via the System Options screen.
For the nullable fields, if no value is passed or value passed is NULL in the payload, then the service will update the corresponding fields in the database to NULL. For non-nullable fields the existing value will be retained.
Note:
Creation of partners of type Escheat-State and Escheat-Country will not be supported through this integration.
If the vendorTypeCode is not provided in the payload, a supplier record will be created.
The payload provides reference id fields for certain attributes that will enable the external financial system to send its own IDs for these attributes as opposed to sending IDs generated by Merchandising. These are listed below.
languageReferenceId - defaulted to primary language if not provided.
termsReferenceId
freightTermsReferenceId
orgUnitReferenceId
Usage of the external reference IDs is subject to the assumption that these external references have been setup and maintained against the attribute in Merchandising. For example, the external financial system can send a terms reference id provided that the same information has been sent to Merchandising as part of the terms import process. This will allow for Merchandising to use the terms reference id provided to cross reference and identify the correct term in Merchandising to be associated with the supplier/partner record being created. If an external reference id is provided for any attribute say terms it will be cross-referenced against the attribute definition tables (terms tables in this case) for a match. If the crossreference check returns multiple records one of these will be associated with the supplier/ partner record being created. If no matching data is found an error will be raised.
Partner Integration
If the vendor type code specified maps to a partner, the sites in the inbound payload will correspond to the partner record created. The partner record will however hold a reference of the supplier record associated with the site via the parent reference ID and parent name fields stored in the partner table. The defaulting logic and validations for partners is similar to that supplier sites with the below exceptions.
For new external finisher type partners, the service defaults the transfer entity from the resolved org unit. If the org unit or matching transfer entity cannot be resolved, the partner is created in Inactive status until the transfer entity is populated in Merchandising. Existing partner updates do not override the stored transfer entity.
For Bank type partners, the fields Line of Credit, Outstanding Credit, Open Credit, Year to Date Credit and Year to Date Drawdowns will be defaulted to 0. Principle Country ID will be defaulted from the address as also done for the Import Authority partner type).
Any information present in the webservice request will update the existing attributes with the following exceptions- (contact fax, contact pager, ship method, payment method, contact telex, contact email, default lead time, duns number, duns loc, tax id, vat region). When modifying a
supplier parent, providing the supplier site information is optional. Updates will be accepted for both supplier and partner irrespective of status. Service Type POST ReST URL MerchIntegrations/services/foundation/suppliers/create Input Payload Details Create - Object. See list of elements for detail Items - Object. See list of elements for detail Attributes - Object. See list of elements for detail CustomFlexAttribute - Object. See list of elements for detail LocalizationExtensions - Object. See list of elements for detail LocalizationExtensions.Attributes - Object. See list of elements for detail SupplierSites - Object. See list of elements for detail OrgUnit - Object. See list of elements for detail Address - Object. See list of elements for detail Address.Address - Object. See list of elements for detail Response Code: 200 (Success) CreateResponse - Object. See list of elements for detail CreateResponse.Items - Object. See list of elements for detail CreateResponse.Items.SupplierSites - Object. See list of elements for detail CreateResponse.Items.SupplierSites.Address - Object. See list of elements for detail
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.
Update Suppliers and Partners (deprecated)
Functional Area
Foundation - Suppliers and Partners
Business Overview
Deprecated in 25.0.201.0: Scheduled for Removal in 2 years. Use MerchIntegrations/ services/foundation/suppliers/create .
This service modifies existing parent suppliers, supplier sites, partners, org unit association, addresses and flex attributes. Any information present in the webservice request will update the existing attributes with a few exceptions, mentioned below. When modifying a supplier parent, providing the supplier site information is optional.
The following attribute values are defaulted to the old value if not provided in the request:
-
contact name
-
contact phone
-
contact fax
-
contact pager
-
ship method
-
payment method
-
contact telex
-
contact email
-
default lead time
-
duns number
-
duns loc
-
tax id
-
vat region
When modifying supplier sites, it is expected that both supplier parent and supplier site information will be provided. Certain supplier attribute values are defaulted to the old values if not provided in the update request. Refer to the list of attributes under Modifying a Supplier Parent. Attributes not in the above list will be replaced by user-provided values.
Existing address details are overwritten by the information contained in the address section of the service request. Addresses with address types 04 - Order and 06 - Remittance, however, are deleted from the system if these addresses are not included in the request.
When Financials integration is enabled ( financial_ap = ‘A’ ), the optional attribute vendorTypeCode is used to identify between suppliers and partners. External financial systems utilizing this attribute can also update partners in Merchandising.
Note
The vendor type code mapping must be set up through the Merchandising spreadsheet upload functionality.
Partner integrations of type Escheat-State and Escheat-Country are not be supported through this interface. If vendorTypeCode is blank, it is assumed that a supplier is being updated.
The external financial system can send its own ID for certain supplier attributes on optional reference fields in the payload. These external reference IDs do not need to be set up against the relevant data to enable their usage. Reference IDs that are available in the payload are listed below. If provided these will be used to cross-reference and identify the corresponding Merchandising ID and data. If the external ID provided maps to multiple records in the foundation data, then one of the records will be associated with the supplier/partner record being created. An error will be raised if no match is found.
-
languageReferenceId - defaulted to primary language if not provided.
-
termsReferenceId
-
freightTermsReferenceId
-
orgUnitReferenceId
Updates will be accepted for both supplier and partner irrespective of status.
Service Type
PUT
ReST URL
MerchIntegrations/services/foundation/suppliers/update
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Table 5-166 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of suppliers. |
Table 5-167 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplierReferenceNo | Yes | String (32) | This holds the ID for the supplier or parent partner used in the external fnancial system. It is populated by the integration that brings suppliers or partners from external fnancial systems into Merchandising. This ID and the supplier site ID or partner ID can be used to join to information about the supplier in the external system. |
| supplier | No | Number (10) | Unique identifying number for a supplier parent within the system. When a new supplier is added to the system, this value can either be provided by the user or it can be system generated. Leave this feld as null for a system generated supplier ID. |
| vendorTypeCode | No | String (50) | This column contains the identifer for the vendor type from the external fnancial system. |
| attributes | Yes | Record | This contains supplier parent information. |
| supplierSites | No | Collection of Object | References a collection of supplier sites. |
Table 5-168 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplierName | Yes | String (240) | This feld contains the supplier or |
| partner name. |
Table 5-168 (Cont.) Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplierNameSecondary | No | String (240) | This type can hold secondary name for the supplier or partner with a max length of 240 characters. |
| contactName | No | String (120) | This feld contains the name of the supplier or partner representative contact for this site. |
| contactPhone | No | String (20) | This feld contains a telephone number for the supplier’s or partner’s representative contact. |
| contactFax | No | String (20) | This feld contains a fax number for the supplier’s or partner’s representative contact. |
| contactPager | No | String (20) | This feld contains a pager number for the supplier’s representative contact. |
| supplierStatus | Yes | String (1) | This feld contains the status of the supplier or partner. Valid values include: ‘A’ for an active supplier or ‘I’ for an inactive supplier. The status of a supplier will be checked when an order is being created to make certain the supplier is active. |
| qualityControlPercentage | No | Number (12,4) | This feld contains the percentage of items per receipt that will be marked for quality checking. If the feld is null and qc_ind is Y, existing value will be retained. |
| qualityControlFrequency | No | String (2) | This feld contains the frequency for which items per receipt will be marked for quality checking. If the feld is null and qc_ind is Y, existing value will be retained. |
| vendorCheckingPercentage | No | Number (12,4) | This feld contains percentage of items per receipt that will be marked for vendor checking. If the feld is null and vc_ind is Y, existing value will be retained. |
| vendorCheckingFrequency | No | Number (2) | This feld contains the frequency for which items per receipt that will be marked for vendor checking. If the feld is null and vc_ind is Y, existing value will be retained. |
| currencyCode | No | String (3) | This feld contains code identifying the currency the supplier site or partner uses for business transactions. |
| language | No | Number (6) | This feld contains the suppliers or partners preferred language. This feld is provided for custom purchase orders in a specifed language. |
Table 5-168 (Cont.) Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| languageReferenceId | No | String (50) | This feld is primarily used to hold the ID for the language used in the external fnancial system. |
| terms | No | String (15) | This feld contains an indicator identifying the purchase terms that will default when an order is created for the supplier site or partner. These terms specify when payment is due and if any discounts exist for early payment. |
| termsReferenceId | No | String (50) | This column holds the ID for the supplier or partner terms used in the external fnancial system. |
| freightTerms | No | String (30) | This feld contains code indicating what freight terms will default when an order is created for the supplier site. |
| freightTermsReferenceId | No | String (50) | This column holds the ID for the freight terms used in the external fnancial system. |
| minReturnValue | No | Number (20,4) | This feld contains a value if the supplier site requires a minimum merchandise value to be returned to accept the return. Returns of less than this amount will not be processed by the system. This feld is stored in the supplier’s currency. |
| returnCourier | No | String (250) | This feld contains the name of the courier that should be used for returns to the supplier site. |
| handlingPercentage | No | Number (12,4) | This feld contains the default percent to be multiplied by the return’s total cost to determine the handling cost for the return. |
| ediChannel | No | Number (4) | If the supplier is an EDI supplier and supports vendor initiated ordering, this feld will contain the channel ID for the channel to which all inventory for these types of orders will fow. This feld is used when a vendor initiated order is created for a physical warehouse to determine the virtual warehouse within the physical warehouse to which the inventory will fow. The virtual warehouse belonging to the indicated channel will be used. This will only be used in a multichannel environment. Valid values are Yes (Y) and No (N). |
Table 5-168 (Cont.) Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| costChangeVariancePercenta ge | No | Number (12,4) | This feld contains a percent that determines whether a cost change can be auto approve via induction. If the cost change falls within these boundaries, it will be approved when uploaded. |
| costChangeVarianceAmt | No | Number (20,4) | This feld contains an amount (in supplier currency) that determines whether a cost change can be auto approve via induction. If the cost change falls within these boundaries, it will be approved when uploaded. |
| shipMethod | No | String (6) | This feld contains the default method used to ship the items on the purchase order from the supplier site. Valid values are held in the Shipment Type code type, SHPM. Examples of shipment types are Vessel, Non- Container (10 ), Vessel, Container (11), Rail, Non-container (20) and Rail, Container (21). |
| paymentMethod | No | String (6) | This feld indicates the default method for how purchase orders for this site will be paid. Valid values are in the code type PYMT(Payment Method). Examples are Open Account(OA), Letter of Credit(LC) and Wire Transfer(WT). |
| contactTelex | No | String (20) | This feld contains the telex number of the partner or suppliers representative contact. |
| contactEmail | No | String (100) | This feld contains the email address of the partner or suppliers representative contact. |
| vatRegion | No | Number (4) | This feld contains the unique identifying number for the VAT region applicable for this site. |
| invoicePayLocation | No | String (6) | This feld indicates where invoices from this supplier site or partner are paid - at the store (S) or centrally through corporate accounting (C). |
| invoiceReceiveLocation | No | String (6) | This feld indicates where invoices from this supplier site or partner are received - at the store (S) or centrally through corporate accounting (C). |
| comments | No | String (2000) | This feld contains any miscellaneous comments associated with the supplier or partner. |
Table 5-168 (Cont.) Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| defaultItemLeadTime | No | Number (4) | This feld holds the default lead time for the supplier site. The lead time is the time the supplier needs between receiving an order and having the order ready to ship. This value will be defaulted to item/supplier relationships. |
| dunsNumber | No | String (9) | The Dun and Bradstreet number of the supplier. |
| dunsLocation | No | String (4) | The Dun and Bradstreet number of the location of the supplier. |
| defaultPricingControl | No | String (1) | Indicates the default value of the pricing control attribute at the supplier site level when supplier- controlled pricing for Consignment/ Concession ownership model is used within the Merchandising suite of solutions. Valid values are: R - Retailer, S - Supplier. |
| generateConsignmentOrderI nd | No | String (1) | This feld will allow specifcation of whether Merchandising is required to generate POs against consignment sales. Valid values are: ‘Y’ - MFCS will create PO, ‘N’ - POs will get created externally. If supplier parent, this is defaulted to Y. If supplier site and feld is null, this is defaulted to Y. |
| generateSelfInvoicingInd | No | String (1) | This feld will allow specifcation of whether self-invoicing needs to be done for consignment purchases or if vendor will send invoices to be matched. Valid values are: ‘Y’ - MFCS will create invoice, ‘N’ - Invoice will get created by vendor. If supplier parent, this is defaulted to Y. If supplier site and feld is null, this is defaulted to Y. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
Table 5-168 (Cont.) Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dealUploadStatus | No | String (6) | Indicates the status in which the deal needs to be uploaded into the system by upload batch process. Valid values are in the code type DLUS(Deal Upload Status). Examples are Worksheet(W), Submitted(S) and Approved(A). If the supplier does not exist and there is no deal_upload_status input then this is defaulted to W (worksheet). |
| taxId | No | String (20) | This feld contains the unique tax identifcation number of the supplier site or partner. |
| procurementSiteInd | No | String (1) | Indicates if the supplier site or partner is a procurement site used for purchasing. |
| paymentSiteInd | No | String (1) | Indicates if the supplier site or partner is a payment site used for invoice payment. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-169 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-170 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-171 LocalizationExtensions.Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-172 SupplierSites - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplierSiteReferenceNo | Yes | String (32) | This holds the ID for the supplier or partner used in the external fnancial system. It is populated by the integration that brings suppliers or partners from external fnancial systems into Merchandising. This ID and the supplier site ID or partner ID can be used to join to information about the supplier in the external system. |
| supplierSite | No | Number (10) | Unique identifying number for a supplier site or partner within the system. When a new supplier site is added to the system, this can either be provided by the user or it can be system generated. Leave this feld as null for a system generated supplier site ID. |
| attributes | Yes | Record | This contains supplier site attributes. |
| orgUnit | Yes | Collection of Object | References a collection of supplier org units. |
| address | Yes | Collection of Object | References a collection of supplier addresses. |
Table 5-173 OrgUnit - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orgUnitId | No | Number (15) | This feld contains org_unit_id. |
| orgUnitReferenceId | No | String (50) | This column holds the organizational unit ID used in the external fnancial system. |
| primaryPaySite | No | String (1) | This feld contains the primary pay site indicator. |
Table 5-174 Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressReferenceKey | No | String (32) | This column contains the external reference ID used to distinguish between different addresses. |
| addressKey | No | Number (11) | This column contains a unique number used to distinguish between different addresses. |
| address | Yes | Record | This contains the supplier’s address information. |
Table 5-175 Address.Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressType | No | String (2) | This contains the address type. Valid values (e. g. 01 - Business, 02 - Postal, etc. ) are on the add_type table. If any address types have been fagged as mandatory and are not included when the supplier or partner is being created, then if an ordering address has been included, the missing mandatory addresses will be defaulted to that address. If not, then the remittance address will be used. If neither an order nor remittance address is included, then the frst address sent is used. |
| primaryAddressInd | No | String (1) | This column indicates whether the address is the primary address for the address type. |
| add1 | Yes | String (240) | This feld contains the frst line of the address. |
| add2 | No | String (240) | This feld contains the second line of the address. |
| add3 | No | String (240) | This feld contains the third line of the address. |
| city | Yes | String (120) | This column contains the name of the city that is associated with the address. |
| state | No | String (3) | This column contains the state abbreviation for the address. |
| country | Yes | String (3) | This column contains the country where the address exists. |
| post | No | String (30) | This column contains the zip code for the address. |
| contactName | No | String (120) | This column contains the name of the contact for the supplier or partner at this address. |
| contactPhone | No | String (20) | This column contains the phone number of the contact person at this address. |
| contactFax | No | String (20) | This column contains the fax number of the contact person at this address. |
| contactEmail | No | String (100) | This column contains the email address of the partner or suppliers representative contact. |
| jurisdictionCode | No | String (10) | ID associated to the tax jurisdiction of the country-state relationship. |
Table 5-175 (Cont.) Address.Address - Object. See list of elements for detail
Element Name Required Data Type Description customFlexAttribute No Collection of References a collection of custom Object flexible attributes. This collection is treated as a single group and should include all named flexible attributes for the business entity. If any configured named attribute is missing from the input collection, its value will be set to NULL. contactTelex No String (20) This field contains the telex number of the partner or suppliers representative contact. Sample Input Message { "items": [ { "supplierReferenceNo": "1", "supplier": 3026, "vendorTypeCode": null, "attributes": { "supplierName": "Prime Hardware", "supplierNameSecondary": "Prime Hardware 2", "contactName": "Alexandre Roma", "contactPhone": "234-112-7654", "contactFax": "234-112-7654", "contactPager": null, "supplierStatus": "A", "qualityControlPercentage": 3, "qualityControlFrequency": "5", "vendorCheckingPercentage": 3, "vendorCheckingFrequency": 2, "currencyCode": "USD", "language": 1, "languageReferenceId": null, "terms": "108", "termsReferenceId": null, "freightTerms": "03", "freightTermsReferenceId": null, "minReturnValue": 3.55, "returnCourier": "125", "handlingPercentage": 3, "ediChannel": 2, "costChangeVariancePercentage": 9.65, "costChangeVarianceAmt": 9.65, "shipMethod": "30", "paymentMethod": "OA", "contactTelex": "234-112-7654", "contactEmail": "a_roma@primehardware.com", "vatRegion": 1000, "invoicePayLocation": "S",
"invoiceReceiveLocation": "C",
"comments": null,
"defaultItemLeadTime": 7,
"dunsNumber": "108890",
"dunsLocation": "1055",
"defaultPricingControl": "R",
"generateConsignmentOrderInd": "Y",
"generateSelfInvoicingInd": "Y",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"dealUploadStatus": "W",
"taxId": null,
"procurementSiteInd": "N",
"paymentSiteInd": "N",
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
},
"supplierSites": [
{
"supplierSiteReferenceNo": "2",
"supplierSite": 3026001,
"attributes": {
"supplierName": "Prime Hardware",
"supplierNameSecondary": "Prime Hardware 2",
"contactName": "Alexandre Roma",
"contactPhone": "234-112-7654",
"contactFax": "234-112-7654",
"contactPager": null,
"supplierStatus": "A",
"qualityControlPercentage": 3,
"qualityControlFrequency": "5",
"vendorCheckingPercentage": 3,
"vendorCheckingFrequency": 2,
"currencyCode": "USD",
"language": 1,
"languageReferenceId": null,
"terms": "108",
"termsReferenceId": null,
"freightTerms": "03",
"freightTermsReferenceId": null,
"minReturnValue": 3.55,
"returnCourier": "125",
"handlingPercentage": 3,
"ediChannel": 2,
"costChangeVariancePercentage": 9.65,
"costChangeVarianceAmt": 9.65,
"shipMethod": "30",
"paymentMethod": "OA",
"contactTelex": "234-112-7654",
"contactEmail": "a_roma@primehardware.com",
"vatRegion": 1000,
"invoicePayLocation": "S",
"invoiceReceiveLocation": "C",
"comments": null,
"defaultItemLeadTime": 7,
"dunsNumber": "108890",
"dunsLocation": "1055",
"defaultPricingControl": "R",
"generateConsignmentOrderInd": "Y",
"generateSelfInvoicingInd": "Y",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"dealUploadStatus": "W",
"taxId": null,
"procurementSiteInd": "N",
"paymentSiteInd": "N",
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
},
"orgUnit": [
{
"orgUnitId": 1111111111,
"orgUnitReferenceId": null,
"primaryPaySite": "Y"
}
],
"address": [
{
"addressReferenceKey": "2",
"addressKey": 114772,
"address": {
"addressType": "01",
"primaryAddressInd": "Y",
"add1": "200 Ryan Way",
"add2": "Suite 100",
"add3": null,
"city": "Somerville",
"state": "MA",
"country": "US",
"post": "55555-1234",
"contactName": "Laura Johnson",
"contactPhone": "617-897-0900",
"contactFax": "617-897-0902",
"contactEmail": "l_johnson@primehardware.com",
"jurisdictionCode": null,
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"contactTelex": null
}
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"items": [
{
"supplierReferenceNo": "1",
"supplier": 3026,
"vendorTypeCode": null,
"attributes": {
"supplierName": "Prime Hardware",
"supplierNameSecondary": "Prime Hardware 2",
"contactName": "Alexandre Roma",
"contactPhone": "234-112-7654",
"contactFax": "234-112-7654",
"contactPager": null,
"supplierStatus": "A",
"qualityControlPercentage": 3,
"qualityControlFrequency": "5",
"vendorCheckingPercentage": 3,
"vendorCheckingFrequency": 2,
"currencyCode": "USD",
"language": 1,
"languageReferenceId": null,
"terms": "108",
"termsReferenceId": null,
"freightTerms": "03",
"freightTermsReferenceId": null,
"minReturnValue": 3.55,
"returnCourier": "125",
"handlingPercentage": 3,
"ediChannel": 2,
"costChangeVariancePercentage": 9.65,
"costChangeVarianceAmt": 9.65,
"shipMethod": "30",
"paymentMethod": "OA",
"contactTelex": "234-112-7654",
"contactEmail": "a_roma@primehardware.com",
"vatRegion": 1000,
"invoicePayLocation": "S",
"invoiceReceiveLocation": "C",
"comments": null,
"defaultItemLeadTime": 7,
"dunsNumber": "108890",
"dunsLocation": "1055",
"defaultPricingControl": "R",
"generateConsignmentOrderInd": "Y",
"generateSelfInvoicingInd": "Y",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"dealUploadStatus": "W",
"taxId": null,
"procurementSiteInd": "N",
"paymentSiteInd": "N",
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
},
"supplierSites": [
{
"supplierSiteReferenceNo": "2",
"supplierSite": 3026001,
"attributes": {
"supplierName": "Prime Hardware",
"supplierNameSecondary": "Prime Hardware 2",
"contactName": "Alexandre Roma",
"contactPhone": "234-112-7654",
"contactFax": "234-112-7654",
"contactPager": null,
"supplierStatus": "A",
"qualityControlPercentage": 3,
"qualityControlFrequency": "5",
"vendorCheckingPercentage": 3,
"vendorCheckingFrequency": 2,
"currencyCode": "USD",
"language": 1,
"languageReferenceId": null,
"terms": "108",
"termsReferenceId": null,
"freightTerms": "03",
"freightTermsReferenceId": null,
"minReturnValue": 3.55,
"returnCourier": "125",
"handlingPercentage": 3,
"ediChannel": 2,
"costChangeVariancePercentage": 9.65,
"costChangeVarianceAmt": 9.65,
"shipMethod": "30",
"paymentMethod": "OA",
"contactTelex": "234-112-7654",
"contactEmail": "a_roma@primehardware.com",
"vatRegion": 1000,
"invoicePayLocation": "S",
"invoiceReceiveLocation": "C",
"comments": null,
"defaultItemLeadTime": 7,
"dunsNumber": "108890",
"dunsLocation": "1055",
"defaultPricingControl": "R",
"generateConsignmentOrderInd": "Y",
"generateSelfInvoicingInd": "Y",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"dealUploadStatus": "W",
"taxId": null,
"procurementSiteInd": "N",
"paymentSiteInd": "N",
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
},
"orgUnit": [
{
"orgUnitId": 1111111111,
"orgUnitReferenceId": null,
"primaryPaySite": "Y"
}
],
"address": [
{
"addressReferenceKey": "2",
"addressKey": 114772,
"address": {
"addressType": "01",
"primaryAddressInd": "Y",
"add1": "200 Ryan Way",
"add2": "Suite 100",
"add3": null,
"city": "Somerville",
"state": "MA",
"country": "US",
"post": "55555-1234",
"contactName": "Laura Johnson",
"contactPhone": "617-897-0900",
"contactFax": "617-897-0902",
"contactEmail": "l_johnson@primehardware.com",
"jurisdictionCode": null,
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"contactTelex": null
}
}
]
}
]
}
]
}
Response Code: 400 (Error)
In case of error, the following standard error response is returned. The element validationErrors is present when the input payload or input parameters do not follow the schema definition of this service. The element businessError is present if the payload passes schema validation but an exception is caught while processing the 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"
]
}
Supplier Download Service
Supplier Detail Service
This section describes the Supplier Detail service.
Business Overview
This service publishes supplier-site master data to downstream consuming systems. It publishes the supplier-site definition together with primary and additional addresses, supplier org-unit relationships, and supplier and address custom flex attributes. Functionally, only supplier sites are published because both the main view query and the address CTEs require SUPS.SUPPLIER_PARENT IS NOT NULL; parent supplier rows are excluded.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: SUPS, ADDR
Additional business tables: ADD_TYPE_MODULE, V_ADD_TYPE_TL, PARTNER_ORG_UNIT, SYSTEM_OPTIONS, SUPS_CFA_EXT, ADDR_CFA_EXT
JSON cache table: MERCHAPI_EXT_SUPPLIER
JSON generation view: V_MERCHAPI_EXT_SUPPLIER_JSON
Builds the supplier-site header from SUPS, derives the primary address from ADDR joined to ADD_TYPE_MODULE and V_ADD_TYPE_TL, aggregates all supplier-site addresses from ADDR, adds supplier-site org-unit relationships from PARTNER_ORG_UNIT, and enriches supplier- and address-level custom flex attributes from MERCHAPI_EXT_SUPPLIER_CFA and MERCHAPI_EXT_SUPPLIER_ADDR_CFA.
The view also reads SYSTEM_OPTIONS to derive defaultPricingControl.
Functionally, only supplier sites are published because both the main view query and the address CTEs require SUPS.SUPPLIER_PARENT IS NOT NULL; parent supplier rows are excluded.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_SUPPLIER_JSON and apply supplier-site rows only where SUPS.SUPPLIER_PARENT IS NOT NULL.
The current REBUILD branch merges changed and new rows only; it does not include a delete-marking pass for supplier sites that disappear from V_MERCHAPI_EXT_SUPPLIER_JSON.
ICL (Integration Change Log) table: ICL_RMS_SUPPLIER and ICL_RMS_ADDR (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on SUPS, and address changes are captured through ICL_RMS_ADDR for ADDR rows where MODULE = ‘SUPP’.
ICL_RMS_ADDR rows are filtered to MODULE = ‘SUPP’ and republish the parent supplier-site payload.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_SUPPLIER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_SUPPLIER_ADHOC_PROCESS → MERCHAPI_EXT_SUPPLIER_ADHOC_JOB
Webhook configuration api name: foundation/supplier
Service Type
Get
ReST URL
MerchIntegrations/services/foundation/supplier
MerchIntegrations/services/foundation/supplier/{supplierId}
Functional Area
Foundation - Suppliers
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key (Supplier) |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addre ss.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFa x,items.customFlexAttrib ute) |
Table 5-176 Input Parameter for “MerchIntegrations/services/foundation/supplier/ {supplierId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| supplierId | Yes | Number | Supplier Id |
| include | No | String | Fields to include - comma separated (Example items.name,items.addre ss.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFa x,items.customFlexAttrib ute) |
Output
Table 5-177 PageResultsItemsMerchApiSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defined in the input request, a default page size is used to limit the number of records to fetch |
Table 5-177 (Cont.) PageResultsItemsMerchApiSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-178 MerchApiSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String | Action for supplier details. |
| supplier | No | Number(10,0) | This field specifies the unique identifying number for a supplier site within the system. |
| supplierName | No | String (240) | This field specifies the supplier site’s name. |
| supplierNameSecondary | No | String (240) | This field specifies the secondary name of the supplier. |
| supplierStatus | No | String (1) | This field specifies whether the supplier is currently active. |
| parentSupplier | No | Number(10,0) | This field contains the supplier number of the supplier parent. |
| contactName | No | String (120) | This field contains the name of the supplier’s representative contact for this site. |
| contactPhone | No | String (20) | This field contains the telephone number for the supplier’s representative contact. |
| contactFax | No | String (20) | This field contains the fax number for the supplier’s representative contact. |
| contactPager | No | String (20) | This field contains the number for the pager of the supplier’s representative contact. |
| contactTelex | No | String (20) | This field contains the telex number of the partner’s or supplier’s representative contact. |
Table 5-178 (Cont.) MerchApiSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| contactEmail | No | String (100) | This field contains the email address of the partner’s or supplier’s representative contact. |
| qualityControlInd | No | String (1) | This field determines whether orders from this supplier will default as requiring quality control. |
| qualityControlPercentag e | No | Number(12,4) | This field specifies the percentage of items per receipt that will be marked for quality checking. |
| qualityControlFrequency | No | Number(2,0) | This field specifies the frequency in which items per receipt will be marked for quality checking. |
| vendorCheckingInd | No | String (1) | This field specifies whether orders from this supplier will default as requiring vendor control. |
| vendorCheckingPercent age | No | Number(12,4) | This field specifies the percentage of items per receipt that will be marked for vendor checking. |
| vendorCheckingFrequen cy | No | Number(2,0) | This field specifies the frequency in which items per receipt will be marked for vendor checking. |
| currencyCode | No | String (3) | This field specifies the code identifying the currency the supplier uses for business transactions. |
| language | No | Number(6,0) | This field contains the supplier’s preferred language. |
| terms | No | String (15) | This field contains an indicator identifying the purchase terms that will default when an order is created for the supplier site. These terms specify when payment is due and if any discounts exist for early payment. |
Table 5-178 (Cont.) MerchApiSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| freightTerms | No | String (30) | This field contains the code indicating what freight terms will default when an order is created for the supplier site. |
| returnAllowedInd | No | String (1) | This field specifies whether or not the supplier will accept returns. |
| returnAuthorizationRequ iredInd | No | String (1) | This field specifies if returns must be accompanied by an authorization number when sent back to the vendor. |
| minimumReturnValue | No | Number(20,4) | This field contains a value if the supplier site requires a minimum merchandise value to be returned to accept the return. Returns of less than this amount will not be processed by the system. This field is stored in the supplier’s currency. |
| returnCourier | No | String (250) | This field specifies the name of the courier that should be used for all returns to the supplier site. |
| handlingPercentage | No | Number(12,4) | This field contains the default percent to be multiplied by the return’s total cost to determine the handling cost for the return. |
| ediOrderInd | No | String (1) | This field specifies whether purchase orders will be sent to the supplier via EDI. |
| ediOrderChangeInd | No | String (1) | This field specifies whether purchase order changes will be sent to the supplier via EDI. |
| ediOrderConfirmInd | No | String (1) | This field specifies whether this supplier will send acknowledgment of purchase orders sent via EDI. |
Table 5-178 (Cont.) MerchApiSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| ediAsnInd | No | String (1) | This field specifies whether this supplier will send Advance Shipment Notifications electronically. |
| ediSalesReportFrequen cy | No | String (1) | This field specifies the EDI sales report frequency for this supplier. |
| ediSupplierAvailabilityIn d | No | String (1) | This field specifies whether the supplier will send availability via EDI. |
| ediContractInd | No | String (1) | This field indicates whether the supplier site supports contract ordering sent via EDI. |
| ediInvoiceInd | No | String (1) | This field specifies whether invoices, debit memos and credit note requests will be sent to/ from the supplier via Electronic Data Interchange. |
| ediChannelId | No | Number(4,0) | This field specifies if the supplier is an EDI supplier and supports vendor initiated ordering, this field will contain the channel ID for the channel to which all inventory for these types of orders will flow. |
| costChangeVariancePer centage | No | Number(12,4) | This field contains a percent that determines whether a cost change can be auto approved via induction. If the cost change falls within these boundaries, it will be approved when uploaded. |
| costChangeVarianceAmt | No | Number(20,4) | This field contains an amount (in supplier currency) that determines whether a cost change can be auto approved via induction. If the cost change falls within these boundaries, it will be approved when uploaded. |
Table 5-178 (Cont.) MerchApiSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| replenishmentApprovalI nd | No | String (1) | This field indicates whether contract orders created via replenishment should be created in Approved status. |
| shipMethod | No | String (6) | This field contains the default method used to ship the items on the purchase order from the supplier site. Valid values are held in code type SHPM. |
| paymentMethod | No | String (6) | This field indicates the default method for how purchase orders for this site will be paid. Valid values are Letter of Credit (LC), Wire Transfer (WT) and Open Account (OA). |
| settlementCode | No | String (1) | This field indicates which payment process method is used for the supplier. Valid values are N/A (N) and Evaluated Receipts Settlement (E). |
| preMarkInd | No | String (1) | This field indicates whether the supplier site supports pre-marking containers for cross- dock orders. |
| autoApproveInvoiceInd | No | String (1) | This field indicates whether the supplier’s invoices can be automatically approved for payment. |
| debitMemoCode | No | String (1) | This field indicates when a debit memo will be sent to the supplier site to resolve a discrepancy. Valid values are: Y - if debit memos are always to be sent, L - if debit memos are used only if a credit note is not sent by the invoice due date and N - if debit memos are never sent. |
| freightChargeInd | No | String (1) | This field indicates whether a supplier site can charge freight costs. |
Table 5-178 (Cont.) MerchApiSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| autoApproveDebitMemo Ind | No | String (1) | This field specifies whether debit memos sent to the supplier can be automatically approved on creation. |
| invManagementLevel | No | String (6) | This field indicates the level for managing supplier inventory information. Valid values are: supplier (S), supplier/location (L), supplier/department (D), and supplier/ department/location (A). |
| backorderInd | No | String (1) | This field specifies if backorders or partial shipments will be accepted. |
| vatRegion | No | Number(4,0) | This field contains the unique identifying number for the VAT region applicable for this site. |
| prepayInvoiceInd | No | String (1) | This field specifies whether all invoices for the supplier can be pre- paid. |
| servicePerformedRequir edInd | No | String (1) | This field indicates if the supplier’s services must be confirmed as performed before paying an invoice from that supplier site. |
| invoicePayLocation | No | String (6) | This field indicates where invoices from this supplier site are paid - at the store (S) or centrally through corporate accounting (C). |
| invoiceReceiveLocation | No | String (6) | This field indicates where invoices from this supplier site are received - at the store (S) or centrally through corporate accounting (C). |
| invoiceGrossNet | No | String (6) | This field indicates if the supplier site invoice lists items at gross cost (G) or net cost (N). |
Table 5-178 (Cont.) MerchApiSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| deliveryPolicy | No | String (6) | This field contains the default delivery policy of the supplier site. Valid values are held in code type DLVY. |
| comments | No | String (2000) | This field contains any miscellaneous comments associated with the supplier. |
| defaultItemLeadTime | No | Number(4,0) | This field specifies the default lead time for the supplier site. The lead time is the time the supplier needs between receiving an order and having the order ready to ship. This value will be defaulted to item/ supplier relationships. |
| dunsNo | No | String (9) | This field holds the Dun and Bradstreet number to identify the supplier. |
| dunsLocation | No | String (4) | This field holds the Dun and Bradstreet number to identify the location of the supplier. |
| bracketCostingInd | No | String (1) | This field will determine if the supplier site supports bracket costing pricing structures. |
| vmiOrderStatus | No | String (6) | This field determines the status in which any inbound POs from this supplier will be created. A NULL value indicates that the supplier is not a VMI supplier. |
| dsdSupplierInd | No | String (1) | This field specifies whether the vendor supports DSD ordering, where the supplier replenishes the store directly, creating the PO and receipt at the same time. |
| supplierQuantityLevel | No | String (6) | This field indicates the supplier site order quantity level. Valid values are cases (CA) or eaches (EA). |
Table 5-178 (Cont.) MerchApiSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| finalDestinationInd | No | String (1) | This field indicates whether the supplier site can ship to final destination or not. |
| externalReferenceId | No | String (32) | This field holds the ID for the supplier used in the external financial system. |
| statusUpdateByRms | No | String (1) | This field indicates that the supplier is inactivated from RMS. Suppliers inactivated in RMS will have this field updated as Y. Otherwise this field will be null. |
| defaultPricingControl | No | String (1) | This field contains the pricing control of the supplier and determines whether the supplier can control the price. Valid values are R - Managed by Retailer and S - Managed by Supplier. |
| primaryAddressType | No | String (2) | This field specifies the type for the address. Valid values are: 01 - Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
| primaryAddressTypeDes cription | No | String (40) | This field specifies the address type description. |
| primaryAddressAdd1 | No | String (240) | This field contains the first line of the address. |
| primaryAddressAdd2 | No | String (240) | This field contains the second line of the address. |
| primaryAddressAdd3 | No | String (240) | This field contains the third line of the address. |
| primaryAddressCity | No | String (120) | This field contains the name of the city that is associated with the address. |
| primaryAddressState | No | String (3) | This field contains the state abbreviation for the address. |
| primaryAddressCountryI d | No | String (3) | This field contains the country where the address exists. |
Table 5-178 (Cont.) MerchApiSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddressJurisdicti onCode | No | String (10) | This field identifies the jurisdiction code for the country-state relationship. |
| primaryAddressPost | No | String (30) | This field contains the zip code for the address. |
| primaryAddressContact Name | No | String (120) | This field contains the name of the contact person at this address. |
| primaryAddressContact Phone | No | String (20) | This field contains the phone number of the contact person at this address. |
| primaryAddressContact Telex | No | String (20) | This field contains the telex number of the contact person at this address. |
| primaryAddressContact Fax | No | String (20) | This field contains the fax number of the contact person at this address. |
| primaryAddressContact | No | String (100) | This field contains the email address of the supplier site’s contact person. |
| generateConsignmentOr derInd | No | String (1) | This field will allow specification of whether Merchandising is required to generate POs against consignment sales. |
| generateSelfInvoicingInd | No | String (1) | This field will allow specification of whether self-invoicing needs to be done for consignment purchases or if the vendor will send invoices to be matched. |
| createDateTime | No | dateTime | This field holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This field holds the date and time when the record was last updated (UTC). |
| customFlexAttribute | No | Collection of Object | This list holds custom flex attributes for the supplier. |
| address | No | Collection of Object | This list holds all supplier addresses. |
Table 5-178 (Cont.) MerchApiSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplierOrgUnit | No | Collection of Object | This list holds supplier or supplier site attributes by org unit ID. The list is populated when either Multiple Set of Books is on and/or Financial AP is on. |
| cacheTimestamp | No | dateTime | This field specifies the date and time when the supplier record was last fetched into the cache. |
| cacheCreateTimestamp | No | dateTime | This field specifies the date and time when the record was first created for web service publication. |
Table 5-179 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This field holds the custom flex attribute name. |
| value | No | String (250) | This field holds the numeric or character value of the custom flex attribute. |
| valueDate | No | date | This field holds the date value of the custom flex attribute. |
| createDateTime | No | dateTime | This field holds the date and time when the custom flex attribute was created (UTC). |
| updateDateTime | No | dateTime | This field holds the date and time when the custom flex attribute was last updated (UTC). |
Table 5-180 Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressKey | No | Number(11,0) | This field contains the |
| unique address key. |
Table 5-180 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressType | No | String (2) | This field specifies the type for the address. Valid values are: 01 - Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
| addressTypeDescription | No | String (40) | This field specifies the address type description. |
| primaryAddressInd | No | String (1) | This field indicates whether the address is the primary address for the address type. |
| add1 | No | String (240) | This field contains the first line of the address. |
| add2 | No | String (240) | This field contains the second line of the address. |
| add3 | No | String (240) | This field contains the third line of the address. |
| city | No | String (120) | This field contains the name of the city that is associated with the address. |
| state | No | String (3) | This field contains the state abbreviation that is associated with the address. |
| stateName | No | String (120) | This field contains the state description that is associated with the address. |
| countryId | No | String (3) | This field contains the country where the address exists. |
| countryName | No | String (120) | This field contains the country description that is associated with the address. |
| post | No | String (30) | This field contains the zip code for the address. |
| contactName | No | String (120) | This field contains the name of the contact person at this address. |
| contactPhone | No | String (20) | This field contains the phone number of the contact person at this address. |
Table 5-180 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| contactTelex | No | String (20) | This field contains the telex number of the contact person at this address. |
| contactFax | No | String (20) | This field contains the fax number of the contact person at this address. |
| contactEmail | No | String (100) | This field contains the email address of the contact person at this address. |
| phone2Type | No | String (6) | This field contains the type of the phone number stored in the phone2 field. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| phone2 | No | String (20) | This field contains an additional phone number associated with the address. |
| phone3Type | No | String (6) | This field contains the type of the phone number stored in the phone3 field. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| phone3 | No | String (20) | This field contains a second additional phone number associated with the address. |
| latitude | No | String (30) | This field contains the north-south geographic coordinate of the address, represented in decimal degrees. |
Table 5-180 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| longitude | No | String (30) | This field contains the east-west geographic coordinate of the address, represented in decimal degrees. |
| county | No | String (250) | This field contains the county where the address exists. |
| jurisdictionCode | No | String (10) | This field contains the ID associated with the tax jurisdiction of the country-state relationship. |
| createDateTime | No | dateTime | This field holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This field holds the date and time when the record was last updated (UTC). |
| customFlexAttribute | No | Collection of Object | This List holds custom flex attributes for the warehouse’s address. |
Table 5-181 SupplierOrgUnit - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orgUnitId | No | Number(15,0) | This field holds the org unit ID. |
| primaryPaySiteInd | No | String (1) | This field holds the primary payment site indicator. |
| createDateTime | No | dateTime | This field holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This field holds the date and time when the record was last updated (UTC). |
Table 5-182 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-182 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "supplier": 3026001, "supplierName": "Prime Hardware", "supplierNameSecondary": "Prime Hardware 2", "supplierStatus": "A", "parentSupplier": 3026, "contactName": "Alexandre Roma", "contactPhone": "234-112-7654", "contactFax": "234-112-7654", "contactPager": null, "contactTelex": "234-112-7654", "contactEmail": "a_roma@primehardware.com", "qualityControlInd": "Y", "qualityControlPercentage": 3, "qualityControlFrequency": 5, "vendorCheckingInd": "Y", "vendorCheckingPercentage": 3, "vendorCheckingFrequency": 2, "currencyCode": "USD", "language": 1, "terms": "108", "freightTerms": "03", "returnAllowedInd": "Y", "returnAuthorizationRequiredInd": "N", "minimumReturnValue": 3.55, "returnCourier": "125", "handlingPercentage": 3, "ediOrderInd": "Y", "ediOrderChangeInd": "Y", "ediOrderConfirmInd": "Y", "ediAsnInd": "Y", "ediSalesReportFrequency": null, "ediSupplierAvailabilityInd": "Y", "ediContractInd": "Y", "ediInvoiceInd": "Y", "ediChannelId": 1, "costChangeVariancePercentage": 9.65,
"costChangeVarianceAmt": 9.65,
"replenishmentApprovalInd": "Y",
"shipMethod": "30",
"paymentMethod": "OA",
"settlementCode": "N",
"preMarkInd": "Y",
"autoApproveInvoiceInd": "Y",
"debitMemoCode": "N",
"freightChargeInd": "Y",
"autoApproveDebitMemoInd": "Y",
"invManagementLevel": "S",
"backorderInd": "Y",
"vatRegion": 1000,
"prepayInvoiceInd": "Y",
"servicePerformedRequiredInd": "Y",
"invoicePayLocation": "S",
"invoiceReceiveLocation": "C",
"invoiceGrossNet": "G",
"deliveryPolicy": "NEXT",
"comments": null,
"defaultItemLeadTime": 7,
"dunsNo": "108890",
"dunsLocation": "1055",
"bracketCostingInd": "Y",
"vmiOrderStatus": null,
"dsdSupplierInd": "Y",
"supplierQuantityLevel": "EA",
"finalDestinationInd": null,
"externalReferenceId": null,
"statusUpdateByRms": null,
"defaultPricingControl": "R",
"primaryAddressType": "01",
"primaryAddressTypeDescription": null,
"primaryAddressAdd1": "200 Ryan Way",
"primaryAddressAdd2": "Suite 100",
"primaryAddressAdd3": null,
"primaryAddressCity": "Somerville",
"primaryAddressState": "MA",
"primaryAddressCountryId": "US",
"primaryAddressJurisdictionCode": null,
"primaryAddressPost": "55555-1234",
"primaryAddressContactName": "Laura Johnson",
"primaryAddressContactPhone": "617-897-0900",
"primaryAddressContactTelex": null,
"primaryAddressContactFax": "617-897-0902",
"primaryAddressContactEmail": "l_johnson@primehardware.com",
"generateConsignmentOrderInd": null,
"generateSelfInvoicingInd": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"address": [
{
"addressKey": 114772,
"addressType": "01",
"addressTypeDescription": null,
"primaryAddressInd": "Y",
"add1": "101 First Street",
"add2": "201 Second Street",
"add3": null,
"city": "Minneapolis",
"state": "MN",
"stateName": "MN",
"countryId": "US",
"countryName": "US",
"post": "55555-1234",
"contactName": "Laura Johnson",
"contactPhone": "1800800800",
"contactTelex": null,
"contactFax": "617-897-0902",
"contactEmail": "someone@email.com",
"phone2Type": "WO",
"phone2": "5551234567",
"phone3Type": "WO",
"phone3": "5551234567",
"latitude": "44.38129",
"longitude": "-92.03521",
"county": null,
"jurisdictionCode": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"supplierOrgUnit": [
{
"orgUnitId": 1111111111,
"primaryPaySiteInd": "Y",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SUPS | Yes | No | No | No |
| ADDR | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Supplier Publish Services
Endpoints
MerchIntegrations/services/foundation/supplier
MerchIntegrations/services/foundation/supplier/{supplierId}
Functional Area
Foundation – Suppliers and Partners
Business Overview
This service can be used by external applications to get all or selected supplier sites and the address information from Merchandising. This information is further subscribed by integrating systems like Oracle Retail Store Inventory and Operations Cloud Service (SIOCS). The address types included as part of the information are Returns, Order and Invoice address types.
Only supplier site level information is published. The supplier level information will not be published.
Service Type
GET
ReST URL
/MerchIntegrations/services/foundation/supplier?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/foundation/supplier/{supplierId}
Input Parameters
Table 5-183 MerchIntegrations/services/foundation/supplier
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| before | No | String | Before Date Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Table 5-184 /MerchIntegrations/services/ foundation/supplier/{supplierId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| supplierId | Yes | String | Supplier ID. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for supplier details. Valid values are INSERT, UPDATE and DELETE. |
| supplier | Number | This feld specifes unique identifying number for a supplier site within the system. |
| supplierName | String | This feld specifes supplier’s site’s name. |
| supplierNameSecondary | String | This feld specifes secondary name of the supplier. |
| supplierStatus | String | This feld specifes whether the supplier is currently active. |
| parentSupplier | String | This feld contains the supplier number for the supplier site. |
| contactName | String | This feld contains the name of the supplier’s representative contact for this site. |
| Name | Data Type | Description |
|---|---|---|
| contactPhone | String | This feld contains telephone number for the supplier’s representative contact. |
| contactFax | String | This feld contains fax number for the supplier’s representative contact. |
| contactPager | String | This feld contains number for the pager of the supplier’s representative contact. |
| contactTelex | String | This feld contains telex number of the partner or supplier’s representative contact. |
| contactEmail | String | This feld contains email address of the partner or supplier’s representative contact. |
| qualityControlInd | String | This feld determines whether orders from this supplier will default as requiring quality control. |
| qualityControlPercentage | Number | This feld specifes percentage of items per receipt that will be marked for quality checking. |
| qualityControlFrequency | Number | This feld specifes frequency in which items per receipt will be marked for quality checking. |
| vendorCheckingInd | String | This feld specifes whether orders from this supplier will default as requiring vendor control. |
| vendorCheckingPercentage | Number | This feld specifes percentage of items per receipt that will be marked for vendor checking. |
| vendorCheckingFrequency | Number | This feld specifes frequency in which items per receipt will be marked for vendor checking. |
| CurrencyCode | String | This feld specifes code identifying the currency the supplier uses for business transactions. |
| language | String | This feld contains the supplier’s preferred language. |
| terms | String | This feld contains an indicator identifying the purchase terms that will default when an order is created for the supplier site. These terms specify when payment is due and if any discounts exist for early payment. |
| freightTerms | String | This feld contains code indicating what freight terms will default when an order is created for the supplier site. |
| returnAllowedInd | String | This feld specifes whether the supplier will accept returns. |
| returnAuthorizationRequiredInd | String | This feld specifes if returns must be accompanied by an authorization number when sent back to the vendor. |
| Name | Data Type | Description |
|---|---|---|
| minimumReturnValue | Number | This feld contains a value if the supplier site requires a minimum merchandise value to be returned to accept the return. Returns of less than this amount will not be processed by the system. This feld is stored in the supplier’s currency. |
| returnCourier | String | This feld specifes name of the courier that should be used for all returns to the supplier site. |
| handlingPercentage | Number | This feld contains the default percent to be multiplied by the return’s total cost to determine the handling cost for the return. |
| ediOrderInd | String | This feld specifes whether purchase orders will be sent to the supplier via EDI. |
| ediOrderChangeInd | String | This feld specifes whether purchase order changes will be sent to the supplier via EDI. |
| ediOrderConfrmInd | String | This feld specifes whether this supplier will send acknowledgment of a purchase orders sent via EDI. |
| ediAsnInd | String | This feld specifes whether this supplier will send Advance Shipment Notifcations electronically. |
| ediSalesReportFrequency | String | This feld specifes EDI sales report frequency for this supplier. |
| ediSupplierAvailabilityInd | String | This feld specifes whether the supplier will send availability via EDI. |
| ediContractInd | String | This feld indicates whether the supplier site supports contract ordering sent via EDI. |
| ediInvoiceInd | String | This feld specifes whether invoices, debit memos and credit note requests will be sent to/from the supplier via Electronic Data Interchange. |
| EdiChannelId | String | This feld specifes if the supplier is an EDI supplier and supports vendor-initiated ordering, this feld will contain the channel ID for the channel to which all inventory for these types of orders will fow. |
| costChangeVariancePercentage | Number | This feld contains a percent that determines whether a cost change can be auto approved via induction. If the cost change falls within these boundaries, it will be approved when uploaded. |
| costChangeVarianceAmt | Number | This feld contains an amount (in supplier currency) that determines whether a cost change can be auto approved via induction. If the cost change falls within these boundaries, it will be approved when uploaded. |
| replenishmentApprovalInd | String | This feld indicates whether contract orders created via replenishment should be created in Approved status. |
| Name | Data Type | Description |
|---|---|---|
| shipMethod | String | This feld contains the default method used to ship the items on the purchase order from the supplier site. Valid values are held in code type SHPM. |
| paymentMethod | String | This feld indicates the default method for how purchase orders for this site will be paid. Valid values are Letter of Credit (LC), Wire Transfer (WT) and Open Account (OA). |
| settlementCode | String | This feld indicates which payment process method is used for the supplier. Valid values are N/A (N) and Evaluated Receipts Settlement (E). |
| preMarkInd | String | This feld indicates whether the supplier site supports pre-marking containers for cross dock order. |
| autoApproveInvoiceInd | String | This feld indicates whether the supplier’s invoices can be automatically approved for payment. |
| debitMemoCode | String | This feld indicates when a debit memo will be sent to the supplier site to resolve a discrepancy. Valid values are: Y - if debit memos are always to be sent, L - if debit memos are used only if a credit note is not sent by the invoice due date and N - if debit memos are never sent. |
| freightChargeInd | String | This feld indicates whether a supplier site can charge freight costs. |
| autoApproveDebitMemoInd | String | This feld specifes whether debit memos sent to the supplier can be automatically approved on creation. |
| invManagementLevel | String | This feld indicates the level for managing supplier inventory information. Valid values are: supplier (S), supplier/location (L), supplier/department (D), and supplier/ department/location (A). |
| backorderInd | String | This feld specifes if backorders or partial shipments will be accepted. |
| vatRegion | Number | This feld contains the unique identifying number for the VAT region applicable for this site. |
| prepayInvoiceInd | String | This feld specifes whether all invoices for the supplier can be pre-paid. |
| servicePerformedRequiredInd | String | This feld indicates if the supplier’s services must be confrmed as performed before paying an invoice from that supplier site. |
| invoicePayLocation | String | This feld indicates where invoices from this supplier site are received - at the store (S) or centrally through corporate accounting (C). |
| Name | Data Type | Description |
|---|---|---|
| invoiceReceiveLocation | String | This feld indicates where invoices from this supplier site are received - at the store (S) or centrally through corporate accounting (C). |
| invoiceGrossNet | String | This feld indicates if the supplier site invoice lists items at gross cost (G) or net cost (N). |
| deliveryPolicy | String | This feld contains the default delivery policy of the supplier site. Valid values are held in code type DLVY. |
| comments | String | This feld contains any miscellaneous comments associated with the supplier. |
| defaultItemLeadTime | Number | This feld specifes default lead time for the supplier site. The lead time is the time the supplier needs between receiving an order and having the order ready to ship. This value will be defaulted to item/supplier relationships. |
| dunsNo | String | This feld holds the Dun and Bradstreet number to identify the supplier. |
| dunsLocation | String | This feld holds the Dun and Bradstreet number to identify the location of the supplier. |
| bracketCostingInd | String | This feld will determine if the supplier site supports bracket costing pricing structures. |
| vmiOrderStatus | String | This feld determines the status in which any inbound POs from this supplier will be created. A NULL value indicates that the supplier is not a VMI supplier. |
| dsdSupplierInd | String | This feld specifes whether the vendor supports DSD ordering, where the supplier replenishes the store directly, creating the PO and receipt at the same time. |
| supplierQuantityLevel | String | This feld indicates the supplier site order quantity level. Valid values are cases (CA) or eaches (EA). |
| fnalDestinationInd | String | This feld indicates whether the supplier site can ship to fnal destination or not. |
| externalReferenceId | String | This feld holds the ID for the supplier used in the external fnancial system. |
| statusUpdateByRms | String | This feld indicates that Supplier is inactivated from RMS. Suppliers inactivated in RMS will have this feld updated as Y. Otherwise this feld will be null. |
| defaultPricingControl | String | Indicates the default value of the pricing control attribute at the supplier site level when supplier-controlled pricing for Consignment/Concession ownership model is used within the Merchandising suite of solutions. Valid values are R – Retailer and S – Supplier. |
| Name | Data Type | Description |
|---|---|---|
| primaryAddressType | String | This feld specifes type for the address. Valid values are: 01 -Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
| primaryAddressTypeDescription | String | This feld specifes address type description. |
| primaryAddressAdd1 | String | This feld contains the frst line of the address. |
| primaryAddressAdd2 | String | This feld contains the second line of the address. |
| primaryAddressAdd3 | String | This feld contains the third line of the address. |
| primaryAddressCity | String | This feld contains the name of the city that is associated with the address. |
| primaryAddressState | String | This feld contains abbreviation of the state for the address |
| primaryAddressStateName | String | This feld contains full name of the state for the address. |
| primaryAddressCountryId | String | This feld contains the country where the address exists. |
| primaryAddressJurisdictionCode | String | This feld contains the ID associated to the tax jurisdiction of the country-state relationship. |
| primaryAddressPost | String | This feld contains the zip code for the address. |
| primaryAddressContactName | String | This feld contains the name of the contact for the supplier at this address. |
| primaryAddressContactPhone | String | This feld contains the phone number of the contact person at this address. |
| primaryAddressContactTelex | String | This feld contains the telex number of the partner or supplier’s representative contact. |
| primaryAddressContactFax | String | This feld contains the fax number of the contact person at this address. |
| primaryAddressContactEmail | String | This feld contains the email address of the partner or supplier’s representative contact. |
| generateConsignmentOrderInd | String | This feld will allow specifcation of the whether Merchandising is required to generate POs against consignment sales. |
| generateSelfInvoicingInd | String | This feld will allow specifcation of the whether the self-invoicing needs to be done for consignment Purchases or if Vendor will send invoices to be matched. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttribute | This List holds custom fex attributes for address details. | |
| address | This list holds all the addresses of the supplier. |
| Name | Data Type | Description |
|---|---|---|
| supplierOrgUnit | This List holds list attributes for supplier/ supplier site and Org unit id. List is populated when populated when either Multiple Set of Books is ON And/or Financial AP is O. | |
| cacheTimestamp | String | This feld specifes date and time when the supplier record was last maintained. |
Table 5-185 address
| Name | Data Type | Description |
|---|---|---|
| addressType | String | This feld specifes type for the address. Valid values are: 01 -Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
| addressTypeDescription | String | This feld specifes address type description. |
| sequenceNo | Number | This feld indicates the sequence that addresses within the same type were entered. |
| primaryAddressInd | String | This feld indicates whether the address is the primary address for the address type. |
| add1 | String | This feld contains the frst line of the address. |
| add2 | String | This feld contains the second line of the address. |
| add3 | String | This feld contains the third line of the address. |
| city | String | This feld contains name of the city that is associated with the address. |
| state | String | This feld contains name of the state that is associated with the address. |
| stateName | String | This feld contains name of the state description that is associated with the address. |
| countryID | String | This feld contains name of the country that is associated with the address. |
| jurisdictionCode | String | This feld contains the ID associated to the tax jurisdiction of the country-state relationship. |
| post | String | This feld contains the zip code for the address. |
| contactName | String | This feld contains the name of the contact person at this address. |
| contactPhone | String | This feld contains the phone number of the contact person at this address. |
| contactTelex | String | This feld contains the telex number of the warehouse’s representative contact. |
| contactFax | String | This feld contains the fax number of the contact person at this address. |
| contactEmail | String | This feld contains email address of the warehouse’s representative contact. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttribute | This list holds custom fex attributes for the address. |
Table 5-186 supplierOrgUnit
| Name | Data Type | Description |
|---|---|---|
| orgUnitId | Number | This feld holds org unit id. |
| primaryPaySiteInd | String | This feld holds primary payment site indicator. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
Table 5-187 customFlexAttribute
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| updateDateTime | String | This feld will hold the date time when the custom fex attribute was last updated. |
Table 5-188 Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned, then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists, then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self”: This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON output:
{
"items": [
{
"action": null,
"supplier": 2330,
"supplierName": "Dummy site 1",
"supplierNameSecondary": null,
"supplierStatus": "A",
"parentSupplier": "2300",
"contactName": "Shaurya S",
"contactPhone": "98787987",
"contactFax": null,
"contactPager": null,
"contactTelex": null,
"contactEmail": null,
"qualityControlInd": "N",
"qualityControlPercentage": null,
"qualityControlFrequency": null,
"vendorCheckingInd": "N",
"vendorCheckingPercentage": null,
"vendorCheckingFrequency": null,
"currencyCode": "USD",
"language": null,
"terms": "108",
"freightTerms": null,
"returnAllowedInd": "N",
"returnAuthorizationRequiredInd": "Y",
"minimumReturnValue": null,
"returnCourier": null,
"handlingPercentage": null,
"ediOrderInd": "N",
"ediOrderChangeInd": "N",
"ediOrderConfirmInd": "N",
"ediAsnInd": "N",
"ediSalesReportFrequency": null,
"ediSupplierAvailabilityInd": "N",
"ediContractInd": "N",
"ediInvoiceInd": "N",
"ediChannelId": null,
"costChangeVariancePercentage": 0,
"costChangeVarianceAmt": 0,
"replenishmentApprovalInd": "N",
"shipMethod": null,
"paymentMethod": null,
"settlementCode": "N",
"preMarkInd": "N",
"autoApproveInvoiceInd": "N",
"debitMemoCode": null,
"freightChargeInd": "N",
"autoApproveDebitMemoInd": "N",
"invManagementLevel": "D",
"backorderInd": "N",
"vatRegion": 1000,
"prepayInvoiceInd": "N",
"servicePerformedRequiredInd": "N",
"invoicePayLocation": null,
"invoiceReceiveLocation": null,
"invoiceGrossNet": "N",
"deliveryPolicy": "NEXT",
"comments": null,
"defaultItemLeadTime": null,
"dunsNo": null,
"dunsLocation": null,
"bracketCostingInd": "N",
"vmiOrderStatus": null,
"dsdSupplierInd": "N",
"supplierQuantityLevel": "EA",
"finalDestinationInd": "N",
"externalReferenceId": null,
"statusUpdateByRms": null,
"defaultPricingControl": null,
"primaryAddressType": "01",
"primaryAddressTypeDescription": "Business",
"primaryAddressAdd1": "test address",
"primaryAddressAdd2": null,
"primaryAddressAdd3": null,
"primaryAddressCity": "MN",
"primaryAddressState": "PA",
"primaryAddressCountryId": "US",
"primaryAddressJurisdictionCode": null,
"primaryAddressPost": "3182",
"primaryAddressContactName": null,
"primaryAddressContactPhone": null,
"primaryAddressContactTelex": null,
"primaryAddressContactFax": null,
"primaryAddressContactEmail": null,
"generateConsignmentOrderInd": "Y",
"generateSelfInvoicingInd": "Y",
"createDateTime": "2023-08-08T01:23:39.000Z",
"updateDateTime": "2023-10-26T17:07:34.000Z",
"customFlexAttribute": [
{
"name": "PARTS_ATTR",
"value": "test",
"valueDate": null,
"createDateTime": "2023-08-09T01:25:13.000Z",
"updateDateTime": "2023-08-09T01:33:18.000Z"
},
],
"address": [
{
"addressType": "01",
"addressTypeDescription": "Business",
"sequenceNo": 1,
"primaryAddressInd": "Y",
"add1": "test address",
"add2": null,
"add3": null,
"city": "MN",
"state": "PA",
"countryId": "US",
"jurisdictionCode": null,
"post": "3182",
"contactName": null,
"contactPhone": null,
"contactTelex": null,
"contactFax": null,
"contactEmail": null,
"createDateTime": "2023-08-08T01:34:34.000Z",
"updateDateTime": "2023-08-09T00:56:21.000Z",
"customFlexAttribute": null
},
{
"addressType": "02",
"addressTypeDescription": "Postal",
"sequenceNo": 1,
"primaryAddressInd": "Y",
"add1": "test address",
"add2": null,
"add3": null,
"city": "MN",
"state": "PA",
"countryId": "US",
"jurisdictionCode": null,
"post": "3182",
"contactName": null,
"contactPhone": null,
"contactTelex": null,
"contactFax": null,
"contactEmail": null,
"createDateTime": "2023-08-08T01:34:35.000Z",
"updateDateTime": "2023-08-09T00:57:07.000Z",
"customFlexAttribute": null
}
],
"supplierOrgUnit": [
{
"orgUnitId": 1111111111,
"primaryPaySiteInd": "N",
"createDateTime": "2023-08-08T01:36:30.000Z",
"updateDateTime": "2023-08-08T01:36:30.000Z"
}
],
"cacheTimestamp": "2023-10-26T20:03:46.186Z"
}
],
"hasMore": false,
"limit": 1,
"count": 1,
"links": null
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SUPS | Yes | No | No | No |
| SUPS_CFA_EXT | Yes | No | No | No |
| ICL_RMS_SUPPLIER | Yes | No | Yes | Yes |
| ICL_RMS_ADDR | Yes | No | Yes | Yes |
| MERCHAPI_SUPPLIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_SUPPLIER_JSON | Yes | No | No | No |
Supplier Upload Service
Manage Supplier Evaluation Codes
Functional Area
Foundation - Suppliers and Partners
Business Overview
The Supplier Evaluation Codes Service is used by the Supplier Evaluation (ORSE) module to integrate master glossary data to Merchandising. The glossary contains a list of codes and valid values for each code. It is expected that the complete glossary will be published in a single request and Merchandising will overlay the existing codes with the information received in the service call.
Service Type
PUT
ReST URL
MerchIntegrations/services/foundation/suppliers/evaluation/codes
Input Payload Details
Table 5-189 Codes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | |
| Object |
Table 5-190 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| type | Yes | String (255) | This contains the supplier evaluation code type. Valid values are ASSESSMENT_STATUS, AUDIT_STATUS, AUDIT_SCORE, SCORE, EVALUATION_TYPE, STATUS, and ITEM_STATUS. |
| code | Yes | String (255) | This is the supplier evaluation code which contains valid values for the code type. |
| locale | Yes | Collection of Object |
Table 5-191 Locale - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | String (255) | This feld contains the Supplier Evaluation language code in which the translated text is maintained. The supported language codes are defned in SELG code type. Few examples are en_GB, en_US, sv, ru, nl, ja, zh_CN, it, pt_BR, de, fr, es. Any text in a non supported language will be ignored. |
| description | Yes | String (255) | This feld contains the translated value of the code. |
Table 5-192 CodesError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| type | Yes | String (255) | This contains the supplier evaluation code type. Valid values are ASSESSMENT_STATUS, AUDIT_STATUS, AUDIT_SCORE, SCORE, EVALUATION_TYPE, STATUS, and ITEM_STATUS. |
| code | Yes | String (255) | This is the supplier evaluation code which contains valid values for the code type. |
| errorMessage Sample Input Message | Yes | String (2000) | This feld contains the error message. |
{"items": [{"type": "EVALUATION"code": "SITE_AUDIT"locale": [{"language": "it"description":}]}]} | _TYPE",",","Verifica | del sito" |
Response Code: 200 (Success) 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.
Table 5-193 CodesError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| type | Yes | String (255) | This contains the supplier evaluation code type. Valid values are ASSESSMENT_STATUS, AUDIT_STATUS, AUDIT_SCORE, SCORE, EVALUATION_TYPE, STATUS, and ITEM_STATUS. |
| code | Yes | String (255) | This is the supplier evaluation code which contains valid values for the code type. |
| errorMessage | Yes | String (2000) | This feld contains the error message. |
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": [
{
"type": "EVALUATION_TYPE",
"code": "SITE_AUDIT",
"errorMessage": "More than one record for the same type, code and
language exist."
}
]
}
Manage Supplier Evaluation Transactions
Functional Area
Foundation - Suppliers and Partners
Business Overview
The Supplier Evaluation Transactions service is used by the Supplier Evaluation (ORSE) module for providing supplier evaluation related information to Merchandising. The information provided by this service includes detailed information about each evaluation event undertaken by ORSE at the supplier site level. This information can be used in Merchandising for decision making such as supplier activation or purchase order approval etc.
Service Type
PUT
ReST URL
MerchIntegrations/services/foundation/suppliers/evaluation/transactions
Input Payload Details
Table 5-194 Transactions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | |
| Object |
Table 5-195 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | Number (10) | This is the supplier site. |
| transactionType | Yes | String (255) | This feld determines the type of transaction. This identifes the message type as Audit, Assessment, Summary, Document or Site Score. |
| evaluationType | Yes | String (255) | This feld contains the code specifc to the supplier evaluation type. The default set of suggested supplier evaluation types will be Ethical, Environmental and Governance, however the retailer/portal owner can confgure their own set of values in addition or instead of these |
| typeBusinessKey | No | String (255) | This feld contains the code of the assessment type or the audit template. |
| typeBusinessKeyDescription | No | Collection of Object | This node contains the language and the corresponding translation of the typeBusinessKey. |
| recordBusinessKey | No | String (255) | This feld contains the name of the assessment or audit code. |
| createdOn | No | date-time | This feld contains the timestamp of the event. |
| dueDate | No | date | This feld contains the due date of the latest assessment for the assessment type for this site. |
| status | No | String (255) | This feld contains the status of the supplier evaluation. |
| due | No | String (5) | For assessments, this feld indicates whether the latest assessment for the assessment type for this site is due. For audit events, this indicates whether the latest audit/visit based on the audit template for this site is due. |
| overDue | No | String (5) | For assessments, this feld indicates whether the latest assessment for the assessment type for this site is overdue. For audit events, this indicates whether the latest audit/ visit based on the audit template for this site is overdue. |
Table 5-195 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| completionDate | No | date | For documents, this feld contains the date on which the document was last published. For assessments, this feld contains the timestamp that the most recent assessment at completed status for this assessment type for this site most recently moved to completed status. For audits, this feld contains the timestamp that the most recent audit/visit at completed status for this audit template for this site most recently moved to completed status. |
| score | No | String (255) | This feld contains the descriptive score of the most recent assessment at completed status for this assessment type for this site. |
| scoreValue | No | Number (10) | For assessments, this feld contains the numeric score of the most recent assessment at completed status for this assessment type for this site. For audits, this feld contains the numeric score of the most recent audit/visit at completed status for this audit template for this site. For supplier site score, this feld contains the numeric value of the site’s latest SE score. |
| auditOpenIssues | No | Number (10) | This feld contains the count of open issues/non-conformances of the latest audit/visit based on the audit template for this site. |
| auditCompletedIssues | No | Number (10) | This feld contains the count of completed issues/non-conformances of the latest audit/visit based on the audit template for this site. |
| auditTotalIssues | No | Number (10) | This feld contains the count of total issues/non-conformances of the latest audit/visit based on the audit template for this site. |
Table 5-196 TypeBusinessKeyDescription - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | String (255) | This feld contains the Supplier Evaluation language code in which the translated text is maintained. The supported language codes are defned in SELG code type. Few examples are en_GB, en_US, sv, ru, nl, ja, zh_CN, it, pt_BR, de, fr, es. Any text in a non supported language will be ignored. |
Table 5-196 (Cont.) TypeBusinessKeyDescription - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| typeDescription | Yes | String (255) | This feld contains the translated value of the typeBusinessKeyDescription. |
Table 5-197 TransactionsError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | Number (10) | This is the supplier site. |
| transactionType | Yes | String (255) | This feld determines the type of transaction. This identifes the message type as Audit, Assessment, Summary, Document or Site Score. |
| evaluationType | Yes | String (255) | This feld contains the code specifc to the supplier evaluation type. The default set of suggested supplier evaluation types will be Ethical, Environmental and Governance, however the retailer/portal owner can confgure their own set of values in addition or instead of these |
| typeBusinessKey | No | String (255) | This feld contains the code of the assessment type or the audit template. |
| recordBusinessKey | No | String (255) | This feld contains the name of the assessment or audit code. |
| errors | Yes | Array of String | Collection of validation errors for the supplier evaluation record. |
Sample Input Message
{
"items": [
{
"supplier": 30201,
"transactionType": "Audit",
"evaluationType": "ETHICAL",
"typeBusinessKey": "SITE_AUDIT",
"typeBusinessKeyDescription": [
{
"language": "es",
"typeDescription": "Auditoría del sitio"
}
],
"recordBusinessKey": "AUD45",
"createdOn": "2001-12-31T23:59:59.123Z",
"dueDate": "2001-12-31",
"status": "COMPLETED",
"due": "true",
"overDue": "false",
"completionDate": "2001-12-31",
"score": "PASS",
"scoreValue": 80,
"auditOpenIssues": 1,
"auditCompletedIssues": 7,
"auditTotalIssues": 8
}
]
}
Response Code: 200 (Success) 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.
Table 5-198 TransactionsError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | Number (10) | This is the supplier site. |
| transactionType | Yes | String (255) | This feld determines the type of transaction. This identifes the message type as Audit, Assessment, Summary, Document or Site Score. |
| evaluationType | Yes | String (255) | This feld contains the code specifc to the supplier evaluation type. The default set of suggested supplier evaluation types will be Ethical, Environmental and Governance, however the retailer/portal owner can confgure their own set of values in addition or instead of these |
| typeBusinessKey | No | String (255) | This feld contains the code of the assessment type or the audit template. |
| recordBusinessKey | No | String (255) | This feld contains the name of the assessment or audit code. |
| errors | Yes | Array of String | Collection of validation errors for the supplier evaluation record. |
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": [
{
"supplier": 30201,
"transactionType": "Audit",
"evaluationType": "ETHICAL",
"typeBusinessKey": "SITE_AUDIT",
"recordBusinessKey": "AUD45",
"errors": [
"Invalid evaluation type: ETHICAL"
]
}
]
}
Tax Rules
The following services are included in this functional area:
-
Tax Rule Download Service
-
Get Item Location Tax Rules
-
Get Store Tax Location
-
Get Tax Rule Groups
-
-
Tax Rule Upload Service
Tax Rule Download Service
The following services are included in this functional area:
-
Get Item Location Tax Rules
-
Get Store Tax Location
-
Get Tax Rule Groups
Get Item Location Tax Rules
Functional Area
Global Tax Solution - Tax Services
Business Overview
This service retrieves the tax rules which determine how retail tax is calculated on a sales transaction for an item at the location level. This service will be used by external systems that require this information to obtain the tax rules for items being sold at a given store.
The service can retrieve tax rule details for all items at a given store, for all stores for a given item, or for all items at all stores depending on the provided input. For example, if a location is provided, the service will return information for the provided location.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: ITEM_LOC
Additional business tables: GTS_RULES_CONFIG, VAT_CODES, MERCHAPI_GTS_TAX_LOC, SYSTEM_OPTIONS
JSON cache table: MERCHAPI_GTS_TAX_LOC_ITEM
JSON generation view: V_MERCHAPI_GTS_TAX_RULE_JSON
The rule-detail portion of the payload comes from V_MERCHAPI_GTS_TAX_RULE_JSON, which is built from GTS_RULES_CONFIG and VAT_CODES.
Functionally, the GET query only returns rows whose item/location combination still exists in ITEM_LOC, and the package flow only runs when SYSTEM_OPTIONS.DEFAULT_TAX_TYPE = ‘GTS’.
Delta and refresh processing use a multi-stage GTS calculation flow.
Initial Seeding and post enablement rebuild/repair
Mark cache rows deleted when a rule is no longer returned for an affected item in the current GTS calculation result.
Thread 1 refreshes MERCHAPI_GTS_TAX_LOC before item-level tax rows are refreshed.
ICL (Integration Change Log) table: ICL_RMS_ITEM_LOC plus the upstream tax-event feeder path (ICL consumer name = MERCHAPI)
Item/location changes enter through ICL_RMS_ITEM_LOC, and the upstream tax-event feeder path submits the calculation work used to refresh affected tax rows.
Item Approval Handling
On item approval, the main item publish flow writes store ITEM_LOC rows for approved transaction-level items to ICL_RMS_ITEM_LOC so this API is also queued when the item becomes approved.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_GTS_TAX_LOC_ITEM
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_GTS_TAX_LOC_ITEM_ADHOC_PROCESS → MERCHAPI_GTS_TAX_LOC_ITEM_ADHOC_JOB
Webhook configuration api name: foundation/taxLocationItem
Special handling
Additional GET query parameters: item, locationType, locationId.
The filters item, locationType, and locationId are not backed by dedicated cache-table indexes. At high volume, use them only as additional criteria on top of a small-window delta fetch and not for full downloads.
Request query values are STORE|WAREHOUSE|EXTERNAL_FINISHER, while payload values are S|W|E.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime characteristics and should be evaluated separately. Because this is the main shared GTS merchapi, the available configuration should be validated against the customer production item, location, and tax-rule profile, with the key performance-related configuration for this service covering the following:
Multi-threading and commit control
This service supports multi-threaded execution for both initial seeding and delta processing through the shared API_GTS_TAX_LOC_ITEM flow. Thread count is controlled through API_NO_OF_THREADS, and commit sizing is controlled through API_COMMIT_MAX_COUNTER.
Thread and commit settings should be chosen together based on expected item-location volume, average payload size, and the multi-stage shared tax calculation required to build and maintain the related GTS caches. Common starting points for large-volume runs are 8 or 16 threads. Higher settings such as 32 should be considered only after testing, and the delivered shared setting is currently 10.
API_COMMIT_MAX_COUNTER should be sized together with the thread setting. Typical values range from about 100 to 1,000 rows and can extend to 10,000 for simpler restartable workloads; the delivered shared setting is currently 10000 and should be changed only after validating restart behavior and database capacity. Where tax calculation cost is high, a lower thread count with a higher commit value may perform better.
REST fetch considerations
REST page size should be selected based on average payload size so the average response remains below about 10 MB per call. Common page-limit values are 1,000, 5,000, or 10,000 rows.
For full downloads, do not provide the since query parameter so the database can favor the primary-key access path. For delta downloads, use a small time window, typically a few minutes and at most a few hours, so the eligible row set on the LAST_UPDATE_DATETIME index remains small.
Wider delta windows, especially multi-day windows that can arise during outages or data recovery, generally do not perform well. For such scenarios, keeping BUILD_HISTOGRAM enabled allows the service to support recovery through smaller, more selective polling windows using the optimalBefore query parameter.
In this catch-up pattern, for requests up to 30 days in the past, the client provides optimalBefore and leaves before empty. The client then uses the returned before timestamp to continue polling incrementally until the backlog is cleared, and then resumes the normal shortwindow delta pattern. Hourly histogram processing groups LAST_UPDATE_DATETIME values into buckets of 10,000 rows in MERCHAPI_TIMESTAMP_HISTOGRAM using the shared HISTOGRAM_ROW_COUNT configuration.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/taxLocationItem
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| item | No | String | Item |
| locationType | No | String | Location Type |
| locationId | No | String (10) | Location |
| offsetkey | No | String | Offset key ([location type],[location], [item], Example: S,120091,Item-35) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-199 PageResultsItemsMerchapiGtsTaxLocItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
Table 5-199 (Cont.) PageResultsItemsMerchapiGtsTaxLocItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-200 MerchapiGtsTaxLocItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for tax location item details. |
| item | No | String (25) | The item ID of an approved sellable transaction-level item, including a vendor pack. |
| loctype | No | String (1) | The location type. Valid values are S - store, W - warehouse, E - external fnisher. |
| location | No | Number(10,0) | The location ID, including stores, warehouses, and external fnishers. |
| taxLocationId | No | Number(11,0) | A unique identifer of a group of tax locations. |
| ruleId | No | Number(15,0) | The tax rule unique ID. |
| taxRegionDestination | No | Number(4,0) | Destination Tax Region. |
| taxValuePerUnit | No | Number(20,10) | Tax value when tax calculation type is in per unit. |
| ruleName | No | String (300) | Tax rule name. |
| taxRegionSource | No | Number(4,0) | Source Tax Region. |
Table 5-200 (Cont.) MerchapiGtsTaxLocItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| taxAuthorityId | No | String (60) | A specifc tax authority that establishes the tax rate. The tax authority is normally a government body. For example, National, State, Province, City, and so on. |
| taxCalcType | No | String (6) | Defne the tax calculation type. Possible values are ’P’ercentage or ‘U’nit’. |
| taxCode | No | String (6) | Tax code. |
| taxRate | No | Number(20,10) | Tax rate in percentage when tax calculation type is in percentage. |
| effectiveTaxRate | No | Number(20,10) | Tax over tax rate calculated based in predecessor tax rule when applied. |
| activeDate | No | date | Effective date when this tax rule becomes active. |
| endDate | No | date | End date when this tax rule expires. |
| currencyCode | No | String (3) | Contains the currency code for the tax rule. For unit tax application. |
| createDateTime | No | dateTime | This feld holds the date and time the record was created. |
| updateDateTime | No | dateTime | This feld holds the date and time the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the tax location item record was last maintained. |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication. |
| taxGroupId | No | String (60) | A unique identifer of a group of tax rules for a given tax location. |
Table 5-201 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"item": "Item-35",
"loctype": "S",
"location": 120091,
"taxLocationId": 10000000012,
"ruleId": 1,
"taxRegionDestination": 1,
"taxValuePerUnit": 1.0,
"ruleName": null,
"taxRegionSource": 1,
"taxAuthorityId": null,
"taxCalcType": null,
"taxCode": "S",
"taxRate": 1,
"effectiveTaxRate": 1.0,
"activeDate": "2001-12-31",
"endDate": "2001-12-31",
"currencyCode": "USD",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z",
"taxGroupId": null
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_GTS_TAX_LOC_ITEM | Yes | No | No | No |
| MERCHAPI_GTS_TAX_LOC | Yes | No | No | No |
Get Store Tax Location
Functional Area
Global Tax Solution - Tax Services
Business Overview
This service can be used by external applications to obtain the tax location for a provided store or all stores.
In Merchandising, Tax (or VAT) Regions are associated with store definitions. These tax regions can be, or can have, a parent tax region. The tax region associated with a location must be at the lowest level, meaning a parent region cannot be assigned to a location. Store definitions may also have custom flexible attributes (CFAs) defined. If one or more of the CFAs associated with the store are flagged as taxable, it is possible to create tax rules that utilize these CFAs.
The Global Tax Solution (GTS) determines a store’s tax location based on the store’s tax region and the CFAs applied to the location and to tax rules. A location with CFAs used on a tax rule may have a different tax location from other locations that have the same tax region. If all stores are placed in the same tax region and there are no location level CFAs used on a GTS tax rule, all of these stores will have the same tax location, such as 10000001000, where 1000 is the tax region identifier. The CFA for locations is used in GTS as exception criteria for applying tax rules. For instance, all locations have the same tax region but one store qualifies for a benefit from the government to have a reduce rate. This store will have a CFA to reflect designation and rules to use the CFA. In this case, this store with the CFA will be placed in a different tax location than the other stores in the same tax region.
If a location is provided, the service will return that store’s tax location, if no location is provided the system will return all stores and their associated tax location. In order to fetch new updates pass the parameter of since/before timestamp.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: STORE
Additional business tables: GTS_RULES_CFA, SYSTEM_OPTIONS
JSON cache table: MERCHAPI_GTS_TAX_LOC
JSON generation view: not applicable; cache rows are populated directly by package logic
Functionally, the current delta and refresh logic only builds store rows (LOC_TYPE = ‘S’) and only for stores with a non-null STORE.VAT_REGION.
Stores without a matching GTS CFA restriction are assigned a tax location ID based on tax region, while stores with matching CFA restrictions are assigned a location-specific tax location ID.
The package compares the derived tax-location set with existing MERCHAPI_GTS_TAX_LOC rows to determine insert, merge, and delete behavior, and rebuild refresh marks cache rows deleted when the store no longer exists in STORE.
Initial Seeding and post enablement rebuild/repair
This service relies on the shared initial-seeding and rebuild flow used by foundation/ taxLocationItem.
Rebuild marks cache rows deleted when the store no longer exists in STORE.
ICL (Integration Change Log) table: ICL_RMS_STORE (ICL consumer name = MERCHAPI_3)
This service relies on the shared GTS change-capture and delta-processing flow used by foundation/taxLocationItem.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_GTS_TAX_LOC_ITEM
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_GTS_TAX_LOC_ITEM_ADHOC_PROCESS → MERCHAPI_GTS_TAX_LOC_ITEM_ADHOC_JOB
Webhook configuration api name: foundation/taxLocation
Special handling
Additional GET query parameters: locationType, locationId.
This service shares the same GTS process family as foundation/taxLocationItem and foundation/taxGroupRule.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/taxLocation
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
Output
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| locationType | No | String | Location Type |
| locationId | No | String (10) | Location |
| offsetkey | No | String | Offset key ([location type],[location],[tax location id] Example: S,120091,10000000012) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt |
| tribute) | |||
| able 5-202 Page etail Element Name | ResultsItemsMerch Required | apiGtsTaxLoc - Object. See Data Type | list of elements for Description |
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-202 PageResultsItemsMerchapiGtsTaxLoc - Object. See list of elements for detail
Table 5-203 MerchapiGtsTaxLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for tax location details. |
| location | No | Number(10,0) | The location ID of the store. |
| locationType | No | String (1) | The location type. Valid value is S - store. |
| taxLocationId | No | Number(11,0) | A unique identifer of a group of tax locations. |
| createDateTime | No | dateTime | This feld holds the date and time the record was created. |
| updateDateTime | No | dateTime | This feld holds the date and time the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the tax location record was last maintained. |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication. |
Table 5-204 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"location": 120091,
"locationType": "S",
"taxLocationId": 10000001000,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_GTS_TAX_LOC | Yes | No | No | No |
Get Tax Rule Groups
Functional Area
Global Tax Solution - Tax Services
Business Overview
This service retrieves the tax groups and associated tax rules for use by external systems. Tax rule groups are determined by Merchandising based on how many tax rules are applied to a given item/tax region combination.
Tax rules are defined for tax regions and a set of items. Tax rules contain calculation details that inform the system how to calculate the tax. A given item/location may have one or more applicable tax rules.
Tax Rules
Tax Rule | Items | Tax Region | Tax Calculation\
Tax Rule A | 111, 222, 333 | Main Region | Standard VAT 16%\
Tax Rule B | 444, 555, 666 | Main Region | Reduced VAT 0%\
Tax Rule C | 111, 222, 333 | Border Region | Standard VAT 8%\ Tax Rule D | 444, 555, 666 | Border Region | Reduced VAT 0%\
Tax Rule E | 222, 444 | Main Region | IEPS Tax 2.00 per unit\
Tax Rule F | 333, 555 | Border Region | IEPS Tax 1%
Each store in Merchandising will have an associated tax region:
Store Definitions Location | Tax Region\ Store A | Main Region\ Store B | Main Region\ Store C | Border Region\
Store D | Border Region
Merchandising will organize the tax rules into tax groups using the tax rule definitions and location’s tax region associations.
For any case where one or more items have a unique tax rule, or a unique set of tax rules at one or more stores, the system will create a tax group for the tax rule or group of tax rules.
Steps to determine the Tax Group for a given item/location:
Find the store’s tax location. The tax location identifier is derived based on the location’s tax region and the association of the location’s CFAs to one or more tax rules. A store with CFAs used on a tax rule may have a different tax location from other stores that are part of the same tax region.
Using the item and the store’s tax region, find the applicable tax rules.
For each unique result, whether it is one tax rule or multiple, the system will assign a new tax group identifier.
The table below shows the associated tax group for Items 111, 222, 333, 444, 555, or 666 at either the Main Region or Border Region based on the Tax Rules and Store Definitions listed above. Both items 111 and 333 at stores associated with the Main tax region, only require Tax Rule A, this is Group 1. There is one item that requires Tax Rule B, and it is item 666 at stores in the Main Region, this is Group 2. Item 222 at stores in the Main tax region have both Tax Rule A and Tax Rule E, this is Group 5. The table below shows the tax groups for this set of items and tax regions. This service will return the Tax Groups, the Tax Regions (referred to as Tax Location in the output) and the associated tax rules.
Tax Groups
Item | Tax Region | Tax Rule or Rules Applied | Tax Group\
111, 333 | Main Region | Tax Rule A | Group 1\ 666 | Main Region | Tax Rule B | Group 2\ 111, 222 | Border Region | Tax Rule C | Group 3\ 444, 666 | Border Region | Tax Rule D | Group 4\ 222 | Main Region | Tax Rule A and Tax Rule E | Group 5\ 444 | Main Region | Tax Rule B and Tax Rule E | Group 6\ 333 | Border Region | Tax Rule C and Tax Rule F | Group 7\
555 | Border Region | Tax Rule D and Tax Rule F | Group 8
The Tax Authority provided in the output of this service is derived by Merchandising Tax Codes setup (vat_codes).
In order to fetch new updates pass the parameter of since/before timestamp.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: MERCHAPI_GTS_TAX_LOC_ITEM, GTS_RULES_CONFIG
Additional business tables: VAT_CODES
JSON cache table: MERCHAPI_GTS_TAX_GROUP_RULE
JSON generation view: not applicable; cache rows are populated directly by package logic
The package derives the published groups from MERCHAPI_GTS_TAX_LOC_ITEM, enriches rule names from GTS_RULES_CONFIG, and pulls rule-detail JSON from V_MERCHAPI_GTS_TAX_RULE_JSON, which is built from GTS_RULES_CONFIG and VAT_CODES.
Functionally, the service publishes one row per (tax_group_id, tax_loc_id, rule_id) and represents the unique set of tax rules that applies to an item/tax-location combination.
To build a tax group, the package concatenates the ordered rule IDs with LISTAGG, hashes that string with ORA_HASH to derive tax_group_id, concatenates the corresponding rule names into group_name, and assigns rule_sequence by ascending rule_id.
Initial Seeding and post enablement rebuild/repair
This service relies on the shared initial-seeding and rebuild flow used by foundation/ taxLocationItem.
Mark cache rows deleted when a rule is no longer returned for an affected item in the current GTS calculation result.
Rebuild updates or inserts changed rows; no separate rebuild delete step was found in this package.
ICL (Integration Change Log) table: ICL_RMS_GTS_RULES_CONFIG delete events (ICL consumer name = MERCHAPI_3)
This service relies on the shared GTS change-capture and delta-processing flow used by foundation/taxLocationItem.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_GTS_TAX_LOC_ITEM
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_GTS_TAX_LOC_ITEM_ADHOC_PROCESS → MERCHAPI_GTS_TAX_LOC_ITEM_ADHOC_JOB
Webhook configuration api name: foundation/taxGroupRule
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/taxGroupRule
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key ([Tax Group Id],[Tax location], [Tax Rule Id] Example: 43242,5435345,123142 54) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Response Code: 200 (Success)
Table 5-205 PageResultsItemsMerchapiGtsTaxGroupRule - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
Table 5-205 (Cont.) PageResultsItemsMerchapiGtsTaxGroupRule - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-206 MerchapiGtsTaxGroupRule - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for tax group rule details. |
| taxGroupId | No | String (60) | A unique identifer of a group of tax rules for a given tax location. |
| groupName | No | String (254) | Tax group name. |
| taxLocationId | No | Number(11,0) | A unique identifer of a group of tax locations. |
| ruleId | No | Number(15,0) | Tax rule unique ID. |
| ruleSequence | No | Number(15,0) | A sequential number for the tax rule within the group. |
| ruleName | No | String (300) | Tax rule name. |
| taxRegionSource | No | Number(4,0) | Source Tax Region. |
| taxRegionDestination | No | Number(4,0) | Destination Tax Region. |
| taxAuthorityId | No | String (60) | A specifc tax authority that establishes the tax rate. The tax authority is normally a government body. For example, National, State, Province, City, and so on. |
| taxCalcType | No | String (6) | Defne the tax calculation type. Possible values are ’P’ercentage or ‘U’nit’. |
| taxCode | No | String (6) | Tax code. |
| taxRate | No | Number(20,10) | Tax rate in percentage when tax calculation type is in percentage. |
| effectiveTaxRate | No | Number(20,10) | Tax over tax rate calculated based in predecessor tax rule when applied. |
| activeDate | No | date | Effective date when this tax rule becomes active. |
Table 5-206 (Cont.) MerchapiGtsTaxGroupRule - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| endDate | No | date | End date when this tax rule expires. |
| currencyCode | No | String (3) | Contains the currency code for the tax rule. For unit tax application. |
| taxValuePerUnit | No | Number(20,10) | Tax value when tax calculation type is in per unit. |
| createDateTime | No | dateTime | This feld holds the date and time the record was created. |
| updateDateTime | No | dateTime | This feld holds the date and time the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the tax group rule record was last maintained. |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication. |
Table 5-207 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"taxGroupId": "43242",
"groupName": "Tax Rule A|Tax Rule E",
"taxLocationId": 10000001000,
"ruleId": 12314254,
"ruleSequence": 1,
"ruleName": "Tax Rule A",
"taxRegionSource": 1,
"taxRegionDestination": 1,
"taxAuthorityId": null,
"taxCalcType": null,
"taxCode": "S",
"taxRate": 1,
"effectiveTaxRate": 1.0,
"activeDate": "2001-12-31",
"endDate": "2001-12-31",
"currencyCode": "USD",
"taxValuePerUnit": 1.0,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than the limit defned, then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. |
| For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists, then 25 rows are returned along with a “next” link else no links would be added to the JSON response. | |
| links | “self”: This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Table 5-208 Items - Object. See list of elements for detail
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for tax group rules details. Valid Values are INSERT, UPSERT, UPDATE and DELETE. |
| taxGroupId | String | The tax group identifer is determined by Merchandising based on the criteria applied on the combinations of location tax identifcation, tax rules and items. |
| groupName | String | Group Name |
| taxLocationId | String | The tax location identifer is derived based on the location’s tax region and the association of the location’s CFAs to one or more tax rules. A store with CFAs used on a tax rule may have a different tax location from other stores that are part of the same tax region. |
| ruleId | String | Tax Rule identifer |
| ruleSequence | String | Sequence of the rule within the tax group |
| ruleName | String | Tax Rule Name |
| taxRegionSource | String | Source Tax Region. |
| taxRegionDestination | String | Destination Tax Region |
| taxAuthorityId | String | A specifc tax authority that establishes the tax rate. The tax authority is normally a government body. For example, National, State, Province, City, and so on. |
| taxCalcType | String | The tax calculation type which indicates if the tax is calculated as a percentage of a value or as a monetary amount per unit. Possible values are Percentage (P) or Per Unit (U). |
| taxCode | String | Tax code |
| taxRate | String | Tax rate in percentage when tax calculation type is Percentage (P). |
| effectiveTaxRate | String | Tax over tax rate calculated based on predecessor tax rule when applied |
| taxValuePerUnit | String | Tax value when tax calculation type is Per Unit (U). |
| activeDate | String | Date upon which this tax rule became, or will become active. |
| endDate | String | Date upon which this tax rule expired or will expire. |
| currencyCode | String | Contains the currency code for the tax rule. For per unit tax application. |
| createDateTime | String | This feld holds the record creation date. |
Table 5-208 (Cont.) Items - Object. See list of elements for detail
Name Data Type Description updateDateTime String This field holds the date when the record was last updated. cacheTimestamp String This field specifies date and time when the tax group record was last maintained. Sample Response Message { "items": [ { "action": "INSERT", "taxGroupId": 2654787678, "groupName": "Rule 55003", "taxLocationId": 10000000011, "ruleId": "55003", "createDateTime": "2024-07-19T02:37:21.757Z", "updateDateTime": "2024-07-19T02:37:21.757Z", "cacheTimestamp": "2024-07-19T02:37:21.757Z", "ruleName": "Rule 55003", "taxRegionSource": 1, "taxRegionDestionation": 11, "taxAuthorityId": null, "taxCalcType": "P", "taxCode": "MIV2", "taxRate": 0, "effectiveTaxRate": null, "taxValuePerUnity": null, "activeDate": "2024-04-23", "endDate": null, "currencyCode": null, "ruleSequence": "1" } ], "hasMore": true, "limit": 1, "count": 1, "links": [ { "href": "https://<server>:<port>/Application/services/foundation/ taxGroupRule? limit=1&since=1970-01-01T00:00:00.001Z&before=2024-07-24T17:26:51.588Z", "rel": "self" }, { "href": "https://<server>:<port>/Application/services/foundation/ taxGroupRule? offsetkey=2654787678%2C10000000011%2C55003&limit=1&since=1970-01-01T00:00:00.0 01Z&before=2024-07-24T17:26:51.588Z", "rel": "next" }
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_GTS_TAX_GROUP_RULE | Yes | No | No | No |
Tax Rule Upload Service
Functional Area
Foundation - Tax Rules
Business Overview
The primary role of this service is to create, update or delete Merchandising’s Tax Rules.
Create Tax Rule
Business Overview
Create a new Tax Rule.
Service Type
POST
ReST URL
/foundation/taxRules/create
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| ruleId | No | Number (15) | Tax rule unique ID. |
| ruleName | No | String (300) | Tax Rule Name. |
| taxRegionSource | No | Number (4) | Source Tax Region. |
| taxRegionDestination | No | Number (4) | Destination Tax Region. |
| activeDate | No | date | Effective date when this tax rule become active. |
| endDate | No | date | End date when this tax rule expired. |
| status | No | String (6) | Status of the Rule. Valid Values are ’AC’ for Active, ‘AP’ for Approved, ‘O’ Obsoleted, ‘S’ for Submitted, ‘U’ for Updated, ‘W’ for Worksheet. |
| taxCode | No | String (6) | Tax code. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| taxCalcType | No | String (6) | Defne the tax calculation type. Possible values are ‘P’ for Percentage or ‘U’ for Unit’. |
| taxRate | No | Number (20,10) | Tax rate in percentage when tax calculation type is in percentage. |
| taxBasisType | No | String (6) | Indicate which value is used as base calculation to apply tax. Valid values are:’C’ for UNIT_COST, ‘R’ for UNIT_R’ETAIL, or ‘B’ for BOTH, ‘N’ON_MERCH_COST. |
| taxBasisFactor | No | Number (20,10) | Contains a unique user specifed code representing the non- merchandise code. |
| nonMerchCode | No | String (6) | Contains a unique user specifed code representing the non- merchandise code. |
| uomType | No | String (4) | UOM type selected to be considered when tax calculation is in unit. |
| uomValue | No | Number (20,10) | UOM value selected to be considered when tax calculation is in unit. |
| currencyCode | No | String (3) | Contains the currency code for the tax rule. For unit tax application. |
| reverseTaxInd | No | String (1) | Reverse Tax Indicator: Valid values are ‘Y’ for Enable or ‘N’ for Disable. |
| reverseTaxThreshold | No | Number (20,10) | Threshold amount to be taken in consideration while returning the tax code. It will have value when REVERSE_TAX_IND is Y. |
| predecessorTaxRulesId | No | Number (15) | Holds the predecessor rule ID that the result of the tax calculated in the predecessor rule will be added to the tax basis of the current rule in order to address Tax over Tax calculation requirement. |
| regionExplodeType | No | String (6) | Tax over tax rate calculated based in predecessor tax rule when applied. |
| gtsRulesConfgTlTbl | No | Collection of Object | Translation records associated with tax record. |
| gtsRulesConditionsTbl | No | Collection of Object | Conditions associated with tax record. |
| gtsRulesCfaTbl | No | Collection of Object | Rules restrictions associated with tax record. |
Table 5-209 GtsRulesConfigTlTbl - This table receive information regarding translations that may be necessary.
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| ruleName | No | String (300) | Translated Rule. |
| lang | No | Number (6) | Lang. |
Table 5-210 GtsRulesConditionsTbl - This table receives the conditions that will be used in the processing.
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| conditionType | No | String (6) | Type of condition used. Valid values are ‘1’ for All Departments,‘2’ for Department,‘3’ for Class,‘4’ for Subclass,‘5’ for Item,‘6’ for Parent/ Diff,‘7’ for Item List and ‘8’ for Upload List. |
| dept | No | Number (4) | Item Department. |
| class | No | Number (4) | Item Class. |
| subclass | No | Number (4) | Item subclass. |
| itemId | No | String (25) | Item ID. |
| itemList | No | Number (8) | This feld contains Item List number that was used to create this item record. |
| excludeInd | No | String (1) | Indicates if the condition in exclude or include. Valid values are Y or N. |
| diffId | No | String (10) | Diff ID used when condition type is Parent/DIFF. |
Table 5-211 GtsRulesCfaTbl - This table (CFA) receives and process the restrictions associated with the rules.
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| attributeId | No | Number (10) | This column holds the attribute id that this extended data is associated with. |
| attributeValue | No | String (250) | This column holds the CFA value selected for the rule. |
| restrictionLevel | No | String (6) | Restriction Level. Valid values are M for Merchandise Hierarchy, D for Destination Region and S for Source Region. |
JSON Structure:
{
"ruleId": 919875,
"ruleName": "Tax Rules US-CA",
"taxRegionSource": 1000,
"taxRegionDestination": 200,
"activeDate": "2022-09-01",
"endDate": "2022-12-31",
"status": "S",
"taxCode": "S",
"taxCalcType": "P",
"taxRate": 35.00,
"taxBasisType": "B",
"taxBasisFactor": 11.00,
"nonMerchCode": "",
"uomType": ",
"uomValue": 68.00,
"currencyCode": "",
"reverseTaxInd": "",
"reverseTaxThreshold": 19.00,
"predecessorTaxRulesId": 514301,
"regionExplodeType": "A",
"gtsRulesConfigTlTbl": [
{
"ruleName": "Tax Rules TL US-CA",
"lang": 2
}
],
"gtsRulesConditionsTbl": [
{
"conditionType": "1"
}
],
"gtsRulesCfaTbl": [
{
"attributeId": 4,
"attributeValue": "A",
"restrictionLevel": "S"
}
]
}
Output
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | No | String (255) | Process Execution status.E – Execution fnished with errors. S – Execution completed successfully. |
| errMsg | No | String (4000) | Error message, in case of error. |
| errTbl | No | Collection of Object | Error table in case of existing errors. |
Table 5-212 ErrTbl - Table used to detail errors associated with execution.
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| columnName | No | String (255) | Column name associated with error |
| message. | |||
| errorMsg | No | String (4000) | Error msg. |
JSON Structure:
{
"status": "E",
"errMsg": "”
"errTbl": [
{
"columnName": "STATUS",
"errorMsg": "Invalid Status.","
}
]
}
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 do not match the schema definition for this service.
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"
}
]
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SVC_GTS_RULES_CONFIG | Yes | Yes | No | No |
| SVC_GTS_RULES_CONFIG_TL | Yes | Yes | No | No |
| SVC_GTS_RULES_CFA | Yes | Yes | No | No |
| SVC_GTS_RULES_CONDITIONS | Yes | Yes | No | No |
| GTS_RULES_CONFIG | Yes | No | No | No |
| GTS_RULES_CONFIG_TL | Yes | No | No | No |
| GTS_RULES_CFA | Yes | No | No | No |
| GTS_RULES_CONDITIONS | Yes | No | No | No |
Update Tax Rule
Business Overview
Update an existing Tax Rule.
Service Type
PUT
ReST URL
/foundation/taxRules/update
Input
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| ruleId | No | Number (15) | Tax rule unique ID. |
| ruleName | No | String (300) | Tax Rule Name. |
| taxRegionSource | No | Number (4) | Source Tax Region. |
| taxRegionDestination | No | Number (4) | Destination Tax Region. |
| activeDate | No | date | Effective date when this tax rule become active. |
| endDate | No | date | End date when this tax rule expired. |
| status | No | String (6) | Status of the Rule. Valid Values are ’AC’ for Active, ‘AP’ for Approved, ‘O’ Obsoleted, ‘S’ for Submitted, ‘U’ for Updated, ‘W’ for Worksheet. |
| taxCode | No | String (6) | Tax code. |
| taxCalcType | No | String (6) | Defne the tax calculation type. Possible values are ‘P’ for Percentage or ‘U’ for Unit’. |
| taxRate | No | Number (20,10) | Tax rate in percentage when tax calculation type is in percentage. |
| taxBasisType | No | String (6) | Indicate which value is used as base calculation to apply tax. Valid values are: ’C’ for UNIT_COST, ‘R’ for UNIT_R’ETAIL, or ‘B’ for BOTH, ‘N’ON_MERCH_COST. |
| taxBasisFactor | No | Number (20,10) | Contains a unique user specifed code representing the non-merchandise code. |
| nonMerchCode | No | String (6) | Contains a unique user specifed code representing the non-merchandise code. |
| uomType | No | String (4) | UOM type selected to be considered when tax calculation is in unit. |
| uomValue | No | Number (20,10) | UOM value selected to be considered when tax calculation is in unit. |
| currencyCode | No | String (3) | Contains the currency code for the tax rule. For unit tax application. |
| reverseTaxInd | No | String (1) | Reverse Tax Indicator: Valid values are ‘Y’ for Enable or ‘N’ for Disable. |
| reverseTaxThreshold | No | Number (20,10) | Threshold amount to be taken in consideration while returning the tax code. It will have value when REVERSE_TAX_IND is Y. |
| predecessorTaxRulesId | No | Number (15) | Holds the predecessor rule ID that the result of the tax calculated in the predecessor rule will be added to the tax basis of the current rule in order to address Tax over Tax calculation requirement. |
| regionExplodeType | No | String (6) | Tax over tax rate calculated based in predecessor tax rule when applied. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| gtsRulesConfgTlTbl | No | Collection of Object | Translation records associated with tax record. |
| gtsRulesConditionsTbl | No | Collection of Object | Conditions associated with tax record. |
| gtsRulesCfaTbl | No | Collection of Object | Rules restrictions associated with tax record. |
Table 5-213 GtsRulesConfigTlTbl - This table receive information regarding translations that may be necessary.
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| ruleName | No | String (300) | Translated Rule. |
| lang | No | Number (6) | Lang. |
Table 5-214 GtsRulesConditionsTbl - This table receives the conditions that will be used in the processing.
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| conditionType | No | String (6) | Type of condition used. Valid values are ‘1’ for All Departments,‘2’ for Department,‘3’ for Class,‘4’ for Subclass,‘5’ for Item,‘6’ for Parent/ Diff,‘7’ for Item List and ‘8’ for Upload List. |
| dept | No | Number (4) | Item Department. |
| class | No | Number (4) | Item Class. |
| subclass | No | Number (4) | Item subclass. |
| itemId | No | String (25) | Item ID. |
| itemList | No | Number (8) | This feld contains Item List number that was used to create this item record. |
| excludeInd | No | String (1) | Indicates if the condition in exclude or include. Valid values are Y or N. |
| diffId | No | String (10) | Diff ID used when condition type is Parent/DIFF. |
Table 5-215 GtsRulesCfaTbl - This table (CFA) receives and process the restrictions associated with the rules.
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| attributeId | No | Number (10) | This column holds the attribute id that this extended data is associated with. |
| attributeValue | No | String (250) | This column holds the CFA value selected for the rule. |
Table 5-215 (Cont.) GtsRulesCfaTbl - This table (CFA) receives and process the restrictions associated with the rules.
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| restrictionLevel | No | String (6) | Restriction Level. Valid values are M |
| for Merchandise Hierarchy, D for Destination Region and S for Source Region. |
JSON Structure:
{
"ruleId": 919875,
"ruleName": "Tax Rules US-CA",
"taxRegionSource": 1000,
"taxRegionDestination": 200,
"activeDate": "2022-09-01",
"endDate": "2022-12-31",
"status": "W",
"taxCode": "S",
"taxCalcType": "P",
"taxRate": 35.00,
"taxBasisType": "B",
"taxBasisFactor": 11.00,
"nonMerchCode": "",
"uomType": ",
"uomValue": 68.00,
"currencyCode": "",
"reverseTaxInd": "",
"reverseTaxThreshold": 19.00,
"predecessorTaxRulesId": 514301,
"regionExplodeType": "A",
"gtsRulesConfigTlTbl": [
{
"ruleName": "Tax Rules TL US-CA",
"lang": 2
}
],
"gtsRulesConditionsTbl": [
{
"conditionType": "1"
}
],
"gtsRulesCfaTbl": [
{
"attributeId": 4,
"attributeValue": "A",
"restrictionLevel": "S"
}
]
}
Output
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | No | String (255) | Process Execution status.E – Execution fnished with errors. |
| S – Execution completed successfully. | |||
| errMsg | No | String (4000) | Error message, in case of error. |
| errTbl | No | Collection of Object | Error table in case of existing errors. |
Table 5-216 ErrTbl - Table used to detail errors associated with execution.
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| columnName | No | String (255) | Column name associated with error |
| message. | |||
| errorMsg | No | String (4000) | Error msg. |
JSON Structure:
{
"status": "E",
"errMsg": " CANNOT_UPD_RULE ",
"errTbl": [
{
"columnName": "",
"errorMsg": " The rule was not submitted successfully."
}
]
}
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 do not match the schema definition for this service.
JSON Structure:
{
"status": "ERROR",
"message": "Error found in validation of input payload",
"validationErrors": [
{
"error": "must be one of Y, N",
"field": "createRecord.arg0.approveInd",
"inputValue": "X"
}
]
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SVC_GTS_RULES_CONFIG | Yes | Yes | No | No |
| SVC_GTS_RULES_CONFIG_TL | Yes | Yes | No | No |
| SVC_GTS_RULES_CFA | Yes | Yes | No | No |
| SVC_GTS_RULES_CONDITIONS | Yes | Yes | No | No |
| GTS_RULES_CONFIG | Yes | No | Yes | No |
| GTS_RULES_CONFIG_TL | Yes | No | Yes | No |
| GTS_RULES_CFA | Yes | No | Yes | No |
| GTS_RULES_CONDITIONS | Yes | No | Yes | No |
Delete Tax Rule
Business Overview
Delete an existing Tax Rule
Service Type
DELETE
ReST URL
/foundation/taxRules/delete
Input
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| ruleId | No | Number (15) | Tax rule unique ID. |
| ruleName | No | String (300) | Tax Rule Name. |
| taxRegionSource | No | Number (4) | Source Tax Region. |
| taxRegionDestination | No | Number (4) | Destination Tax Region. |
| activeDate | No | date | Effective date when this tax rule become active. |
| endDate | No | date | End date when this tax rule expired. |
| status | No | String (6) | Status of the Rule. Valid Values are ’AC’ for Active, ‘AP’ for Approved, ‘O’ Obsoleted, ‘S’ for Submitted, ‘U’ for Updated, ‘W’ for Worksheet. |
| taxCode | No | String (6) | Tax code. |
| taxCalcType | No | String (6) | Defne the tax calculation type. Possible values are ‘P’ for Percentage or ‘U’ for Unit’. |
| taxRate | No | Number (20,10) | Tax rate in percentage when tax calculation type is in percentage. |
| taxBasisType | No | String (6) | Indicate which value is used as base calculation to apply tax. Valid values are: ’C’ for UNIT_COST, ‘R’ for UNIT_R’ETAIL, or ‘B’ for BOTH, ‘N’ON_MERCH_COST. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| taxBasisFactor | No | Number (20,10) | Contains a unique user specifed code representing the non-merchandise code. |
| nonMerchCode | No | String (6) | Contains a unique user specifed code representing the non-merchandise code. |
| uomType | No | String (4) | UOM type selected to be considered when tax calculation is in unit. |
| uomValue | No | Number (20,10) | UOM value selected to be considered when tax calculation is in unit. |
| currencyCode | No | String (3) | Contains the currency code for the tax rule. For unit tax application. |
| reverseTaxInd | No | String (1) | Reverse Tax Indicator: Valid values are ‘Y’ for Enable or ‘N’ for Disable. |
| reverseTaxThreshold | No | Number (20,10) | Threshold amount to be taken in consideration while returning the tax code. It will have value when REVERSE_TAX_IND is Y. |
| predecessorTaxRulesId | No | Number (15) | Holds the predecessor rule ID that the result of the tax calculated in the predecessor rule will be added to the tax basis of the current rule to address Tax over Tax calculation requirement. |
| regionExplodeType | No | String (6) | Tax over tax rate calculated based in predecessor tax rule when applied. |
| gtsRulesConfgTlTbl | No | Collection of Object | Translation records associated with tax record. |
| gtsRulesConditionsTbl | No | Collection of Object | Conditions associated with tax record. |
| gtsRulesCfaTbl | No | Collection of Object | Rules restrictions associated with tax record. |
Table 5-217 GtsRulesConfigTlTbl - This table receive information regarding translations that may be necessary.
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| ruleName | No | String (300) | Translated Rule. |
| lang | No | Number (6) | Lang. |
Table 5-218 GtsRulesConditionsTbl - This table receives the conditions that will be used in the processing.
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| conditionType | No | String (6) | Type of condition used. Valid values are ‘1’ for All Departments,‘2’ for Department,‘3’ for Class,‘4’ for Subclass,‘5’ for Item,‘6’ for Parent/ Diff,‘7’ for Item List and ‘8’ for Upload List. |
| dept | No | Number (4) | Item Department. |
| class | No | Number (4) | Item Class. |
| subclass | No | Number (4) | Item subclass. |
| itemId | No | String (25) | Item ID. |
| itemList | No | Number (8) | This feld contains Item List number that was used to create this item record. |
| excludeInd | No | String (1) | Indicates if the condition in exclude or include. Valid values are Y or N. |
| diffId | No | String (10) | Diff ID used when condition type is Parent/DIFF. |
Table 5-219 GtsRulesCfaTbl - This table (CFA) receives and process the restrictions associated with the rules.
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| attributeId | No | Number (10) | This column holds the attribute id that this extended data is associated with. |
| attributeValue | No | String (250) | This column holds the CFA value selected for the rule. |
| restrictionLevel | No | String (6) | Restriction Level. Valid values are M for Merchandise Hierarchy, D for Destination Region and S for Source Region. |
JSON Structure:
{
"ruleId": 919875,
"ruleName": "Tax Rules US-CA",
"taxRegionSource": 1000,
"taxRegionDestination": 200,
"activeDate": "2022-09-01",
"endDate": "2022-12-31",
"status": "W",
"taxCode": "S",
"taxCalcType": "P",
"taxRate": 35.00,
"taxBasisType": "B",
"taxBasisFactor": 11.00,
"nonMerchCode": "",
"uomType": ",
"uomValue": 68.00,
"currencyCode": "",
"reverseTaxInd": "",
"reverseTaxThreshold": 19.00,
"predecessorTaxRulesId": 514301,
"regionExplodeType": "A",
"gtsRulesConfigTlTbl": [
{
"ruleName": "Tax Rules TL US-CA",
"lang": 2
}
],
"gtsRulesConditionsTbl": [
{
"conditionType": "1"
}
],
"gtsRulesCfaTbl": [
{
"attributeId": 4,
"attributeValue": "A",
"restrictionLevel": "S"
}
]
}
Output
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | No | String (255) | Process Execution status.E – Execution fnished with errors. |
| S – Execution completed successfully. | |||
| errMsg | No | String (4000) | Error message, in case of error. |
| errTbl | No | Collection of Object | Error table in case of existing errors. |
Table 5-220 ErrTbl - Table used to detail errors associated with execution.
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| columnName | No | String (255) | Column name associated with error |
| message. | |||
| errorMsg | No | String (4000) | Error msg. |
JSON Structure:
{
"status": "E",
"errMsg": " CANNOT_UPD_RULE ",
"errTbl": [
{
"columnName": "",
"errorMsg": " The rule was not submitted successfully."
}
]
}
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 do not match the schema definition for this service.
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"
}
]
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SVC_GTS_RULES_CONFIG | Yes | Yes | No | No |
| SVC_GTS_RULES_CONFIG_TL | Yes | Yes | No | No |
| SVC_GTS_RULES_CFA | Yes | Yes | No | No |
| SVC_GTS_RULES_CONDITIONS | Yes | Yes | No | No |
| GTS_RULES_CONFIG | Yes | No | No | Yes |
| GTS_RULES_CONFIG_TL | Yes | No | No | Yes |
| GTS_RULES_CFA | Yes | No | No | Yes |
| GTS_RULES_CONDITIONS | Yes | No | No | Yes |
Franchise Management
The following services are included in this functional area:
-
Customer Credit Status Upload Service
- Update Customer Credit Status
-
Franchise Order Upload Service
-
Create Franchise Orders
-
Manage Franchise Orders
-
Customer Credit Status Upload Service
The following services are included in this functional area:
- Update Customer Credit Status
Update Customer Credit Status
Functional Area
Franchise Management
Business Overview
This service provides a way for an external source, usually a financials system, to update the credit status for a franchise customer in Merchandising. This status is used when determining whether a franchisee order can be approved. Valid values are Y (credit is good) and N (credit issues). For each collection of customer and customer group passed into the service, the credit flag will be updated with the value indicated in the service call.
Merchandising returns failure status as part of the response object in the web service call if credit flag is not updated due to validation errors.
This service supports a collection of record to be submitted. The service either processes all the records or rejects all the record if there is a one or more bad record.
Service Type
PUT
ReST URL
MerchIntegrations/services/franchiseManagement/customerCreditStatus/update
Input Payload Details
Table 5-221 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. This should match with the number of records in the input message. |
| items | No | Collection of Object | Collection of Customer records. |
Table 5-222 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customerId | Yes | Number (10) | The unique customer identifer. |
| customerGroupId | Yes | Number (10) | Customer Group to which the customer belongs to. |
Table 5-222 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| creditInd | Yes | String (1) | Determine if the customer has good |
| credit. valid values ‘Y’ and ‘N’. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"customerId": 10061,
"customerGroupId": 1006,
"creditInd": "Y"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Franchise Order Upload Service
The following services are included in this functional area:
-
Create Franchise Orders
-
Manage Franchise Orders
Create Franchise Orders
Functional Area
Franchise Management
Business Overview
Deprecated in v24.1.301.0: Scheduled for Removal in 2 Years.
Use MerchIntegrations/services/franchiseManagement/franchiseOrder/manage
This service is used from an external source, usually an order management system, to create franchise orders in Merchandising. This service accepts a collection of franchise order and will return success or failure through the service response object. The franchise order uploaded through this service will be created with an order type of ‘EDI’. A linked transfer, PO or store order will be created for the approved franchise orders.
Franchise orders created via this service will be systematically approved if the customer is setup for auto approval, provided the customer has valid credit. If the order does not meet the criteria for auto-approval, Merchandising will create the franchise order in Input or Require Credit Approval and will provide the reason of approval failure in the response object. Franchise orders from customers that are not identified for ‘Auto Approval’ are uploaded into Merchandising in Input status. Such orders will need to be manually approved in Merchandising to be considered active.
The service allows upload of one or more franchise orders in a single service call. Each request is treated as a single unit of work and if there are no validation errors or business validation errors, all the franchise orders in the message will be created and the service will return success through the service response object. In case of one or more validation errors, the service call will be rejected, and the error response will contain the details of the validation errors.
Item Validation
-
Packs are allowed for warehouse sourced or supplier sourced franchise orders only. If the pack added is a buyer pacwith an ‘order as’ type of eaches, then the pack is exploded to its components.
-
Deposit container items cannot be added to franchise orders. When the deposit content item is added to an order, the associated container item gets added as well. Deposit item content and container items must have the same costing location.
-
Transformable orderable items can be added to an order, however, transformable sellable items are not allowed, as these are not inventoried.
-
There cannot be multiple detail record for the same source location/item/customer location combination within a franchise order.
-
Multiple order detail lines with the same source location, item and customer location combination in the franchise order is not allowed.
Source Validations
-
For supplier sourced orders, the supplier must be an active supplier and allows direct store deliveries.
-
For supplier sourced franchise order, items must be ‘Active’ at the franchise store in order to be included on the order.
-
The supplier must belong to the same org unit as the costing location.
-
For warehouse or company store sourced order, the items must not be in ‘Delete’ status at the source location and must be in either ‘Active’ or ‘Discontinued’ status at the franchise store.
-
If the source for franchise order is not specified, then the costing location for the item and franchise store will be used as the source location.
-
If the source location is a physical warehouse, then the service will use distribution rules to determine from which virtual warehouse the inventory will be pulled, similar to distribution rules used for non-franchise transfers.
Customer Location Validation
-
If item/franchise store relationship does not exist, the franchise store would be auto ranged as part of franchise order creation.
-
For source location as a store, the customer store cannot be non-stockholding.
-
When a franchise order is uploaded through this service, having a future cost record for the item/franchise store combination is not necessary. Whether or not the cost template relationship is defined for the item/franchise store, the order can still be approved based on the provided fixed cost. However, if the fixed cost is also not provided, then the order creation would fail.
Inventory Validations
The inventory validation for Franchise orders sourced from company locations is subject to the setting of the ‘Validate Availability for External Franchise Orders’ system option. If set to No, Franchise Order creation would be carried out without checking for inventory availability. If set to Yes, then the requested quantity is validated against the available inventory at location for the warehouse or store sourced franchise orders. For the warehouse sourced orders, if the requested quantity exceeds the available stock at the warehouse, then Merchandising checks whether the item is on the Store Order replenishment at the same sourcing warehouse for the franchise store. If so, then an order is placed for the sourcing warehouse from the supplier for the unavailable quantity and the sourcing for the franchise location is handled via transfers created through Merchandising replenishment process. When the source location is a store, requested inventory must be available at the location.
Order Date Validations
-
Multiple franchise orders with the same source location, item, customer location and need date combination are not allowed in Merchandising.
-
For the supplier sourced franchise orders, the not after date must be greater than supplier lead time.
-
For the warehouse sourced franchise orders, if the franchise order has a need date that is less than the order lead days in the future, the franchise order is fulfilled with the available warehouse inventory. Any remaining is fulfilled via Store Order replenishment if the item is on Store Order replenishment at the same sourcing warehouse for the franchise store.
-
For store sourced franchise orders, the need date must be within order lead days.
Item Validation
-
Packs are allowed for warehouse sourced or supplier sourced franchise orders only. If the pack added is a buyer pacwith an ‘order as’ type of eaches, then the pack is exploded to its components.
-
Deposit container items cannot be added to franchise orders. When the deposit content item is added to an order, the associated container item gets added as well. Deposit item content and container items must have the same costing location.
-
Transformable orderable items can be added to an order, however, transformable sellable items are not allowed, as these are not inventoried.
-
There cannot be multiple detail record for the same source location/item/customer location combination within a franchise order.
-
Multiple order detail lines with the same source location, item and customer location combination in the franchise order is not allowed.
Source Validations
-
For supplier sourced orders, the supplier must be an active supplier and allows direct store deliveries.
-
For supplier sourced franchise order, items must be ‘Active’ at the franchise store in order to be included on the order.
-
The supplier must belong to the same org unit as the costing location.
-
For warehouse or company store sourced order, the items must not be in ‘Delete’ status at the source location and must be in either ‘Active’ or ‘Discontinued’ status at the franchise store.
-
If the source for franchise order is not specified, then the costing location for the item and franchise store will be used as the source location.
-
If the source location is a physical warehouse, then the service will use distribution rules to determine from which virtual warehouse the inventory will be pulled, similar to distribution rules used for non-franchise transfers.
Customer Location Validation
-
If item/franchise store relationship does not exist, the franchise store would be auto ranged as part of franchise order creation.
-
For source location as a store, the customer store cannot be non-stockholding.
-
When a franchise order is uploaded through this service, having a future cost record for the item/franchise store combination is not necessary. Whether or not the cost template relationship is defined for the item/franchise store, the order can still be approved based on the provided fixed cost. However, if the fixed cost is also not provided, then the order creation would fail.
Inventory Validations
The inventory validation for Franchise orders sourced from company locations is subject to the setting of the ‘Validate Availability for External Franchise Orders’ system option. If set to No, Franchise Order creation would be carried out without checking for inventory availability. If set to Yes, then the requested quantity is validated against the available inventory at location for the warehouse or store sourced franchise orders. For the warehouse sourced orders, if the requested quantity exceeds the available stock at the warehouse, then Merchandising checks whether the item is on the Store Order replenishment at the same sourcing warehouse for the franchise store. If so, then an order is placed for the sourcing warehouse from the supplier for the unavailable quantity and the sourcing for the franchise location is handled via transfers created through Merchandising replenishment process. When the source location is a store, requested inventory must be available at the location.
Order Date Validations
-
Multiple franchise orders with the same source location, item, customer location and need date combination are not allowed in Merchandising.
-
For the supplier sourced franchise orders, the not after date must be greater than supplier lead time.
-
For the warehouse sourced franchise orders, if the franchise order has a need date that is less than the order lead days in the future, the franchise order is fulfilled with the available warehouse inventory. Any remaining is fulfilled via Store Order replenishment if the item is on Store Order replenishment at the same sourcing warehouse for the franchise store.
-
For store sourced franchise orders, the need date must be within order lead days.
Service Type
POST
ReST URL
MerchIntegrations/services/franchiseManagement/franchiseOrder/create
Input Payload Details
Table 5-223 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | References a collection of franchise |
| Object | order creation details. |
Table 5-224 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customerId | Yes | Number (10) | This value should be a valid customer id. |
| orderReferenceNo | Yes | String (20) | This is an external reference number that would be provided by the franchisee for their tracking purposes. |
| currencyCode | Yes | String (3) | This feld represents the currency of the order, which may or may not be different from the primary currency in the system. Valid values for this feld are based on the currency codes held in the CURRENCIES table. |
| exchangeRate | No | Number (20,10) | This feld represents the exchange rate between the primary currency and the franchise order currency. If this is not provided, it is defaulted based on the conversion type set at system level. |
| freight | No | Number (20,4) | This feld represents any freight charges associated to the franchise order. |
Table 5-224 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| otherCharges | No | Number (20,4) | This feld represents other miscellaneous charges associated to the franchise order. |
| defaultBillingLocation | No | Number (10) | A customer’s location where the billing for the entire order is sent. If blank, each location is billed. |
| billToAddressType | No | String (2) | This feld represents the address type for the default billing location. This feld is defaulted to Invoice address. |
| comments | No | String (2000) | Free form comments associated with the franchise order. |
| details | Yes | Collection of Object | Details of the orders. At least one detail item is mandatory. |
Table 5-225 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This is the item which is on the Franchise Order. This should be an approved, inventory, orderable and transaction level item. The item should be ranged to both customer location and source location and must not be a consignment/ concession item. |
| customerLocation | Yes | Number (10) | This feld holds a valid franchise location number. |
| sourceLocationType | No | String (2) | Contains the source entity type from where the items will originate. Valid values are ST - Store, WH - Warehouse, SU - Supplier. If this feld is populated, the source location should also be populated. |
| sourceLocation | No | Number (10) | Contains the location id from where this item will be sourced from. The id will correspond to a company store, warehouse or supplier depending on the source type value. |
| requestedQuantity | Yes | Number (12,4) | This feld represents the quantity of the item on this record being ordered. This value is always written in the standard UOM for the item. |
| unitOfPurchase | No | String (3) | This feld contains the unit of purchase information. Must be the standard unit of measure or a valid pallet name/case name/inner name for the item/supplier. |
Table 5-225 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| needDate | Yes | date | This date represents the initial date by which the franchisee wants the item on this order. The date format should be YYYY-MM-DD. The need date can be business date (VDATE) or a date in future. |
| notAfterDate | Yes | date | This date represents the last date by which the franchisee will accept the item on this order. The date format should be YYYY-MM-DD. This date should be after need date. |
| fxedCost | No | Number (20,4) | This is a user defned cost which will override the customer cost for the item on this order if populated. This should be a positive numeric value. This must be provided if there are no cost templates associated with the item. |
Table 5-226 CreateError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customerId | Yes | Number (10) | Input Customer Id |
| orderReferenceNo | Yes | String (20) | Input order reference number |
| item | No | String (25) | Input item |
| customerLocation | No | Number (10) | Input franchise location number |
| sourceLocationType | No | String (2) | Input source location type |
| sourceLocation | Yes | Number (10) | Input source location id |
| errors | Yes | Array of String | List of errors identifed during business data processing of the request |
Sample Input Message
{
"items": [
{
"customerId": 1001,
"orderReferenceNo": "1001-A",
"currencyCode": "USD",
"exchangeRate": 52.5,
"freight": 23.5,
"otherCharges": 2.58,
"defaultBillingLocation": 100123,
"billToAddressType": "01",
"comments": "Franchise order 1001-A",
"details": [
{
"item": "104300083",
"customerLocation": 100123,
"sourceLocationType": "ST",
"sourceLocation": 909090,
"requestedQuantity": 9000,
"unitOfPurchase": "EA",
"needDate": "2001-12-31",
"notAfterDate": "2001-12-31",
"fixedCost": 95
}
]
}
]
}
Response Code: 200 (Success)
Table 5-227 CreateResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of | References a collection of franchise |
| Object | orders created. |
Table 5-228 CreateResponse.Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| franchiseOrder | Yes | Number (10) | This is the unique identifer of the franchise order that is generated by Merchandising. |
| customerId | Yes | Number (10) | Input Customer Id |
| orderReferenceNo | Yes | String (20) | Input order reference number |
| status | Yes | String (1) | This contains the status in which the Franchise order was created. This can be I - Input or A - Approved. |
| autoApproveErrors | No | Array of String | This will be populated with the reason (like customer fails credit check) why the order could not be approved and ended up getting created in Input status. Using the UI, the franchise order should be approved after fxing the issue. |
| transactions | No | Collection of Object | References a collection of transfers or purchase orders created. |
Table 5-229 Transactions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customerLocation | Yes | Number (10) | This feld holds a valid franchise |
location number. |
Table 5-229 (Cont.) Transactions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| sourceLocation | Yes | Number (10) | Contains the location id from where this item will be sourced from. The id will correspond to a company store, warehouse or supplier depending on the source type value. |
| sourceLocationType | Yes | String (2) | Contains the source entity type from where the items will originate. Valid values are ST - Store, WH - Warehouse, SU - Supplier. If this feld is populated, the source location should also be populated. |
| needDate | Yes | date | This date represents the initial date by which the franchisee wants the item on this order. The date format should be YYYY-MM-DD. The need date can be business date (VDATE) or a date in future. |
| documentNo | Yes | Number (12) | This contains the purchase order or transfer number created. |
| documentType | Yes | String (1) | This contains the document type generated. This can be P - Purchase Order or T - Transfer. |
Sample Response Message
{
"items": [
{
"franchiseOrder": 30001,
"customerId": 1001,
"orderReferenceNo": "1001-A",
"status": "A",
"autoApproveErrors": [
"null"
],
"transactions": [
{
"customerLocation": 100123,
"sourceLocation": 909090,
"sourceLocationType": "ST",
"needDate": "2001-12-31",
"documentNo": 22145453,
"documentType": "T"
}
]
}
]
}
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.
Table 5-230 CreateError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customerId | Yes | Number (10) | Input Customer Id |
| orderReferenceNo | Yes | String (20) | Input order reference number |
| item | No | String (25) | Input item |
| customerLocation | No | Number (10) | Input franchise location number |
| sourceLocationType | No | String (2) | Input source location type |
| sourceLocation | Yes | Number (10) | Input source location id |
| errors | Yes | Array of String | List of errors identifed during business data processing of the request |
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": [
{
"customerId": 1001,
"orderReferenceNo": "1001-A",
"item": "104300083",
"customerLocation": 100123,
"sourceLocationType": "ST",
"sourceLocation": 909090,
"errors": [
"Customer Location passed in franchise order is not a valid franchise
store."
]
}
]
}
Manage Franchise Orders
Functional Area
Franchise Management
Business Overview
This service is used from an external source, usually an order management system, to create and maintain (that is, update, delete and cancel) franchise orders in Merchandising. The service allows upload of one or more franchise orders in a single service call. Each request is treated as a single unit of work and if there are no validation errors or business validation errors, all the franchise orders in the message will be created/updated/deleted and the service will return success through the service response object. In case of one or more validation errors, the service call will be rejected, and the error response will contain the details of the validation errors.
Order Creation
Franchise orders created through this service will have an order type of EDI . A linked transfer, PO or store order will be created for the approved franchise orders.
Franchise orders created through this service will be systematically approved if the customer is set up for auto-approval, provided the customer has valid credit. If the order does not meet the criteria for auto-approval, Merchandising will create the franchise order in Input or Require Credit Approval and will provide the reason of approval failure in the response object. Franchise orders from customers that are not set up for auto-approval are uploaded into Merchandising in Input status. Such orders will need to be manually approved in Merchandising to be considered active.
Item Validation
-
Packs are allowed for warehouse sourced or supplier sourced franchise orders only. If the pack added is a buyer pack with an
order astype ofeaches, then the pack is exploded to its components. -
Deposit container items cannot be added to franchise orders. When the deposit content item is added to an order, the associated container item gets added as well. Deposit item content and container items must have the same costing location.
-
Transformable orderable items can be added to an order, however, transformable sellable items are not allowed, as these are not inventoried.
-
There cannot be multiple detail record for the same source location/item/customer location combination within a franchise order.
-
Multiple order detail lines with the same source location, item and customer location combination in the franchise order is not allowed.
Source Validation
-
For supplier sourced orders, the supplier must be an active supplier and allows direct store deliveries.
-
For supplier sourced franchise order, items must be
Activeat the franchise store in order to be included on the order. -
The supplier must belong to the same org unit as the costing location.
-
For warehouse or company store sourced order, the items must not be in
Deletestatus at the source location and must be in eitherActiveorDiscontinuedstatus at the franchise store. -
If the source for franchise order is not specified, then the costing location for the item and franchise store will be used as the source location.
-
If the source location is a physical warehouse, then the service will use distribution rules to determine from which virtual warehouse the inventory will be pulled, similar to distribution rules used for non-franchise transfers.
Customer Location Validation
-
If item/franchise store relationship does not exist, the franchise store would be auto ranged as part of franchise order creation.
-
For source location as a store, the customer store cannot be non-stockholding.
-
When a franchise order is uploaded through this service, having a future cost record for the item/franchise store combination is not necessary. Whether or not the cost template relationship is defined for the item/franchise store, the order can still be approved based on the provided fixed cost. However, if the fixed cost is also not provided, then the order creation would fail.
Inventory Validations
The inventory validation for Franchise orders sourced from company locations is subject to the setting of the Validate Availability for External Franchise Orders system option. If set to No , Franchise Order creation would be carried out without checking for inventory availability. If set to Yes , then the requested quantity is validated against the available inventory at location for the warehouse or store sourced franchise orders. For the warehouse sourced orders, if the requested quantity exceeds the available stock at the warehouse, then Merchandising checks whether the item is on the Store Order replenishment at the same sourcing warehouse for the franchise store. If so, then an order is placed for the sourcing warehouse from the supplier for the unavailable quantity and the sourcing for the franchise location is handled through transfers created through the Merchandising replenishment process. When the source location is a store, requested inventory must be available at the location.
Order Date Validations
-
Multiple franchise orders with the same source location, item, customer location and need date combination are not allowed in Merchandising.
-
For the supplier sourced franchise orders, the not after date must be greater than supplier lead time.
-
For the warehouse sourced franchise orders, if the franchise order has a need date that is less than the order lead days in the future, the franchise order is fulfilled with the available warehouse inventory. Any remaining is fulfilled through Store Order replenishment if the item is on Store Order replenishment at the same sourcing warehouse for the franchise store.
-
For store sourced franchise orders, the need date must be within order lead days.
Order Updates
For franchise orders Input status, the Update action will support the updating of a franchise order header and the adding, updating, or deleting of a franchise order detail. Header level updates includes changes such as customer order reference no, freight, and other charges as well as requested quantity, fixed cost, need date, and not after date at the detail level. Besides this, billing address details such as default bill to location, and bill to address can be updated. A new item can be added, and an existing item can be deleted using a Update header level action and a detail level Create or Delete level action respectively.
For an Approved franchise orders, only the requested quantity and fixed cost can be updated via this service. When the requested quantity is decremented, a line level cancellation reason must be provided.
Order Deletes and Cancellations
A franchise order can be deleted by sending an Update action with the status of the order set to Delete ( D ). Only orders in Input status can be deleted in Merchandising. If the user sends an Update action, with the status Delete ( D ) for a franchise order that is not in Input status, it will be treated as a cancellation and the quantity on all the order lines will be set to zero. A warning will be logged for the process to indicate to the user that the order was cancelled as opposed to being deleted.
Line level cancellations can be performed on approved franchise orders by using a header level action of Update and an order detail level action of Update with either the cancelled quantity field populated with the quantity to be cancelled; or with a header level action of Update and an order detail level action of Delete for the desired line, in which case the entire open quantity on the line will be cancelled. As part of cancellation, franchise orders in Approved or In progress status will get cancelled by providing the appropriate cancellation reason. Cancellation reasons are configured under the Franchise Order Cancel Reasons ( WFCO ) code type.
Service Type
PUT
ReST URL
MerchIntegrations/services/franchiseManagement/franchiseOrder/manage
Input Payload Details
Table 5-231 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type Description |
|---|---|---|
| collectionSize | Yes | Number (4) |
| items | Yes | Collection of Object |
Table 5-232 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | Yes | String (10) | Contains the intended action for the franchise order. Valid values are CREATE, UPDATE and DELETE. |
| franchiseOrder | No | Number (15) | Contains a unique identifer for the franchise order. |
| customerId | No | Number (10) | Contains the numeric identifer of the customer requesting the franchise order. |
| orderReferenceNo | No | String (20) | This feld holds the ID for the franchise order used in the external system. This a reference number that would be provided by the franchisee which will help in tracking the franchise order created in Merchandising (RMS). |
| currencyCode | No | String (3) | Contains the currency of the franchise order. |
Table 5-232 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| exchangeRate | No | Number (20,10) | Contains the exchange rate associated with the franchise order. |
| freight | No | Number (20,4) | Contains the freight charge associated with the franchise order. |
| otherCharges | No | Number (20,4) | Contains other miscellaneous charges associated with the franchise order. |
| billToAddressType | No | String (2) | Contains the address type of the default billing address of the billing location. |
| defaultBillingLocation | No | Number (10) | Contains the default billing location of the order. It will hold the customer’s location where the billing for the entire order is sent. |
| billToIndividualshipmentLo cation | No | String (1) | This feld indicates if the franchise order is created for billing to individual shipment location. |
| orderCancelReason | No | String (6) | This feld indicates the reason for order cancellation. |
| comments | No | String (2000) | Contains the comments associated with the franchise order. |
| status | No | String (1) | Contains the status of the franchise order. |
| details | No | Collection of Object | Details of the orders. At least one detail item is mandatory for header action CREATE otherwise ignored. |
Table 5-233 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | Yes | String (10) | Contains the intended action for the franchise order. Valid values are CREATE, UPDATE and DELETE. |
| item | Yes | String (25) | Contains the item on the franchise order. |
| customerLocation | Yes | Number (10) | Contains the franchise store requesting the item. |
| sourceLocationType | Yes | String (2) | Contains the source entity type from where the items will originate. Valid values are ST - Store, WH - Warehouse, SU - Supplier. |
| sourceLocation | Yes | Number (10) | Contains the location Id from where this item will be sourced from. |
| requestedQuantity | No | Number (12,4) | Contains the quantity of the item on this record being ordered. The value is in the mentioned UOP. |
| unitOfPurchase | No | String (3) | Contains the unit of purchase of the requested quantity. |
Table 5-233 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fxedCost | No | Number (20,4) | Contains the cost which will be charged to the customer for the item on the franchise order instead of using pricing cost. |
| needDate | No | date | Contains the initial date by which the item is needed in the franchise store. |
| notAfterDate | No | date | Contains the last date after which the item may no longer be accepted for a franchise store. |
| itemCancelReason | No | String (6) | This feld represents the reason an item was cancelled from the franchise order. The cancellation of the item record results in the reduction of the overall order quantity. |
Table 5-234 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customerId | Yes | Number (10) | Input Customer Id |
| orderReferenceNo | Yes | String (20) | Input order reference number |
| item | No | String (25) | Input item |
| customerLocation | No | Number (10) | Input franchise location number |
| sourceLocationType | No | String (2) | Input source location type |
| sourceLocation | Yes | Number (10) | Input source location id |
| errors | Yes | Array of String | List of errors identifed during business data processing of the request |
Sample Input Message
{
"collectionSize": 1000,
"items": [
{
"action": "CREATE",
"franchiseOrder": 584081,
"customerId": 1001,
"orderReferenceNo": "1001-A",
"currencyCode": "USD",
"exchangeRate": 52.5,
"freight": 23.5,
"otherCharges": 2.58,
"billToAddressType": "01",
"defaultBillingLocation": 100123,
"billToIndividualshipmentLocation": "Y",
"orderCancelReason": "NS",
"comments": "Franchise order 1001-A",
"status": "A",
"details": [
{
"action": "CREATE",
"item": "104300083",
"customerLocation": 100123,
"sourceLocationType": "ST",
"sourceLocation": 909090,
"requestedQuantity": 9000,
"unitOfPurchase": "EA",
"fixedCost": 95,
"needDate": "2001-12-31",
"notAfterDate": "2001-12-31",
"itemCancelReason": "ED"
}
]
}
]
}
Response Code: 200 (Success)
Table 5-235 ManageResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| franchiseOrders | Yes | Collection of Object |
Table 5-236 FranchiseOrders - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| franchiseOrder | Yes | Number (10) | |
| customerId | Yes | Number (10) | Input Customer Id. |
| orderReferenceNo | Yes | String (20) | Input order reference number. |
| status | Yes | String (1) | This contains the status in which the Franchise order was created. This can be I - Input or A - Approved. |
| processedStatus | Yes | String (20) | Status of the request action. |
| autoApproveErrors | No | Array of String | This will be populated with the reason (like customer fails credit check) why the order could not be approved and ended up getting created in Input status. Using the UI, the franchise order should be approved after fxing the issue. |
| transactions | No | Collection of Object | References a collection of transfers or purchase orders created. |
Table 5-237 Transactions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customerLocation | Yes | Number (10) | This feld holds a valid franchise |
| location number. |
Table 5-237 (Cont.) Transactions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| sourceLocation | Yes | Number (10) | Contains the location id from where this item will be sourced from. The id will correspond to a company store, warehouse or supplier depending on the source type value. |
| sourceLocationType | Yes | String (2) | Contains the source entity type from where the items will originate. Valid values are ST - Store, WH - Warehouse, SU - Supplier. If this feld is populated, the source location should also be populated. |
| needDate | Yes | date | This date represents the initial date by which the franchisee wants the item on this order. The date format should be YYYY-MM-DD. The need date can be business date (VDATE) or a date in future. |
| documentNo | Yes | Number (12) | This contains the purchase order or transfer number created. |
| documentType | Yes | String (1) | This contains the document type generated. This can be P - Purchase Order or T - Transfer. |
Sample Response Message
{
"franchiseOrders": [
{
"franchiseOrder": 584081,
"customerId": 1001,
"orderReferenceNo": "1001-A",
"status": "A",
"processedStatus": "CREATED",
"autoApproveErrors": [
"null"
],
"transactions": [
{
"customerLocation": 100123,
"sourceLocation": 909090,
"sourceLocationType": "ST",
"needDate": "2001-12-31",
"documentNo": 22145453,
"documentType": "T"
}
]
}
]
}
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 do not match the schema definition for this service. The element businessError will be present if the payload passes schema validation but an exception is caught while processing the business logic.
Table 5-238 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customerId | Yes | Number (10) | Input Customer Id |
| orderReferenceNo | Yes | String (20) | Input order reference number |
| item | No | String (25) | Input item |
| customerLocation | No | Number (10) | Input franchise location number |
| sourceLocationType | No | String (2) | Input source location type |
| sourceLocation | Yes | Number (10) | Input source location id |
| errors | Yes | Array of String | List of errors identifed during business data processing of the request |
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": [
{
"customerId": 1001,
"orderReferenceNo": "1001-A",
"item": "104300083",
"customerLocation": 100123,
"sourceLocationType": "ST",
"sourceLocation": 909090,
"errors": [
"Customer Location passed in franchise order is not a valid franchise
store."
]
}
]
}
Import Management
The following services are included in this functional area:
-
Actual Landed Cost
-
Actual Landed Cost Upload Service
- Finalize Actual Landed Cost
-
-
Obligations
- Obligations Upload Services
Actual Landed Cost
The following services are included in this functional area:
-
Actual Landed Cost Upload Service
- Finalize Actual Landed Cost
Actual Landed Cost Upload Service
The following services are included in this functional area:
- Finalize Actual Landed Cost
Finalize Actual Landed Cost
Functional Area
Import Management - Actual Landed Cost
Business Overview
This service is used to finalize the Actual Landed Cost (ALC) for a list of purchase orders or purchase order/shipment combinations matching the provided collection of purchase order, ASN, obligation, and/or customs entry input records. The available inputs for this service are purchase order, ASN, obligation, customs entry, method of finalization and the Back Out Estimates with No Actuals flag. Success or failure of the operation will be returned as part of the response object. The value of the Allocation Shipment Level Obligations Method system option will determine if orders or order/shipment combinations are processed as follows:
-
When the Allocate Shipment Level Obligations Using system option is set to ASN (
ASN), the service processes order/shipment combinations matching the input provided. -
When the Allocate Shipment Level Obligations Using system option is set to Transportation (
TRNSPRT), the service processes purchase orders matching the input provided; the service will not acceptASNas an input in this case.
This service compares the actual value from obligations or customs entries with the estimated value on the purchase order and posts records to transaction data (transaction code 20A ), update weighted average cost (WAC) and open to buy (OTB) with the difference between the estimate and the actual.
For the pending ALC to be finalized, the associated obligation or customs entry must be approved or confirmed respectively. Further, when Allocate Shipment Level Obligations Using is set to Transportation , orders cannot be finalized until the purchase order has been closed. When the Allocate Shipment Level Obligations Using is set to ASN, order/shipments must be received before the ALC can be finalized, and for ALC from Purchase Order Header or Purchase Order/Item level obligations, the associated purchase order must be closed before the associated ALC can be finalized.
When the provided method of finalization is No Finalization , the pending ALC records are updated to have a status of No Finalization , which means that the actual values are ignored and the estimated values that were posted at the time of receipt will be retained. Subsequent
finalizations of the same purchase orders or purchase order/shipments will only attempt to finalize new ALC records in Pending status; the records previously marked as No Finalization or Processed will not be processed during future finalizations.
Service Type
PUT
ReST URL
MerchIntegrations/services/importManagement/actualLandedCost/finalize
Input Payload Details
Table 5-239 Finalize - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | Collection of the input details for which the ALC Finalization needs to be done. |
Table 5-240 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | No | Number (12) | The unique identifer for the Purchase Order. |
| asn | No | String (30) | The ASN linked to the Shipment. |
| obligation | No | Number (10) | The unique identifer for the Obligation. |
| customsEntryNo | No | String (40) | The Customs Entry Number. |
| methodOfFinalization | Yes | String (6) | The method of ALC Finalization to be used. |
| backOutEstimatesWithNoAct ualsInd | No | String (1) | Indicates whether the Order Estimates, which are not having Actuals, need to be Backed out or not. |
Table 5-241 FinalizeError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| alcFinalizeError | Yes | Collection of | |
| Object |
Table 5-242 AlcFinalizeError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | |
| asn | Yes | String (30) | |
| obligation | Yes | Number (10) | |
| customsEntryNo | Yes | String (40) |
Table 5-242 (Cont.) AlcFinalizeError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| errorMessages | Yes | Array of | List of errors identifed during |
| String | business data processing of the request. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"orderNo": 100000,
"asn": "ASN_1234",
"obligation": 56789,
"customsEntryNo": "CE_1234",
"methodOfFinalization": "W",
"backOutEstimatesWithNoActualsInd": "N"
}
]
}
Response Code: 200 (Success)
Table 5-243 FinalizeResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | |
| Object |
Table 5-244 FinalizeResponse.Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | |
| asn | Yes | String (30) | |
| obligation | Yes | Number (10) | |
| customsEntryNo | Yes | String (40) | |
| alcStatus | Yes | String (250) | The status of the ALC records, after the successful completion of the ALC Finalization. |
Sample Response Message
{
"items": [
{
"orderNo": 120711,
"asn": "String",
"obligation": 389535,
"customsEntryNo": "String",
"alcStatus": "String"
}
]
}
Response Code: 400 (Error)
In case of error, the following standard error response will be returned. The element validationErrors is present when the input payload or input parameters do not match the schema definition of this service. The element businessError is present if the payload passes schema validation but an exception is caught while processing the business logic.
Table 5-245 FinalizeError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| alcFinalizeError | Yes | Collection of | |
| Object |
Table 5-246 AlcFinalizeError - Object. See list of elements for detail
| Element Name Required Data Type | Description |
|---|---|
| orderNo Yes Number (12) | |
| asn Yes String (30) | |
| obligation Yes Number (10) | |
| customsEntryNo Yes String (40) | |
| errorMessages Yes Array of String Sample Error Message | List of errors identifed during business data processing of the request. |
{"status": "ERROR","message": "Error found in validation of inpu"validationErrors": [{"error": "must be one of Y, N","field": "createRecord.arg0.approveInd","inputValue": "X"}],"businessError": [{"alcFinalizeError": [{"orderNo": 120711,"asn": "String","obligation": 389535,"customsEntryNo": "String","errorMessages": ["String"] | t payload", |
}
]
}
]
}
Obligations
The following services are included in this functional area:
- Obligations Upload Services
Obligations Upload Services
This section describes the Obligations Upload Services.
Function Area
Import Management - Obligations
Business Overview
The primary role of these services is to support requests from trading partners or suppliers for bulk uploads of obligations in Merchandising.
Create Obligation
Business Overview
This service creates obligations by calling the SVCPROV_OBLIGATION package, then calling the core obligation package to validate and insert data to the Merchandising tables.
This service creates obligations with required fields. At least one component is needed to create a successful obligation. If the obligation level is Purchase Order Header ( PO ) or Purchase Order/Items ( POIT ) then component locations can be added if desired. Allocation to Actual Landed Cost (ALC) will be performed after obligation creation.
When creating a new Purchase Order Header ( PO ) or Purchase Order/Item ( POIT ) level obligation with a provided status of Approved, if the purchase order has a single location or if the component/location level details are provided on the obligation, you are able to specify whether the corresponding non-merchandise invoice should be generated and sent to Invoice Matching (REIMCS) upon obligation approval, or if the system should wait until the purchase order is closed. To have the system generate the non-merchandise invoice upon obligation approval, the Create Non-Merchandise Invoice upon Obligation Approval flag ( createInvoiceOnObligationApproval ) should be passed in as Yes ( Y ); otherwise you can send a value of No ( N ). If no value is provided for the flag, the system will assume a value of No ( N ). If the purchase order has multiple locations, the non-merchandise invoice will not be generated or sent to Invoice Matching until the purchase order is closed. The reason for waiting until closure in this case is because this allows the system to know the final receipt quantities in order to determine the location allocation of the expenses on the obligation.
When creating new obligations of any level besides Purchase Order Header or Purchase Order/Item, non-merchandise invoices will be generated and sent to Invoice Matching (REIMCS) upon obligation approval.
Purchase Order and Purchase Order/Item level obligations are intended to be used for a full purchase order, meaning the system expects that a given expense component will only appear
on one obligation for a given purchase order or for a given purchase order/item. For example, if you are being charged a freight expense for each of two shipments for a single purchase order. To use a Purchase Order Header level obligation, you would need to total the freight expense for the two shipments and enter the total value on a single Purchase Order Header level obligation with the total quantity on the order. You cannot create two separate Purchase Order Header level obligations for the same Freight expense component for a partial quantity. If you want to create separate obligations for a subset of the total ordered quantity, you need to use one of the transportation or ASN level obligations.
Service Type
Post
ReST URL
/ObligationUpload/createObligation
Input Parameters
RestObligationRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| obligationLevel | String |
| keyValue1 | String |
| keyValue2 | String |
| keyValue3 | String |
| keyValue4 | String |
| keyValue5 | String |
| keyValue6 | String |
| status | String |
| partnerType | String |
| partnerId | String |
| supplierSite | String |
| invoice | String |
| invoiceDate | Timestamp |
| qty | BigDecimal |
| qtyUom | String |
| currency | String |
| exchangeRate | BigDecimal |
| checkAuthNo | String |
| paidAmt | BigDecimal |
| paidDate | Timestamp |
| comments | String |
| obligationCompTbl | List |
RestObligationCompRecRDO
| Parameter Name | Data Type |
|---|---|
| compId | String |
| allocateToAlc | String |
| allocationType | String |
| allocationBasisUom | String |
| amt | BigDecimal |
| rate | BigDecimal |
| perCount | BigDecimal |
| perCountUom | String |
| obligationCompLocTbl | List |
RestObligationCompLocRecRDO
| Parameter Name | Data Type |
|---|---|
| action | String |
| locType | String |
| locId | BigDecimal |
| qty | BigDecimal |
| amt | BigDecimal |
JSON Structure
invoiceDate and paidDate will take input in strings the ‘YYYY-MM-DD’ format that will be converted to Timestamp format and inserted into tables.
[{
"obligationKey": null,
"obligationLevel":null ,
"keyValue1":null,
"keyValue2":null,
"keyValue3":null,
"keyValue4":null,
"keyValue5":null,
"keyValue6":null,
"status":null,
"partnerType":null,
"partnerId":null,
"supplierSite":null,
"invoice":null,
"invoiceDate":null,
"qty":null,
"qtyUom":null,
"exchangeRate":null,
"currency":null,
"paymentMethod":null,
"checkAuthNo":null,
"paidAmt":null,
"paidDate":null,
"comments":null,
"obligationCompTbl" : [{
"compId":null,
"allocateToAlc":null,
"allocationType":null,
"allocationBasisUom": null,
"amt":null,
"rate":null,
"perCount":null,
"perCountUom":null,
"obligationCompLocTbl":[{
"action":null,
"locType":null,
"locId": null,
"qty":null,
"amt":null}]
}]
}]
Output
RestObligationStatusRecRDO
| Parameter Name | Data Type |
|---|---|
| successObligationTbl | List |
| successObligationCount | BigDecimal |
| failObligationTbl | List |
| failObligationCount | BigDecimal |
RestObligationSuccessRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
RestObligationFailRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
| errorMessage | String |
The output will contain the status of the request including validation error, if any.
The service will insert data into the Obligation ( obligation ), Obligation Component ( obligation_comp ) and Obligation Component Location ( obligation_comp_loc ) tables based on obligation levels. Obligation amounts will be allocated to each order/item/location represented on the obligation and will be recorded in the Actual Landed Cost (ALC) tables. Non-merchandise invoices generated for approved obligations will be inserted into invoice staging tables to be loaded into Invoice Matching.
For Success:
{
"successObligationTbl": [
{
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"successObligationCount": null,
"failObligationTbl": [],
"failObligationCount": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
For Failure:
{
"successObligationTbl": [],
"successObligationCount": null,
"failObligationTbl": [
{
"errorMessage": null,
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"failObligationCount": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| OBLIGATION | No | Yes | No | No |
| OBLIGATION_COMP | No | Yes | No | No |
| OBLIGATION_COMP_LOC | No | Yes | No | No |
| ORDHEAD | Yes | No | No | No |
| ORDSKU | Yes | No | No | No |
| ORDLOC | Yes | No | No | No |
| TRANSPORTATION | Yes | No | No | No |
| SHIPMENT | Yes | No | No | No |
| SHIPSKU | Yes | No | No | No |
| V_PACKSKU_QTY | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| ORDLOC_EXP | Yes | No | No | No |
| CE_HEAD | Yes | No | No | No |
| ELC_COMP | Yes | No | No | No |
| RTM_UNIT_OPTIONS | Yes | No | No | No |
| ALC_HEAD | Yes | Yes | Yes | No |
| ALC_COMP_LOC | Yes | Yes | Yes | No |
| INVC_HEAD | No | Yes | No | No |
| INVC_NON_MERCH | No | Yes | No | No |
| INVC_XREF | No | Yes | No | No |
Create Obligation Component
Business Overview
This service creates obligation components for existing obligations in Pending status by calling the SVCPROV_OBLIGATION package, then calling the core obligation package to validate and insert data to the Merchandising tables.
This service accepts an obligation key, a supplier/invoice combination, or a partner type/ partner/invoice combination to identify the existing obligation. Expense component details can be added.. Allocation to Actual Landed Cost (ALC) will be done after component creation.
Service Type
Post
ReST URL
/ObligationUpload/createObligationComp
Input Parameters
RestObligationRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| obligationLevel | String |
| keyValue1 | String |
| keyValue2 | String |
| keyValue3 | String |
| keyValue4 | String |
| keyValue5 | String |
| keyValue6 | String |
| Status | String |
| partnerType | String |
| partnerId | String |
| Parameter Name | Data Type |
|---|---|
| supplierSite | String |
| invoice | String |
| invoiceDate | Timestamp |
| Qty | BigDecimal |
| qtyUom | String |
| Currency | String |
| exchangeRate | BigDecimal |
| checkAuthNo | String |
| paidAmt | BigDecimal |
| paidDate | Timestamp |
| Comments | String |
| obligationCompTbl | List |
RestObligationCompRecRDO
| Parameter Name | Data Type |
|---|---|
| compId | String |
| allocateToAlc | String |
| allocationType | String |
| allocationBasisUom | String |
| Amt | BigDecimal |
| Rate | BigDecimal |
| perCount | BigDecimal |
| perCountUom | String |
| obligationCompLocTbl | List |
RestObligationCompLocRecRDO
| Parameter Name | Data Type |
|---|---|
| Action | String |
| locType | String |
| locId | BigDecimal |
| Qty | BigDecimal |
| Amt | BigDecimal |
JSON Structure: The same RDO ‘RestObligationRecRDO’ will be used for createObligationComp, but only the below parameters will be considered for the request. The rest of the parameters will be ignored.
[{
"obligationKey": null,
"partnerType":null,
"partnerId":null,
"supplierSite":null,
"invoice":null,
"obligationCompTbl" : [
{
"compId":null,
"allocateToAlc":null,
"allocationType":null,
"allocationBasisUom": null,
"amt":null,
"rate":null,
"perCount":null,
"perCountUom":null,
"obligationCompLocTbl":[
{
"action":null,
"locType":null,
"locId": null,
"qty":null,
"amt":null}]
}]
}]
Output
RestObligationStatusRecRDO
| Parameter Name | Data Type |
|---|---|
| successObligationTbl | List |
| successObligationCount | BigDecimal |
| failObligationTbl | List |
| failObligationCount | BigDecimal |
RestObligationSuccessRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
RestObligationFailRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
| errorMessage | String |
The output will contain the status of the request including validation error, if any.
The service will insert data into the Obligation Component ( obligation_comp ) table, and for Purchase Order Header or Purchase Order/Item obligations with location details, into the Obligation Component Location ( obligation_comp_loc ) table. Obligation amounts will be allocated to each order/item/location represented on the obligation and will be recorded in the Actual Landed Cost (ALC) tables.
For Success:
{
"successObligationTbl": [
{
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"successObligationCount": null,
"failObligationTbl": [],
"failObligationCount": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
For Failure:
{
"successObligationTbl": [],
"successObligationCount": null,
"failObligationTbl": [
{
"errorMessage": null,
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"failObligationCount": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| OBLIGATION | Yes | No | No | No |
| OBLIGATION_COMP | Yes | Yes | No | No |
| OBLIGATION_COMP_LOC | Yes | Yes | No | No |
| ORDHEAD | Yes | No | No | No |
| ORDSKU | Yes | No | No | No |
| ORDLOC | Yes | No | No | No |
| SHIPMENT | Yes | No | No | No |
| SHIPSKU | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_PACKSKU_QTY | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| ORDLOC_EXP | Yes | No | No | No |
| ELC_COMP | Yes | No | No | No |
| ALC_HEAD | Yes | Yes | Yes | No |
| ALC_COMP_LOC | Yes | Yes | Yes | No |
Create Obligation Component Location
Business Overview
This service creates obligation component locations for Purchase Order Header or Purchase Order/Item level obligations by calling the SVCPROV_OBLIGATION package and then calling the core obligation package to validate and insert data into the Merchandising tables.
For Purchase Order Header ( PO ) and Purchase Order/Item ( POIT ) obligation levels, a locationlevel breakdown of the obligation component amounts can be added. This service accepts an obligation key, supplier/invoice or partner type/partner/invoice combination to identify the existing obligation. Allocation to Actual Landed Cost (ALC) will be done done after successful location creation.
Service Type
Post
ReST URL
/ObligationUpload/createObligationCompLoc
Input Parameters
RestObligationRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| obligationLevel | String |
| keyValue1 | String |
| keyValue2 | String |
| keyValue3 | String |
| keyValue4 | String |
| keyValue5 | String |
| keyValue6 | String |
| status | String |
| partnerType | String |
| partnerId | String |
| supplierSite | String |
| invoice | String |
| Parameter Name | Data Type |
|---|---|
| invoiceDate | Timestamp |
| qty | BigDecimal |
| qtyUom | String |
| currency | String |
| exchangeRate | BigDecimal |
| checkAuthNo | String |
| paidAmt | BigDecimal |
| paidDate | Timestamp |
| comments | String |
| obligationCompTbl | List |
RestObligationCompRecRDO
| Parameter Name | Data Type |
|---|---|
| compId | String |
| allocateToAlc | String |
| allocationType | String |
| allocationBasisUom | String |
| amt | BigDecimal |
| rate | BigDecimal |
| perCount | BigDecimal |
| perCountUom | String |
| obligationCompLocTbl | List |
RestObligationCompLocRecRDO
| Parameter Name | Data Type |
|---|---|
| action | String |
| locType | String |
| locId | BigDecimal |
| qty | BigDecimal |
| amt | BigDecimal |
JSON Structure: Same RDO ‘RestObligationRecRDO’ will be used for createObligationComp, but only the below parameters will be considered for the request. The rest of the parameters will be ignored.
[{
"obligationKey": null,
"partnerType":null,
"partnerId":null,
"supplierSite":null,
"invoice":null,
"obligationCompTbl" : [{
"compId":null,
"obligationCompLocTbl":[{
"action":null,
"locType":null,
"locId": null,
"qty":null,
"amt":null}]
}]
}]
Output
RestObligationStatusRecRDO
| Parameter Name | Data Type |
|---|---|
| successObligationTbl | List |
| successObligationCount | BigDecimal |
| failObligationTbl | List |
| failObligationCount | BigDecimal |
RestObligationSuccessRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
RestObligationFailRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
| errorMessage | String |
The output will contain the status of the request, including validation errors, if any. For Success:
{
"successObligationTbl": [
{
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"successObligationCount": null,
"failObligationTbl": [],
"failObligationCount": null,
"links": [],
"hyperMediaContent": { "linkRDO": [] } } For Failure: { "successObligationTbl": [], "successObligationCount": null, "failObligationTbl": [ { "errorMessage": null, "status": null, "invoice": null, "obligationKey": null, "links": [], "hyperMediaContent": { "linkRDO": [] } } ], "failObligationCount": null, "links": [], "hyperMediaContent": { "linkRDO": [] } }
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| OBLIGATION | Yes | No | No | No |
| OBLIGATION_COMP | Yes | No | No | No |
| OBLIGATION_COMP_LOC | Yes | Yes | No | No |
| ORDHEAD | Yes | No | No | No |
| ORDSKU | Yes | No | No | No |
| ORDLOC | Yes | No | No | No |
| SHIPMENT | Yes | No | No | No |
| SHIPSKU | Yes | No | No | No |
| V_PACKSKU_QTY | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| ORDLOC_EXP | Yes | No | No | No |
| ALC_HEAD | Yes | Yes | Yes | No |
| ALC_COMP_LOC | Yes | Yes | Yes | No |
Modify Obligation
Business Overview
This service updates obligation header record by calling the SVCPROV_OBLIGATION package and then calling the core obligation package to validate and update data to the Obligation table.
This service accepts an obligation key, a supplier/invoice combination or a partner type/partner/ invoice combination to identify the existing obligation.
When approving an existing Purchase Order Header ( PO ) or Purchase Order/Item ( POIT ) level obligation, if purchase order has a single location or if component/location level details are provided on the obligation, you are able to specify whether the corresponding nonmerchandise invoice should be generated and sent to Invoice Matching (REIMCS) upon obligation approval, or if the system should wait until the purchase order is closed. To have the system generate the non-merchandise invoice upon obligation approval, the Create NonMerchandise Invoice upon Obligation Approval flag ( createInvoiceOnObligationApproval ) should be passed in as Yes ( Y ), otherwise you can send a value of No ( N ). If no value is provided for the flag, the system will assume a value of No ( N ). If the purchase order has multiple locations, the non-merchandise invoice will not be generated or sent to Invoice Matching until the purchase order is closed. The reason for waiting until closure in this case is because this allows the system to know the final receipt quantities in order to determine the location allocation of the expenses on the obligation.
When approving obligations of any level besides Purchase Order Header or Purchase Order/ Item, non-merchandise invoices will be generated and sent to Invoice Matching (REIMCS) upon obligation approval.
When modifying and/or approving a pending Purchase Order Header (PO) or Purchase Order/ Item ( POIT ) level obligation, if purchase order has a single location or if component/location level details are provided on the obligation, you are able to specify whether the corresponding non-merchandise invoice should be generated and sent to Invoice Matching (REIMCS) upon obligation approval, or if the system should wait until the purchase order is closed. To have the system generate the non-merchandise invoice upon obligation approval, the Create NonMerchandise Invoice upon Obligation Approval flag ( createInvoiceOnObligationApproval ) should be passed in as Yes ( Y ), otherwise you can send a value of No ( N ). If no value is provided for the flag, the system will assume a value of No ( N ). If the purchase order has multiple locations, the non-merchandise invoice will not be generated or sent to Invoice Matching until the purchase order is closed. The reason for waiting until closure in this case is because this allows the system to know the final receipt quantities in order to determine the location allocation of the expenses on the obligation.
When approving existing obligations of any level besides Purchase Order Header or Purchase Order/Item, non-merchandise invoices will be generated and sent to Invoice Matching (REIMCS) upon obligation approval.
The following fields can be updated when the obligation is in Pending status.
-
Status
-
Partner Type
-
Partner ID
-
Supplier Site
-
Invoice
-
Invoice Date
-
Quantity
-
Quantity UOM
-
Currency
-
Exchange Rate
The below fields, which are not mandatory, can be updated in pending as well as approved status.
-
Payment Method
-
Check Authorization No.
-
Amount Paid
-
Paid Date
-
Comments
Service Type
Post
ReST URL
/ObligationUpload/modifyObligation
RestObligationRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| obligationLevel | String |
| keyValue1 | String |
| keyValue2 | String |
| keyValue3 | String |
| keyValue4 | String |
| keyValue5 | String |
| keyValue6 | String |
| status | String |
| partnerType | String |
| partnerId | String |
| supplierSite | String |
| invoice | String |
| invoiceDate | Timestamp |
| qty | BigDecimal |
| qtyUom | String |
| currency | String |
| exchangeRate | BigDecimal |
| checkAuthNo | String |
| paidAmt | BigDecimal |
| paidDate | Timestamp |
| comments | String |
| obligationCompTbl | List |
RestObligationCompRecRDO
Parameter Name Data Type compId String allocateToAlc String
| Parameter Name | Data Type |
|---|---|
| allocationType | String |
| allocationBasisUom | String |
| amt | BigDecimal |
| rate | BigDecimal |
| perCount | BigDecimal |
| perCountUom | String |
| obligationCompLocTbl | List |
RestObligationCompLocRecRDO
| Parameter Name | Data Type |
|---|---|
| action | String |
| locType | String |
| locId | BigDecimal |
| qty | BigDecimal |
| amt | BigDecimal |
JSON Structure: Same RDO ‘RestObligationRecRDO’ will be used for modifyObligation but only the below parameters will be considered for the request. The rest of the parameters will be ignored.
invoiceDate and paidDate will take input in a string with the ‘YYYY-MM-DD’ format, which will be converted to Timestamp format and insert into the tables.
[{
"obligationKey": null,
"status":null,
"partnerType":null,
"partnerId":null,
"supplierSite":null,
"invoice":null,
"invoiceDate":null,
"qty":null,
"qtyUom":null,
"exchangeRate":null,
"currency":null,
"paymentMethod":null,
"checkAuthNo":null,
"paidAmt":null,
"paidDate":null,
"comments":null
}]
Output
RestObligationStatusRecRDO
| Parameter Name | Data Type |
|---|---|
| successObligationTbl | List |
| successObligationCount | BigDecimal |
| Parameter Name | Data Type |
|---|---|
| failObligationTbl | List |
| failObligationCount | BigDecimal |
RestObligationSuccessRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
RestObligationFailRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
| errorMessage | String |
The output will contain the status of the request, including validation errors, if any.
NULL values will be ignored for mandatory fields. Non-mandatory fields can be updated to NULL.
For Success:
{
"successObligationTbl": [
{
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"successObligationCount": null,
"failObligationTbl": [],
"failObligationCount": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
For Failure:
{
"successObligationTbl": [],
"successObligationCount": null,
"failObligationTbl": [
{
"errorMessage": null,
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"failObligationCount": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| OBLIGATION | Yes | No | No | No |
| OBLIGATION_COMP | Yes | No | No | No |
| OBLIGATION_COMP_LOC | Yes | No | No | No |
| ORDHEAD | Yes | No | No | No |
| ORDSKU | Yes | No | No | No |
| ORDLOC | Yes | No | No | No |
| SHIPMENT | Yes | No | No | No |
| SHIPSKU | Yes | No | No | No |
| V_PACKSKU_QTY | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| ORDLOC_EXP | Yes | No | No | No |
| ALC_HEAD | Yes | Yes | Yes | No |
| ALC_COMP_LOC | Yes | Yes | Yes | No |
| INVC_HEAD | No | Yes | No | No |
| INVC_NON_MERCH | No | Yes | No | No |
| INVC_XREF | No | Yes | No | No |
Modify Obligation Comp
Business Overview
This service updates existing obligation component records which are in pending status by calling the SVCPROV_OBLIGATION package and then calling the core obligation package to validate and update data in the obligation_comp table.
This service accepts an obligation key, a supplier/invoice combination, or a partner type/ partner/invoice combination to identify the existing obligation. The user can modify component level fields on pending obligations. Reallocation to ALC will be done after update.
Service Type
Post
ReST URL
/ObligationUpload/modifyObligationComp
Input Parameters
RestObligationRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| obligationLevel | String |
| keyValue1 | String |
| keyValue2 | String |
| keyValue3 | String |
| keyValue4 | String |
| keyValue5 | String |
| keyValue6 | String |
| status | String |
| partnerType | String |
| partnerId | String |
| supplierSite | String |
| invoice | String |
| invoiceDate | Timestamp |
| qty | BigDecimal |
| qtyUom | String |
| currency | String |
| exchangeRate | BigDecimal |
| checkAuthNo | String |
| paidAmt | BigDecimal |
| paidDate | Timestamp |
| comments | String |
| obligationCompTbl | List |
RestObligationCompRecRDO
| Parameter Name | Data Type |
|---|---|
| compId | String |
| allocateToAlc | String |
| allocationType | String |
| allocationBasisUom | String |
| amt | BigDecimal |
| rate | BigDecimal |
| perCount | BigDecimal |
| perCountUom | String |
| Parameter Name | Data Type |
|---|---|
| obligationCompLocTbl | List |
RestObligationCompLocRecRDO
| Parameter Name | Data Type |
|---|---|
| action | String |
| locType | String |
| locId | BigDecimal |
| qty | BigDecimal |
| amt | BigDecimal |
JSON Structure: The same RDO ‘RestObligationRecRDO’ will be used for modifyObligationComp, but only the below parameters will be considered for the request. The rest of the parameters will be ignored.
[{
"obligationKey": null,
"partnerType":null,
"partnerId":null,
"supplierSite":null,
"invoice":null,
"obligationCompTbl" : [{"compId":null,
"allocateToAlc":null,
"allocationType":null,
"allocationBasisUom": null,
"amt":null,
"rate":null,
"perCount":null,
"perCountUom":null,
}]
}]
Output
RestObligationStatusRecRDO
| Parameter Name | Data Type |
|---|---|
| successObligationTbl | List |
| successObligationCount | BigDecimal |
| failObligationTbl | List |
| failObligationCount | BigDecimal |
RestObligationSuccessRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
RestObligationFailRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
| errorMessage | String |
The output will contain the status of the request, including validation errors, if any. For Success:
{
"successObligationTbl": [
{
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"successObligationCount": null,
"failObligationTbl": [],
"failObligationCount": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
For Failure:
{
"successObligationTbl": [],
"successObligationCount": null,
"failObligationTbl": [
{
"errorMessage": null,
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"failObligationCount": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| OBLIGATION | Yes | No | No | No |
| OBLIGATION_COMP | Yes | No | No | No |
| OBLIGATION_COMP_LOC | Yes | No | No | No |
| ORDHEAD | Yes | No | No | No |
| ORDSKU | Yes | No | No | No |
| ORDLOC | Yes | No | No | No |
| SHIPMENT | Yes | No | No | No |
| SHIPSKU | Yes | No | No | No |
| V_PACKSKU_QTY | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| ORDLOC_EXP | Yes | No | No | No |
| ALC_HEAD | Yes | Yes | Yes | No |
| ALC_COMP_LOC | Yes | Yes | Yes | No |
Modify Obligation Component Location
Business Overview
This service updates existing obligation component records which are in pending status by calling the SVCPROV_OBLIGATION package and then calling the core obligation package to validate and update data in the obligation_comp table.
This service accepts an obligation key, a supplier/invoice combination, or a partner type/ partner/invoice combination to identify the obligation. Enter an expense component for which you want to modify the location. Reallocation to ALC will be done after update.
Service Type
Post
ReST URL
/ObligationUpload/modifyObligationCompLoc
Input Parameters
RestObligationRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| obligationLevel | String |
| keyValue1 | String |
| keyValue2 | String |
| keyValue3 | String |
| keyValue4 | String |
| Parameter Name | Data Type |
|---|---|
| keyValue5 | String |
| keyValue6 | String |
| status | String |
| partnerType | String |
| partnerId | String |
| supplierSite | String |
| invoice | String |
| invoiceDate | Timestamp |
| qty | BigDecimal |
| qtyUom | String |
| currency | String |
| exchangeRate | BigDecimal |
| checkAuthNo | String |
| paidAmt | BigDecimal |
| paidDate | Timestamp |
| comments | String |
| obligationCompTbl | List |
RestObligationCompRecRDO
| Parameter Name | Data Type |
|---|---|
| compId | String |
| allocateToAlc | String |
| allocationType | String |
| allocationBasisUom | String |
| amt | BigDecimal |
| rate | BigDecimal |
| perCount | BigDecimal |
| perCountUom | String |
| obligationCompLocTbl | List |
RestObligationCompLocRecRDO
| Parameter Name | Data Type |
|---|---|
| action | String |
| locType | String |
| locId | BigDecimal |
| qty | BigDecimal |
| amt | BigDecimal |
JSON Structure: The same RDO ‘RestObligationRecRDO’ will be used for modifyObligationCompLoc but only the below parameters will be considered for the request. The rest of the parameters will be ignored.
[{
"obligationKey": null,
"partnerType":null,
"partnerId":null,
"supplierSite":null,
"invoice":null,
"obligationCompTbl" : [{
"compId":null,
"obligationCompLocTbl":[{
"action":null,
"locType":null,
"locId": null,
"qty":null,
"amt":null}]
}]
}]
Output
RestObligationStatusRecRDO
| Parameter Name | Data Type |
|---|---|
| successObligationTbl | List |
| successObligationCount | BigDecimal |
| failObligationTbl | List |
| failObligationCount | BigDecimal |
RestObligationSuccessRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
RestObligationFailRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
| errorMessage | String |
The output will contain the status of the request, including validation errors, if any.
The action field is mandatory here. Valid value for this are MOD/DEL. MOD is to update a location and DEL to delete a location.
For Success:
{
"successObligationTbl": [
{
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"successObligationCount": null,
"failObligationTbl": [],
"failObligationCount": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
For Failure:
{
"successObligationTbl": [],
"successObligationCount": null,
"failObligationTbl": [
{
"errorMessage": null,
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"failObligationCount": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| OBLIGATION | Yes | No | No | No |
| OBLIGATION_COMP | Yes | No | Yes | No |
| OBLIGATION_COMP_LOC | Yes | No | Yes | No |
| ORDHEAD | Yes | No | No | No |
| ORDSKU | Yes | No | No | No |
| ORDLOC | Yes | No | No | No |
| SHIPMENT | Yes | No | No | No |
| SHIPSKU | Yes | No | No | No |
| V_PACKSKU_QTY | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| ORDLOC_EXP | Yes | No | No | No |
| ALC_HEAD | Yes | No | Yes | No |
| ALC_COMP_LOC | Yes | No | Yes | No |
Delete Obligation
Business Overview
This service deletes existing obligation records with pending status by calling the SVCPROV_OBLIGATION package and then calling the core obligation package to validate and delete entire obligation records from Merchandising tables.
This service accepts an obligation key, a supplier/invoice combination, or a partner type/ partner/invoice combination to identify the obligation. This service will delete the entire obligation record.
Service Type
Post
ReST URL
/ObligationUpload/deleteObligation
Input Parameters
RestObligationRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| obligationLevel | String |
| keyValue1 | String |
| keyValue2 | String |
| keyValue3 | String |
| keyValue4 | String |
| keyValue5 | String |
| keyValue6 | String |
| status | String |
| partnerType | String |
| partnerId | String |
| supplierSite | String |
| invoice | String |
| invoiceDate | Timestamp |
| qty | BigDecimal |
| qtyUom | String |
| currency | String |
| Parameter Name | Data Type |
|---|---|
| exchangeRate | BigDecimal |
| checkAuthNo | String |
| paidAmt | BigDecimal |
| paidDate | Timestamp |
| comments | String |
| obligationCompTbl | List |
RestObligationCompRecRDO
| Parameter Name | Data Type |
|---|---|
| compId | String |
| allocateToAlc | String |
| allocationType | String |
| allocationBasisUom | String |
| amt | BigDecimal |
| rate | BigDecimal |
| perCount | BigDecimal |
| perCountUom | String |
| obligationCompLocTbl | List |
RestObligationCompLocRecRDO
| Parameter Name | Data Type |
|---|---|
| action | String |
| locType | String |
| locId | BigDecimal |
| qty | BigDecimal |
| amt | BigDecimal |
JSON Structure: The same RDO ‘RestObligationRecRDO’ will be used for deleteObligation but only the below parameters will be considered for the request. The rest of the parameters will be ignored.
[{
"obligationKey": null,
"partnerType":null,
"partnerId":null,
"supplierSite":null,
"invoice":null }]
Output
RestObligationStatusRecRDO
| Parameter Name | Data Type |
|---|---|
| successObligationTbl | List |
| Parameter Name | Data Type |
|---|---|
| successObligationCount | BigDecimal |
| failObligationTbl | List |
| failObligationCount | BigDecimal |
RestObligationSuccessRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
RestObligationFailRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
| errorMessage | String |
The output will contain the status of the request, including validation errors, if any. For Success:
{
"successObligationTbl": [
{
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"successObligationCount": null,
"failObligationTbl": [],
"failObligationCount": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
For Failure:
{
"successObligationTbl": [],
"successObligationCount": null,
"failObligationTbl": [
{
"errorMessage": null,
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"failObligationCount": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| OBLIGATION | Yes | No | No | Yes |
| OBLIGATION_COMP | Yes | No | No | Yes |
| OBLIGATION_COMP_LOC | Yes | No | No | Yes |
| ALC_HEAD | Yes | No | No | Yes |
| ALC_COMP_LOC | Yes | No | No | Yes |
Delete Obligation Component
Business Overview
This service deletes obligation components for existing obligations by calling the SVCPROV_OBLIGATION package and then calling the core obligation package to validate and delete data from Merchandising tables.
This service accepts an obligation key, a supplier/invoice combination or a partner type/partner/ invoice combination to identify the obligation. Pass the expense component to be deleted. This service will delete the component if the obligation is in Pending status and the component is not the only component on the obligation. If locations are attached to the components then that will be deleted as well. Reallocation to ALC will be done after deletion.
Service Type
Post
ReST URL
/ObligationUpload/deleteObligationComp
Input Parameters
RestObligationRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| obligationLevel | String |
| keyValue1 | String |
| Parameter Name | Data Type |
|---|---|
| keyValue2 | String |
| keyValue3 | String |
| keyValue4 | String |
| keyValue5 | String |
| keyValue6 | String |
| status | String |
| partnerType | String |
| partnerId | String |
| supplierSite | String |
| invoice | String |
| invoiceDate | Timestamp |
| qty | BigDecimal |
| qtyUom | String |
| currency | String |
| exchangeRate | BigDecimal |
| checkAuthNo | String |
| paidAmt | BigDecimal |
| paidDate | Timestamp |
| comments | String |
| obligationCompTbl | List |
RestObligationCompRecRDO
| Parameter Name | Data Type |
|---|---|
| compId | String |
| allocateToAlc | String |
| allocationType | String |
| allocationBasisUom | String |
| amt | BigDecimal |
| rate | BigDecimal |
| perCount | BigDecimal |
| perCountUom | String |
| obligationCompLocTbl | List |
RestObligationCompLocRecRDO
| Parameter Name | Data Type |
|---|---|
| action | String |
| locType | String |
| locId | BigDecimal |
| qty | BigDecimal |
| Parameter Name | Data Type |
|---|---|
| amt | BigDecimal |
JSON Structure: The same RDO ‘RestObligationRecRDO’ will be used for deleteObligationComp, but only the below parameters will be considered for the request. The rest of the parameters will be ignored.
[{
"obligationKey": null,
"partnerType":null,
"partnerId":null,
"supplierSite":null,
"invoice":null,
"obligationCompTbl" : [{
"compId":null
}]
}]
Output
RestObligationStatusRecRDO
| Parameter Name | Data Type |
|---|---|
| successObligationTbl | List |
| successObligationCount | BigDecimal |
| failObligationTbl | List |
| failObligationCount | BigDecimal |
RestObligationSuccessRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
RestObligationFailRecRDO
| Parameter Name | Data Type |
|---|---|
| obligationKey | BigDecimal |
| status | String |
| invoice | String |
| errorMessage | String |
The output will contain the status of the request, including validation errors, if any.
For Success:
{
"successObligationTbl": [
{
"status": null,
"invoice": null,
"obligationKey": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"successObligationCount": null,
"failObligationTbl": [],
"failObligationCount": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
For Failure: { "successObligationTbl": [], "successObligationCount": null, "failObligationTbl": [ { "errorMessage": null, "status": null, "invoice": null, "obligationKey": null, "links": [], "hyperMediaContent": { "linkRDO": [] } } ], "failObligationCount": null, "links": [], "hyperMediaContent": { "linkRDO": [] } }
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| OBLIGATION | Yes | No | No | Yes |
| OBLIGATION_COMP | Yes | No | No | Yes |
| OBLIGATION_COMP_LOC | Yes | No | No | Yes |
| ORDHEAD | Yes | No | No | Yes |
| ORDSKU | Yes | No | No | Yes |
| ORDLOC | Yes | No | No | Yes |
| SHIPMENT | Yes | No | No | Yes |
| SHIPSKU | Yes | No | No | Yes |
| V_PACKSKU_QTY | Yes | No | No | Yes |
| ITEM_SUPP_COUNTRY | Yes | No | No | Yes |
| ORDLOC_EXP | Yes | No | No | Yes |
| ALC_HEAD | Yes | No | Yes | Yes |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ALC_COMP_LOC | Yes | No | Yes | Yes |
Inventory
The following services are included in this functional area:
-
Appointments
Appointment Upload Service
- Create Appointment
- Delete Appointment
- Delete Appointment Details
- Manage Appointment Details
- Update Appointment
-
Inventory Download Service
-
Get Item Available Inventory at Customer Orderable Locations
-
Get Item Location Inventory
-
-
Inventory Adjustments
-
Inventory Adjustment Upload Service
-
Create Inventory Adjustment for Items at a Location
-
Create Inventory Adjustments
-
-
Item Transformation Upload Service
- Create Item Transformations
-
-
Returns To Vendor
-
Return to Vendor Download Service
-
RTV Publish Services
-
– Return to Vendor Upload Service * Manage Returns to Vendor
-
-
Shipments and Receipts
-
Receiver Unit Adjustment Download Service
-
Get Receiver Unit Adjustment
-
– Shipment and Receipt Download Service
- Get Shipment Detail
-
Shipment and Receipt Upload Service
-
Create DSD Receipts
-
Create Outbound ASNs
-
Delete Inbound ASNs
-
Manage Inbound ASN
-
Manage Purchase Order and Stock Order Receipts
-
Manage Purchase Order Receipts
-
Manage Stock Order Receipts
-
- Update DSD Receipts
-
-
-
Stock Counts
-
Stock Count Download Service
- Get Stock Count Detail
-
Stock Count Upload Service
-
Create Stock Count Schedules
-
Delete Stock Count Schedule Locations
-
Delete Stock Count Schedules
-
Update Stock Count Schedules
-
-
-
Transfers and Allocations
-
Allocation Download Service
-
Get Allocation Details for Provided Allocation
-
Get Details for an Allocation
-
-
Allocation Number Download Service
- Get Next Allocation Numbers Service
-
Allocation Upload Service
-
Close Allocations
-
Create Allocation Details
-
Create Allocations
-
-
Delete Allocation Details
-
- Update Allocation Details * Update Allocations
-
– Mobile Workflow Transfer Download Service
-
Create Transfer - Get From Locations for Transfer
-
Create Transfer - Get Items for Transfer
-
- Create Transfer - Get Next Transfer Numbers * Create Transfer - Get To Locations for Transfer * Create Transfer - Refresh Transfer Items * Create Transfer - Refresh Transfer Locations * Mobile Workflow - Get Locations on Existing Transfers * Mobile Workflow - Get Transfer Statuses * Mobile Workflow - Get Transfer Summary * Mobile Workflow - Get Transfer Types * Mobile Workflow - Get Transfer Users * Mobile Workflow - Get Transfers
-
-
Mobile Workflow - Refresh Transfer Locations
-
-
Mobile Workflow Transfer Upload Service
- Create Transfer
-
Mobile Workflow - Update Transfer Status
-
– Stock Order Status Upload Service * Manage Stock Order Status
-
– Transfer Detail Service
-
Transfer Download Service
- Get Transfer
-
Get Transfer Details for Provided Transfer
-
– Transfer Upload Service * Create Book Transfer * Create Transfer Details * Create Transfers * Delete Transfer Details * Delete Transfers * Update Transfer Details * Update Transfers
-
– Work Order Status Upload Service * Update Work Orders Status
-
Work Order Download Service
-
Purchase Order Work Order Publish Services
-
Transfer Work Order Publish Services
-
Appointments
The following services are included in this functional area:
-
Appointment Upload Service
-
Create Appointment
-
Delete Appointment
-
Delete Appointment Details
-
Manage Appointment Details
-
Update Appointment
-
Appointment Upload Service
The following services are included in this functional area:
-
Create Appointment
-
Delete Appointment
-
Delete Appointment Details
-
Manage Appointment Details
-
Update Appointment
Create Appointment
Functional Area
Inventory - Appointments
Business Overview
This service can be used to create a new appointment in Merchandising. An appointment is sent to Merchandising when merchandise is about to arrive at a location. After performing the business level validations, appointments will be created through this message in the Scheduled status.
Service Type
POST
ReST URL
MerchIntegrations/services/inventory/appointments/create
Input Payload Details
Table 5-247 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of |
| Object | appointments. |
Table 5-248 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| location | Yes | Number (10) | This feld contains the location where the merchandise has been sent. |
| appointmentNo | Yes | Number (9) | This feld contains the unique number generated by warehouse while creating an appointment. |
| appointmentDateTime | No | date-time | The date and time of the scheduled appointment,i.e. when the goods are expected to arrive at the receiving location. |
| action | Yes | String (2) | The status of the Appointment. Valid values include: SC - Scheduled, MS - Modifed Scheduled, AR - Arrived, AC - Closed. |
| details | No | Collection of Object | References a collection of appointment details. |
| receiptDateTime | No | date-time | The actual date and time upon which the trailer arrived at the receiving location for the appointment. |
Table 5-249 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This feld contains the items shipped to the location. |
| unitQuantity | Yes | Number (12,4) | This feld contains the quantity of the item slated to be sent to the location. |
| documentNo | Yes | Number (12) | This feld contains the purchase order, transfer or allocation corresponding to the shipped merchandise. |
| documentType | Yes | String (1) | This feld indicates the type of document corresponding to the shipped merchandise. Possible choices are Purchase Order (P), Transfer (T), or Allocation (A). Types ’D’ and ‘V’ are also valid document types that are treated the same as transfers. |
| asnNo | No | String (30) | This feld contains the advance shipping notice number associated with the appointment. It is populated only when the appointment is based on an ASN. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"location": 2,
"appointmentNo": 200911,
"appointmentDateTime": "2001-12-31T23:59:59.123Z",
"action": "SC",
"details": [
{
"item": "101200001",
"unitQuantity": 3,
"documentNo": 100000135000,
"documentType": "T",
"asnNo": null
}
],
"receiptDateTime": "2001-12-31T23:59:59.123Z"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Appointment
Functional Area
Inventory - Appointments
Business Overview
This service can be used to delete existing appointments in Merchandising. In addition, Merchandising attempts to close the document that is related to the appointment, when applicable. For more details on Appointments, see the Create Appointment service description.
Service Type
DELETE
ReST URL
MerchIntegrations/services/inventory/appointments/delete
Input Payload Details
Table 5-250 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of |
| Object | appointments. |
Table 5-251 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| appointmentNo | Yes | Number (9) | This feld contains the unique number generated by warehouse while creating an appointment. |
| location | Yes | Number (10) | This feld contains the location where the merchandise has been sent. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"appointmentNo": 200911,
"location": 2
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Appointment Details
Functional Area
Inventory - Appointments
Business Overview
This service is used to delete appointment details from Merchandising. To know more about appointment details, see the Manage Appointment Details service description.
Service Type
DELETE
ReST URL
MerchIntegrations/services/inventory/appointment/details/delete
Input Payload Details
Table 5-252 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of |
| Object | appointment details. |
Table 5-253 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| appointmentNo | Yes | Number (9) | This feld contains the unique number generated by warehouse while creating an appointment. |
| location | Yes | Number (10) | This feld contains the location where the merchandise has been sent. |
| details | No | Collection of Object | References a collection of appointment details. |
Table 5-254 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This feld contains the items shipped to the location. |
| documentNo | Yes | Number (12) | This feld contains the purchase order, transfer or allocation corresponding to the shipped merchandise. |
| asnNo | No | String (30) | This feld contains the advance shipping notice number associated with the appointment. It is populated only when the appointment is based on an ASN. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"appointmentNo": 200911,
"location": 2,
"details": [
{
"item": "101200001",
"documentNo": 100000135000,
"asnNo": null
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Manage Appointment Details
Functional Area
Inventory - Appointments
Business Overview
This service updates an appointment detail record that was previously sent, such as an update to the quantity for an item. If the record doesn’t already exist, it is added.
An appointment is sent to Merchandising when merchandise is about to arrive at a location. These appointment messages are processed by Merchandising and it attempts to receive against the appointment and close it, wherever it is possible. This message contains the item information associated with an appointment, including the ASN and the document number (PO, transfer, or allocation)
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/appointment/details/manage
Input Payload Details
Table 5-255 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of |
| Object | appointments. |
Table 5-256 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| location | Yes | Number (10) | This feld contains the location where the merchandise has been sent. |
| appointmentNo | Yes | Number (9) | This feld contains the unique number generated by warehouse while creating an appointment. |
| action | Yes | String (2) | The status of the Appointment. Valid values include: SC - Scheduled, MS - Modifed Scheduled, AR - Arrived, AC - Closed. |
| details | No | Collection of Object | References a collection of appointment details. |
Table 5-257 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This feld contains the items shipped to the location. |
| unitQuantity | Yes | Number (12,4) | This feld contains the quantity of the item slated to be sent to the location. |
| documentNo | Yes | Number (12) | This feld contains the purchase order, transfer or allocation corresponding to the shipped merchandise. |
| documentType | Yes | String (1) | This feld indicates the type of document corresponding to the shipped merchandise. Possible choices are Purchase Order (P), Transfer (T), or Allocation (A). Types ’D’ and ‘V’ are also valid document types that are treated the same as transfers. |
Table 5-257 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| asnNo | No | String (30) | This feld contains the advance shipping notice number associated with the appointment. It is populated only when the appointment is based on an ASN. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"location": 2,
"appointmentNo": 200911,
"action": "SC",
"details": [
{
"item": "101200001",
"unitQuantity": 12,
"documentNo": 100000135000,
"documentType": "T",
"asnNo": null
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Appointment
Functional Area
Inventory - Appointments
Business Overview
This service is used to edit an existing appointment in Merchandising. An update message updates the status of an existing appointment if already exists. Valid values for the status column include:
-
SC–Scheduled
-
MS–Modified Scheduled
-
AR–Arrived
-
AC–Closed
For more details about Appointments, see the Create Appointment service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/appointments/update
Input Payload Details
Table 5-258 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of |
| Object | appointments. |
Table 5-259 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| location | Yes | Number (10) | This feld contains the location where the merchandise has been sent. |
| appointmentNo | Yes | Number (9) | This feld contains the unique number generated by warehouse while creating an appointment. |
| appointmentDateTime | No | date-time | The date and time of the scheduled appointment,i.e. when the goods are expected to arrive at the receiving location. |
Table 5-259 (Cont.) Items - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| action Yes | String (2) | The status of the Appointment. Valid values include: SC - Scheduled, MS - Modifed Scheduled, AR - Arrived, AC - Closed. |
| receiptDateTime No | date-time | The actual date and time upon which the trailer arrived at the receiving location for the appointment. |
Sample Input Message{"collectionSize": 1,"items": [{"location": 2,"appointmentNo": 200911,"appointmentDateTime": "2001-"action": "SC","receiptDateTime": "2001-12-3}]} | 12-31T23:59:1T23:59:59.1 | 59.123Z",23Z" |
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Inventory Download Service
The following services are included in this functional area:
-
Get Item Available Inventory at Customer Orderable Locations
-
Get Item Location Inventory
Get Item Available Inventory at Customer Orderable Locations
Functional Area
Inventory
Business Overview
This service publishes available inventory data to downstream consuming systems. It is intended for sellable inventory visibility and returns only rows that are currently sellable, belong to a stockholding and customer-orderable store or warehouse, and are either warehouse inventory or non-pack store inventory. The payload exposes available quantity and stock on hand for the qualifying item/location, and available quantity is calculated at read time from the cached inventory buckets, with warehouse calculations also including pack-component quantities.
This web service is used to fetch available inventory at customer orderable store or warehouse locations. The service considers only approved transaction level items which are sellable, inventoried and ranged to stockholding and customer orderable locations. To keep the data volume manageable for performance consideration, the service publishes inventory availability for item/locations which currently have non-zero inventory position, or had non-zero inventory position in the last 7 days when the current inventory position is zero.
Initial seeding is narrower than steady-state updates. Refresh seeds approved transactionlevel inventoried items that changed recently or still carry non-zero inventory in tracked buckets, while delta updates are driven by ITEM_LOC_SOH quantity changes. Changes to store or warehouse customer-orderable or stockholding flags are handled through targeted rebuild requests so the published population stays aligned with location eligibility.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: ITEM_LOC_SOH
Additional business tables: ITEM_MASTER, STORE, WH
JSON cache table: MERCHAPI_ITEM_LOC_SOH
JSON generation view: not applicable; cache rows are populated directly by package logic
The runtime response is read directly from that cache table, and the cache is populated from ITEM_LOC_SOH, ITEM_MASTER, STORE, and WH through the available-inventory cache processing flow.
Functionally, it serves sellable inventory visibility for customer-orderable locations and returns only rows that are currently sellable, belong to a stockholding and customer-orderable store or warehouse, and are either warehouse inventory or non-pack store inventory.
The payload exposes available quantity and stock on hand for the qualifying item/location, and available quantity is calculated at read time from the cached inventory buckets, with warehouse calculations also including pack-component quantities.
Initial Seeding and post enablement rebuild/repair
Refresh seeds approved transaction-level inventoried items where ITEM_MASTER.STATUS = ‘A’, ITEM_MASTER.ITEM_LEVEL = ITEM_MASTER.TRAN_LEVEL, and ITEM_MASTER.INVENTORY_IND = ‘Y’.
Refresh keeps rows changed in the last 7 days or rows that still have a non-zero quantity in one of the tracked inventory buckets, and DATA_REFRESH/REBUILD marks cache rows deleted when the item/location no longer exists in ITEM_LOC_SOH.
ICL (Integration Change Log) table: ICL_RMS_ITEM_LOC_SOH (ICL consumer name = MERCHAPI)
Triggers on ITEM_LOC_SOH stage ICL_RMS_ITEM_LOC_SOH updates for store and warehouse ITEM_LOC_SOH rows whenever tracked inventory buckets change.
Batch-driven bulk rebuild handling for specific events
Store stockholding indicator change, store customer-orderable indicator change, warehouse stockholding indicator change, and warehouse customer-orderable indicator change do not rely only on ITEM_LOC_SOH delta staging.
Those source events insert a record into MERCHAPI_ASYNC_REQUEST for inventory/ available with REQUEST_TYPE = DATA_REFRESH, REFRESH_TYPE = REBUILD, and REQUEST_PARAMETERS set to the affected store or warehouse so the rebuild stays scoped to that location.
These requests are processed through MERCHAPI_DATA_REBUILD_ADHOC_PROCESS → MERCHAPI_DATA_REBUILD_ADHOC_JOB and realign the MERCHAPI_ITEM_LOC_SOH cache when location eligibility changes can add or remove a large inventory population at once.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_ITEM_LOC_SOH
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_ITEM_LOC_SOH_PROCESS → MERCHAPI_ITEM_LOC_SOH_ADHOC_JOB
Webhook configuration api name: inventory/available
Special handling
Additional GET query parameters: locationType, location.
Request windows greater than 30 days use the full-download access path, while shorter windows use the delta access path.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime characteristics and should be evaluated separately. Because this service is driven primarily by ITEM_LOC_SOH row volume and inventory-bucket churn rather than by complex source SQL, the available configuration should be validated against the customer production inventory profile, with the key performance-related configuration for this service covering the following:
Multi-threading and commit control
This service supports multi-threaded execution for both initial seeding and delta processing. Thread count is controlled through API_NO_OF_THREADS, and commit sizing is controlled through API_COMMIT_MAX_COUNTER.
Because the cache is populated directly from ITEM_LOC_SOH together with a small set of eligibility tables, runtime is usually driven more by row volume and inventory-change frequency than by join complexity. Common starting points for large-volume runs are 8, 16, or 32 threads. Values of 48 or 64 threads should be considered only after testing and with awareness of competing workload in the environment.
API_COMMIT_MAX_COUNTER should be sized together with the thread setting. Typical values range from about 1,000 rows and can extend to 10,000 for simpler restartable workloads. Lower commit values may perform better when sustained inventory-change spikes need to drain in smaller units of work.
Dropping indexes and constraints during seeding
This option applies only to initial seeding, including truncate-and-load execution. When thread and commit settings are high, concurrent inserts can increase index maintenance overhead and slow the load.
To reduce that overhead, DROP_INDEX_ON_REFRESH can be enabled so indexes and constraints are dropped before seeding and rebuilt after the load completes. GATHER_STATS_ON_REFRESH should normally remain enabled unless testing shows a specific reason to change it.
REST fetch considerations
Because the payload is relatively narrow, larger page limits are often practical after testing. REST page size should still be selected so the average response remains below about 10 MB per call, using common page-limit values such as 1,000, 5,000, or 10,000 rows.
For full downloads, do not provide the since query parameter so the database can favor the primary-key access path. For delta downloads, use a small time window, typically a few minutes and at most a few hours, so the eligible row set on the LAST_UPDATE_DATETIME index remains small.
Wider delta windows, especially multi-day windows that can arise during outages or data recovery, generally do not perform well. For such scenarios, keeping BUILD_HISTOGRAM enabled allows the service to support recovery through smaller, more selective polling windows using the optimalBefore query parameter.
In this catch-up pattern, for requests up to 30 days in the past, the client provides optimalBefore and leaves before empty. The client then uses the returned before timestamp to continue polling incrementally until the backlog is cleared, and then resumes the normal short-
window delta pattern. Hourly histogram processing groups LAST_UPDATE_DATETIME values into buckets of 100,000 rows in MERCHAPI_TIMESTAMP_HISTOGRAM using API specific HISTOGRAM_ROW_COUNT configuration.
Handling Bulk Publish on Store/Warehouse attribute change
This API also uses batch-driven REBUILD handling when store or warehouse stockholding or customer-orderable attributes change.
Those source changes insert MERCHAPI_ASYNC_REQUEST REBUILD requests for inventory/available with the affected location in REQUEST_PARAMETERS. A single store or warehouse eligibility change can therefore republish the full qualifying inventory population for that location rather than only the base inventory rows that changed.
A bulk location stockholding or customer-orderable change can result in a very large number of inventory records being published to downstream systems and should be planned with the downstream performance implication of that message volume in mind.
Service Type
GET
ReST URL
MerchIntegrations/services/inventory/available
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| locationType | No | String | Allowed value for locationType is ‘S’ for Store or ‘W’ for Warehouse. If not defned, fetches details for all locations. If defned, fetches for the specifed location type. |
| location | No | String (10) | Should be a valid store or a virtual warehouse if inventory position for a particular location has to be fetched. locationType is mandatory if this is populated |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-260 PageResultsItemsMerchapiItemLocSoh - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-261 MerchapiItemLocSoh - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | This feld contains the action for available inventory. |
Table 5-261 (Cont.) MerchapiItemLocSoh - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| locationType | No | String (1) | This feld contains the type of location in the location feld. This will be either S for store or W for warehouse. |
| location | No | Number(10,0) | This feld contains the numeric identifer of the location in which the item is to be found. |
| item | No | String (25) | This feld contains the unique alphanumeric value that identifes the item. This will be an approved sellable transaction-level item. For warehouse locations, pack items are also included. |
| availableQuantity | No | Number(12,4) | This feld represents the available inventory of an item in a particular location. This is calculated as stock on hand minus the sum of non- sellable, transfer reserved, customer order reserved, RTV, and in-progress sales quantity. For warehouse locations, the inventory of an item as a component of a pack is also included in the available inventory calculation. |
| stockOnHand | No | Number(12,4) | This feld contains the current stock on hand for the item. |
| standardUom | No | String (4) | This feld contains the unit of measure in which stock of the item is tracked at a corporate level. |
| physicalWarehouse | No | Number(10,0) | This feld contains the physical warehouse for a warehouse location. |
Table 5-261 (Cont.) MerchapiItemLocSoh - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| channelId | No | Number(4,0) | This feld contains the channel ID for the store, or the channel of the virtual warehouse when the location type is warehouse. |
| cacheTimestamp | No | dateTime | This feld holds the database timestamp when the message was prepared or cached to serve this service for an item/location combination. The message serving this service is cached for an item/location when inventory position is changed, and this will continue to hold the same timestamp value until the next inventory change. The consumer can use this feld for sequencing records for an item/ location. UTC timestamp. |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-262 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"locationType": null,
"location": 6000,
"item": "100100076",
"availableQuantity": 3,
"stockOnHand": 12,
"standardUom": "EA",
"physicalWarehouse": 11,
"channelId": 1,
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Input
{
"items": [{
"action": "INSERT",
"locationType": "W",
"location": "13",
"item": "102900026",
"availableQuantity": 1,
"stockOnHand": 1,
"standardUom": "EA",
"physicalWarehouse": 1,
"channelId": 1,
"cacheTimestamp": "2022-07-11T15:57:42.147Z"
}],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/services/
inventory/available?
locationType=W&limit=1&since=1970-01-01T00:00:00.001Z&before=2022-07-18T23:27:
26.547666+00:00",
"rel": "self"
},
{
"href": "http://<hostname>:<portnumber>/MerchIntegrations/services/
inventory/available?
locationType=W&offsetkey=W%2C13%2C102900026&limit=1&since=1970-01-01T00:00:00.
001Z&before=2022-07-18T23:27:26.547666+00:00",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| STORE | Yes | No | No | No |
| WH | Yes | No | No | No |
| MERCHAPI_ITEM_LOC_SOH | Yes | No | No | No |
Get Item Location Inventory
This section describes the Item Loc Inventory Detail service.
Business Overview
Item Loc Inventory Detail service allows user to retrieve Item Location and Item Location Stock on Hand information for a selected item and location. If location and location type are not specified, all locations for the item will be retrieved. If location type is specified but not the location, all locations for the item and location type will be retrieved.
Service Type
Get
ReST URL
ItemlocInvDtl/itemlocInvDetail?
item={itemNumber}&location={locationNumber}&locationType={locationType}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Item | Yes | Item ID |
| Location | No | Location ID. |
| Location Type | No | Location Type. |
Output
RestItemlocInvDtlRecRDO
| Parameter Name | Data Type |
|---|---|
| item | String |
| itemParent | String |
| loc | BigDecimal |
| locType | String |
| unitRetail | BigDecimal |
| sellingUom | String |
| clearInd | String |
| taxableInd | String |
| localItemDesc | String |
| status | String |
| primarySupp | BigDecimal |
| primaryCntry | String |
| avCost | BigDecimal |
| unitCost | BigDecimal |
| stockOnHand | BigDecimal |
| sohUpdateDatetime | Timestamp |
| inTransitQty | BigDecimal |
| packCompSoh | BigDecimal |
| Parameter Name | Data Type |
|---|---|
| packCompResv | BigDecimal |
| packCompExp | BigDecimal |
| rtvQty | BigDecimal |
| customerResv | BigDecimal |
| sellingUnitRetail | BigDecimal |
| localShortDesc | String |
| packCompIntran | BigDecimal |
| tsfReservedQty | BigDecimal |
| tsfExpectedQty | BigDecimal |
| nonSellableQty | BigDecimal |
| customerBackorder | BigDecimal |
| packCompCustResv | BigDecimal |
| packCompCustBack | BigDecimal |
| packCompNonSellable | BigDecimal |
| inProgressSalesQty | BigDecimal |
| firstReceived | Timestamp |
| lastReceived | Timestamp |
JSON Structure
{
"item": null,
"itemParent": null,
"loc": null,
"locType": null,
"unitRetail": null,
"sellingUom": null,
"clearInd": null,
"taxableInd": null,
"localItemDesc": null,
"status": null,
"primarySupp": null,
"primaryCntry": null,
"avCost": null,
"unitCost": null,
"stockOnHand": null,
"sohUpdateDatetime": null,
"inTransitQty": null,
"packCompSoh": null,
"packCompResv": null,
"packCompExp": null,
"rtvQty": null,
"customerResv": null,
"sellingUnitRetail": null,
"localShortDesc": null,
"packCompIntran": null,
"tsfReservedQty": null,
"tsfExpectedQty": null,
"nonSellableQty": null,
"customerBackorder": null,
"packCompCustResv": null,
"packCompCustBack": null,
"packCompNonSellable": null,
"inProgressSalesQty": null,
"firstReceived": null,
"lastReceived": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_ITEM_LOC | Yes | No | No | No |
| ITEM_LOC_SOH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Inventory Adjustments
The following services are included in this functional area:
-
Inventory Adjustment Upload Service
-
Create Inventory Adjustment for Items at a Location
-
Create Inventory Adjustments
-
-
Item Transformation Upload Service
- Create Item Transformations
Inventory Adjustment Upload Service
The following services are included in this functional area:
-
Create Inventory Adjustment for Items at a Location
-
Create Inventory Adjustments
Create Inventory Adjustment for Items at a Location
This section describes the Inventory Adjustment service.
Functional Area
Inventory
Business Overview
Deprecated in v23.1.401.0: Scheduled for Removal in 2 Years. Use MerchIntegrations/ services/inventory/inventoryAdjustments/create
The primary role of this service is to create inventory adjustment and send them to Merchandising.
Inventory Adjustment Business Overview
Deprecated in v23.1.401.0: Scheduled for Removal in 2 Years. Use MerchIntegrations/ services/inventory/inventoryAdjustments/create
This service creates inventory adjustment by calling the package SVCPROV_INVADJ to load input data to the staging tables and then calling the core inventory adjustment package to validate and insert data to the Merchandising tables.
Service Type
Post
ReST URL
Invadj/createInvadj
Input Parameters
SvcprovInvadjdescRecRDO
| Parameter Name | Data Type |
|---|---|
| location | BigDecimal |
| Invadjdtl | List |
SvcprovInvadjdescdtlRecRDO
| Parameter Name | Data Type |
|---|---|
| unitQty | BigDecimal |
| toDisposition | String |
| adjReasonCode | BigDecimal |
| docType | String |
| toWipCode | String |
| item | String |
| poNbr | String |
| auxReasonCode | String |
| weight | BigDecimal |
| toTroubleCode | String |
| fromWipCode | String |
| weightUom | String |
| unitCost | BigDecimal |
| fromTroubleCode | String |
| transshipmentNumber | String |
| fromDisposition | String |
| transactionCode | BigDecimal |
| adjTranDate | Date |
(Format:YYYY-MM-DD) | |
| userId | String |
JSON Structure
[
{
"location":null,
"invadjdtl":[
{
"unitQty":null,
"toDisposition":null,
"adjReasonCode":null,
"docType":null,
"toWipCode":null,
"item":null,
"poNbr":null,
"auxReasonCode":null,
"weight":null,
"toTroubleCode":null,
"fromWipCode":null,
"weightUom":null,
"unitCost":null,
"fromTroubleCode":null,
"transshipmentNumber":null,
"fromDisposition":null,
"transactionCode":null,
"adjTranDate":null,
"userId":null,
}
]
}
]
Output
SvcprovInvadjStatusRecRDO
| Parameter Name | Data Type |
|---|---|
| statusMsg | String |
| invadjErrTbl | List< SvcprovFailInvadjRecRDO > |
SvcprovFailInvadjRecRDO
| Parameter Name | Data Type |
|---|---|
| location | BigDecimal |
| unitQty | BigDecimal |
| adjReasonCode | BigDecimal |
| item | String |
| errorMsg | String |
The output will contain the status of the request including validation errors, if any.
JSON Structure
{
"statusMsg": null,
" invadjErrTbl ": [
{
" location": null,
"unitQty": null,
" adjReasonCode": null,
" item": null,
"errorMsg": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| INV_ADJ | Yes | Yes | No | No |
| ITEM_LOC_SOH | Yes | Yes | Yes | No |
| SVC_PROCESS_TRACKER | Yes | Yes | Yes | No |
| SVC_INV_ADJ | Yes | Yes | Yes | Yes |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Create Inventory Adjustments
Functional Area
Inventory - Inventory Adjustments
Business Overview
Merchandising receives requests for inventory adjustments from an integration subsystem through this service. The request contains information about the item and location whose inventory is being adjusted, the quantity to adjust, a ‘from’ and a ‘to’ disposition code, and the reason for the adjustment. Merchandising uses the information in these requests to perform the following actions :
Adjust overall quantities of stock on hand for the item and location combination
Adjust the availability of item-location quantities based on status.
After initial processing and validation, Merchandising performs the following tasks:
The item/location is ranged if it does not already exist.
For total stock on hand adjustments:
Stock on hand is updated for the item at the location, for total stock on hand adjustments.
Stock adjustment is recorded to the Merchandising transaction level stock ledger.
For status-based adjustments:
Quantities by inventory status are adjusted for the item/location combination.
Non-sellable quantity is updated for the item/location.
For both types, an audit trail is created for the inventory adjustment by item, location, inventory status and reason.
Note: An adjustment can impact both total stock on hand and inventory status at the same time.
Inventory Adjustment Transaction Codes
Whenever the status or quantity of inventory changes, Merchandising writes transaction codes to adjust inventory values in the stock ledger. The types of inventory adjustment transaction codes are:
-
Tran code 22 - adjustments where positive and negative adjustments are made to total stock on hand using a reason code with the COGS indicator = N. In this case, a transaction is inserted to the transaction level stock ledger for both the retail and cost value of the adjustment.
-
Tran code 23 - adjustments where positive and negative adjustments are made to total stock on hand using a reason code with the COGS indicator = Y. In this case, a transaction is inserted to the transaction level stock ledger for both the retail and cost value of the adjustment.
-
Tran code 25 - adjustments to inventory status, where inventory is moved to or from an unavailable or non-sellable status.
Other Notes
One or both of the ‘from’ disposition and ‘to’ disposition fields must have values. Both cannot be empty. If both contain equal values, no adjustment will be made.
The item must be inventoried and approved.
If the item is a simple pack catch weight item, then both the weight and weight UOM need to be defined or NULL. The weight UOM must be of the type ‘Mass’.
The item should be a transaction-level or a reference item. When a reference item is passed in, its parent item (the transaction level item) has its inventory adjusted.
If adjusting a pack at a warehouse, the pack item must have its inventory tracked at the pack level (receive as type = Pack for the item/warehouse).
If the location is a warehouse, then either a virtual or physical warehouse can be supported. If it is a virtual warehouse, it must be a stockholding warehouse. If it is a physical warehouse, then the adjusted quantity is distributed among the virtual locations of the physical location.
Service Type
POST
ReST URL
MerchIntegrations/services/inventory/inventoryAdjustments/create
Input Payload Details
Create - Object. See list of elements for detail
Items - Object. See list of elements for detail
Details - Object. See list of elements for detail
Response Code: 200 (Success)
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.
Item Transformation Upload Service
The following services are included in this functional area:
- Create Item Transformations
Create Item Transformations
Functional Area
Inventory - Inventory Adjustments
Business Overview
The service provides the ability to process inventory adjustments and WAC recalculation in Merchandising for item transformations from an external system such as the Fresh Product Management System. The service accepts the list of input & output items involved in the transformation and carry out inventory adjustments to account for inventory conversions in the transformation. Based on the product transformations details, the inventory of the input item(s) will be decremented, and the inventory of the output item(s) will be incremented.
An item transformation may also include the costs involved in labor and packaging. In order to communicate the conversion cost to Merchandising as this will have impact on Stock Ledger postings and WAC calculation, the transformation request can also carry activity codes for each transformation activity involved in producing the output items. The cost associated with each of these activities can be predefined in Merchandising or can be interfaced in the transformation message with the activity code.
The service supports a collection of item transformation request and will return success or failure through the service response object. If there are upload validation errors, the record will be rejected, and a failure status will be returned as part of the response object in the web service call.
Service Type
POST
ReST URL
MerchIntegrations/services/item/transformations/create
Input Payload Details
Table 5-263 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | Collection of item transformations. |
Table 5-264 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transformationId | Yes | String (15) | The external reference id corresponding to a transformation. This should be unique at LOCATION and TRANSFORMATION DATE level. |
| location | Yes | Number (10) | The stockholding company store or the stockholding virtual warehouse at which the transformation was performed. |
| locationType | Yes | String (1) | The type of the location. Valid values are S - Store and W - Warehouse. |
| transformationDate | No | date | The date of transformation. This can be a past or present date in reference to the Vdate. Valid format is ‘yyyy- mm-dd’. |
| workOrderActivity | No | Collection of Object | Collection of all the work order activities involved in the transformation. |
| transformationInput | Yes | Collection of Object | Collection of the input item details involved in the transformation. |
| transformationOutput | Yes | Collection of Object | Collection of the output item details involved in the transformation. |
Table 5-265 WorkOrderActivity - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| activityCode | Yes | String (10) | The activity code corresponding to the work order activity involved in transformation such as labor and packaging cost. |
| activityCost | No | Number (20,4) | The cost involved in the work order activity. |
| currencyCode | No | String (3) | The currency in which the activity cost is provided. If the value is null and an activity cost is provided, then it is assumed that the given activity cost is in the location’s currency. |
Table 5-266 TransformationInput - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The transaction level or below transaction level item which was used as an input item or as an output item in the transformation activity. |
Table 5-266 (Cont.) TransformationInput - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| disposition | No | String (10) | This value is used to determine if the quantity of the input/output item consumed/generated in the transformation is from available or unavailable inventory buckets based on the dispositions INV_STATUS value in the INV_STATUS_CODES table. |
| quantity | Yes | Number (12,4) | The quantity consumed for the input item or the quantity generated for the output item. |
| quantityUom | No | String (4) | The UOM corresponding to the quantity value. It should be a UOM from the same uom class as that of the uom class of the Standard UOM of the item. |
| weightType | No | String (6) | Indicates whether the WEIGHT is the Total weight (T) or the Weight per unit (WPU). Valid values are defned in code detail with code type INVW. |
| weight | No | Number (12,4) | Weight of the item utilized (input) or generated (output). For weight type Total, the given weight is the Total weight for the quantity utilized or generated. |
| weightUom | No | String (4) | Unit of Measure of the weight. |
| inventoryIdentiferType | No | String (6) | This inventory identifer type feld is passed during Item Transformation message. Valid values are found under the Inventory Identifer Types (IIDT) code type; for example, Lot (L), Expiry Date (E), Import Document (D). |
| inventoryId | No | String (120) | Holds the inventory identifer provided on item transformation messages. It is a free-form text ID feld that will be interfaced and displayed as a text feld. |
Table 5-267 CreateError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemTransformationError | Yes | Collection of | Collection of Item transformation |
| Object | error records. |
Table 5-268 ItemTransformationError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transformationId | Yes | String (15) | The external reference id corresponding to a transformation. This should be unique at LOCATION and TRANSFORMATION DATE level. |
| location | Yes | Number (10) | The stockholding company store or the stockholding virtual warehouse at which the transformation was performed. |
| locationType | Yes | String (1) | The type of the location. Valid values are S - Store and W - Warehouse. |
| transformationDate | Yes | date | The date of transformation. This can be a past or present date in reference to the Vdate. Valid format is ‘yyyy- mm-dd’. |
| errors | Yes | Array of String | Collection of error messages. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"transformationId": "10001",
"location": 1531,
"locationType": "S",
"transformationDate": "2001-12-31",
"workOrderActivity": [
{
"activityCode": "12122",
"activityCost": 10,
"currencyCode": "USD"
}
],
"transformationInput": [
{
"item": "101050103",
"disposition": "ATS",
"quantity": 2,
"quantityUom": "EA",
"weightType": "WPU",
"weight": 2.5,
"weightUom": "KG",
"inventoryIdentifierType": "L",
"inventoryId": "5346"
}
],
"transformationOutput": [
{
"item": "101050103",
"disposition": "ATS",
"quantity": 2,
"quantityUom": "EA",
"weightType": "WPU",
"weight": 2.5,
"weightUom": "KG",
"inventoryIdentifierType": "L",
"inventoryId": "5346"
}
]
}
]
}
Response Code: 200 (Success) 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.
Table 5-269 CreateError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemTransformationError | Yes | Collection of | Collection of Item transformation |
| Object | error records. |
Table 5-270 ItemTransformationError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transformationId | Yes | String (15) | The external reference id corresponding to a transformation. This should be unique at LOCATION and TRANSFORMATION DATE level. |
| location | Yes | Number (10) | The stockholding company store or the stockholding virtual warehouse at which the transformation was performed. |
| locationType | Yes | String (1) | The type of the location. Valid values are S - Store and W - Warehouse. |
| transformationDate | Yes | date | The date of transformation. This can be a past or present date in reference to the Vdate. Valid format is ‘yyyy- mm-dd’. |
| errors | Yes | Array of String | Collection of error messages. |
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": [
{
"itemTransformationError": [
{
"transformationId": "String",
"location": 190104,
"locationType": "?",
"transformationDate": "2001-12-31",
"errors": [
"String"
]
}
]
}
]
}
Returns To Vendor
The following services are included in this functional area:
-
Return to Vendor Download Service
- RTV Publish Services
-
Return to Vendor Upload Service
- Manage Returns to Vendor
Return to Vendor Download Service
The following services are included in this functional area:
- RTV Publish Services
RTV Publish Services
Endpoints
MerchIntegrations/services/inventory/rtv
MerchIntegrations/services/inventory/rtv/{rtvOrderNo}
Functional Area
Inventory – Returns to Vendor
Business Overview
This service publishes return-to-vendor data to downstream consuming systems. It publishes the RTV header together with RTV detail lines, warehouse and supplier enrichment, and header custom flex attributes. Functionally, the view does not apply a direct RTV status filter,
but it only publishes RTVs that currently have at least one detail row. The payload also derives the published location fields from the header so location and locationType resolve to either the store or warehouse side of the RTV.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: RTV_HEAD, RTV_DETAIL
Additional business tables: WH, SUPS, RTV_HEAD_CFA_EXT
JSON cache table: MERCHAPI_EXT_RTV
JSON generation view: V_MERCHAPI_EXT_RTV_JSON
Builds the RTV header from RTV_HEAD, uses aggregated line data from RTV_DETAIL, enriches the payload with warehouse information from WH and supplier information from SUPS, and adds header custom flex attributes from MERCHAPI_EXT_RTV_HEAD_CFA.
The view does not apply a direct RTV status filter, but it only publishes RTVs that currently have at least one detail row.
The payload also derives several location fields from the header: location is either RTV_HEAD.WH or RTV_HEAD.STORE, locationType is S or W based on the same warehouse/store split, and physicalLocation resolves to WH.PHYSICAL_WH or the store.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_RTV_JSON and apply RTV_HEAD.STATUS_IND <> 5.
Mark cache rows deleted when the RTV no longer exists in V_MERCHAPI_EXT_RTV_JSON.
ICL (Integration Change Log) table: ICL_RMS_RTV (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on RTV_HEAD, RTV_DETAIL, and RTV_HEAD_CFA_EXT.
Queue detail changes only when the related header status = 10.
Queue CFA changes only when RTV status not in (5,12,15).
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_RTV
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_RTV_ADHOC_PROCESS → MERCHAPI_EXT_RTV_ADHOC_JOB
Webhook configuration api name: inventory/rtv
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime characteristics and should be evaluated separately. Because this service is built primarily from RTV header and detail data with a smaller supporting-table footprint, runtime is usually driven more by transaction volume and detail density than by source SQL complexity, with the key performance-related configuration for this service covering the following:
Multi-threading and commit control
This service supports multi-threaded execution for both initial seeding and delta processing. Thread count is controlled through API_NO_OF_THREADS, commit sizing through API_COMMIT_MAX_COUNTER, and long-running initial seeding can also be segmented through API_EXEC_SECONDS.
Common starting points for higher-volume runs are 8 or 16 threads, while higher settings such as 32 should be considered only after testing. This service is delivered seeded at 1 thread and should be increased gradually after validating throughput and restart behavior.
API_COMMIT_MAX_COUNTER should be sized together with the thread setting. Typical values range from about 1,000 rows and can extend to 10,000 for simpler restartable workloads. Lower commit values may perform better when RTV detail changes arrive in shortterm spikes.
API_EXEC_SECONDS is mainly relevant for initial seeding. A value of about 30 minutes helps the batch pause and resume cleanly so tuning changes can be applied between runs if needed.
Dropping indexes and constraints during seeding
This option applies only to initial seeding, including truncate-and-load execution. When thread and commit settings are high, concurrent inserts can increase index maintenance overhead and slow the load.
To reduce that overhead, DROP_INDEX_ON_REFRESH can be enabled so indexes and constraints are dropped before seeding and rebuilt after the load completes. GATHER_STATS_ON_REFRESH should normally remain enabled unless testing shows a specific reason to change it.
REST fetch considerations
REST page size should be selected based on average payload size so the average response remains below about 10 MB per call. Common page-limit values are 1,000, 5,000, or 10,000 rows.
For full downloads, do not provide the since query parameter so the database can favor the primary-key access path. For delta downloads, use a small time window, typically a few minutes and at most a few hours, so the eligible row set on the LAST_UPDATE_DATETIME index remains small.
Wider delta windows, especially multi-day windows that can arise during outages or data recovery, generally do not perform well. For such scenarios, keeping BUILD_HISTOGRAM enabled allows the service to support recovery through smaller, more selective polling windows using the optimalBefore query parameter.
In this catch-up pattern, for requests up to 30 days in the past, the client provides optimalBefore and leaves before empty. The client then uses the returned before timestamp to continue polling incrementally until the backlog is cleared, and then resumes the normal shortwindow delta pattern. Hourly histogram processing groups LAST_UPDATE_DATETIME values into buckets of 10,000 rows in MERCHAPI_TIMESTAMP_HISTOGRAM using the shared HISTOGRAM_ROW_COUNT configuration.
Service Type
GET
ReST URL
MerchIntegrations/services/inventory/rtv
MerchIntegrations/services/inventory/rtv/{rtvOrderNo}
Input Parameters for MerchIntegrations/services/inventory/rtv
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-271 Input Parameter for “MerchIntegrations/services/inventory/rtv/ {rtvOrderNo}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| rtvOrderNo | Yes | String | RTV Order Number |
Table 5-271 (Cont.) Input Parameter for “MerchIntegrations/services/inventory/rtv/ {rtvOrderNo}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Input Parameters for MerchIntegrations/services/inventory/rtv/{rtvOrderNo}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| rtvOrderNo | Yes | Number | This number uniquely identifes the return to vendor within the system. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - RTV Head
Table 5-272 PageResultsItemsMerchApiRTV - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-273 MerchApiRTV - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for RTV details. |
| rtvOrderNo | No | Number(10,0) | This feld contains the number that uniquely identifes the return to vendor within the system. |
| supplier | No | Number(10,0) | This feld contains the unique identifer for the supplier or supplier site to which the merchandise is being returned. |
| supplierName | No | String (240) | This feld contains the supplier’s trading name. |
| status | No | Number(2,0) | This feld contains the current status of the return. Valid values include 10 - Approved, 12 - In Progress, 15 - Shipped, and 20 - Cancelled. |
| location | No | Number(10,0) | This feld contains the unique identifer for the location where the items are being returned from. |
| locationType | No | String (1) | This feld contains the type of location from which the items are being returned. |
| physicalLocation | No | Number(10,0) | This feld contains the store number or the physical warehouse from which the items are being returned. |
| totalOrderAmount | No | Number(20,4) | This feld contains the total amount of the return. This feld is stored in the supplier’s currency. |
| shipToAddress1 | No | String (240) | This feld contains the frst line of the supplier’s address for returns. |
| shipToAddress2 | No | String (240) | This feld contains the second line of the supplier’s address for returns. |
Table 5-273 (Cont.) MerchApiRTV - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| shipToAddress3 | No | String (240) | This feld contains the third line of the supplier’s address for returns. |
| shipToCity | No | String (120) | This feld contains the city name of the supplier’s address for returns. |
| state | No | String (3) | This feld contains the state of the supplier’s address for returns. |
| shipToCountry | No | String (3) | This feld contains the country ID of the supplier’s address for returns. |
| shipToPostalCode | No | String (30) | This feld contains the zip code of the supplier’s address for returns. |
| returnAuthorizationN o | No | String (12) | This feld contains the number that the supplier provides when the decision is made that an order may be returned. |
| returnCourier | No | String (250) | This feld contains the courier name if the supplier requires that returns be sent by a designated carrier. |
| freightCharge | No | Number(20,4) | This feld contains the freight cost associated with the vendor return, if applicable, and is stored in the supplier’s currency. |
| creationDate | No | date | This feld contains the date on which the RTV order was created. |
| completedDate | No | date | This feld contains the date the RTV order was completed. |
Table 5-273 (Cont.) MerchApiRTV - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| restockingPercentage | No | Number(12,4) | This feld contains the restocking fee percentage applicable to the order. This is the fee as a percentage of the total return value charged by the supplier for recovering the expenses that may have to be incurred while restocking them at the supplier’s location. |
| restockingCost | No | Number(20,4) | This feld contains the restocking fee value. This is calculated based on the restocking percentage by multiplying it by the total return value. |
| externalReferenceNo | No | String (30) | This feld contains an audit trail reference to an external system when an RTV is created by external store or warehouse systems. |
| comments | No | String (2000) | This feld contains any comments associated with the return. |
| notAfterDate | No | date | This feld contains the last date that an RTV can be sent to a supplier. |
| massReturnTransferN o | No | Number(10,0) | This feld holds the unique identifer for the mass return transfer if the RTV is created through a mass return transfer. |
| shipToJurisdictionCod e | No | String (10) | This feld identifes the jurisdiction code for the country-state relationship. |
| rtvOriginatedInd | No | String (6) | This feld identifes the source of the return present in the table. |
| createDateTime | No | dateTime | This column holds the record creation date and time (UTC). |
Table 5-273 (Cont.) MerchApiRTV - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| updateDateTime | No | dateTime | This column holds the date and time when the record was last updated (UTC). |
| details | No | Collection of Object | This list holds attributes for RTV detail records. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the RTV. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the RTV record was frst picked for processing from the ICL table. |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication. |
Table 5-274 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | This feld contains the unique identifer for the item being returned to the supplier. |
| shipment | No | Number(12,0) | This feld is no longer used by RMS. |
| invStatus | No | Number(2,0) | This feld contains the number representing the inventory status code. This feld is only required if the reason feld has a value of U for unavailable inventory. |
| quantityRequested | No | Number(12,4) | This feld contains the quantity of this item requested to be returned to the supplier. |
Table 5-274 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| unitCost | No | Number(20,4) | This feld contains the cost per unit for the item being returned that is expected to be recovered from the supplier. This feld is stored in the supplier’s currency. |
| reason | No | String (6) | This feld contains the value identifying the reason for the return. Valid values for this feld are defned on CODE_DETAIL where CODE_TYPE = ‘RTVR’. |
| sequenceNo | No | Number(4,0) | This feld contains a sequence number which makes the record unique when combined with the RTV order number. |
| quantityCancelled | No | Number(12,4) | This feld contains the difference between quantity requested and quantity returned. This is updated after the RTV has been shipped. |
| quantityReturned | No | Number(12,4) | This feld contains the quantity of this item that was shipped to the supplier on this RTV. |
| restockPercentage | No | Number(12,4) | This feld contains the restocking fee percentage applicable to the item. This is the fee as a percentage of the total return value charged by the supplier for recovering the expenses that may have to be incurred while restocking them at the supplier’s location. |
| originalUnitCost | No | Number(20,4) | This feld contains the current weighted average cost for the item at the return location. |
Table 5-274 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| updatedByRmsInd | No | String (1) | This feld indicates if the last update to RTV_DETAIL was done by RMS or an external application. If by RMS, the indicator will be set to Y and a message will be published to external systems. If by an external application, the indicator will be set to N and a message will not be published to external systems. |
| createDateTime | No | dateTime | This column holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This column holds the date and time when the record was last updated (UTC). |
Table 5-275 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-276 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"rtvOrderNo": 1,
"supplier": 1,
"supplierName": null,
"status": 1,
"location": 1,
"locationType": null,
"physicalLocation": 1,
"totalOrderAmount": 1.0,
"shipToAddress1": null,
"shipToAddress2": null,
"shipToAddress3": null,
"shipToCity": "Minneapolis",
"state": "MN",
"shipToCountry": "US",
"shipToPostalCode": null,
"returnAuthorizationNo": null,
"returnCourier": null,
"freightCharge": 1.0,
"creationDate": "2001-12-31",
"completedDate": "2001-12-31",
"restockingPercentage": 1.0,
"restockingCost": 1.0,
"externalReferenceNo": null,
"comments": "commentDesc",
"notAfterDate": "2001-12-31",
"massReturnTransferNo": 1,
"shipToJurisdictionCode": null,
"rtvOriginatedInd": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"details": [
{
"item": null,
"shipment": 1,
"invStatus": 1,
"quantityRequested": 3,
"unitCost": 9.65,
"reason": null,
"sequenceNo": 1,
"quantityCancelled": 1.0,
"quantityReturned": 1.0,
"restockPercentage": 1.0,
"originalUnitCost": 1.0,
"updatedByRmsInd": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - RTV Details
| Name | Data Type | Description |
|---|---|---|
| item | String | Unique identifer for the item. |
| shipment | Number | The RTV shipment number. |
| invStatus | String | The inventory status code. Only applicable if the reason feld has a value of ‘U’ for unavailable inventory. |
| quantityRequested | Number | The quantity of items requested to be returned to the supplier. |
| unitCost | Number | The cost per unit for the SKU being returned in the supplier’s currency. |
| Reason | String | The cost per unit for the SKU being returned in the supplier’s currency. |
| Name | Data Type | Description |
|---|---|---|
| sequenceNo | Number | The sequence number of the RTV detail record that is being deleted. |
| quantityCancelled | Number | The difference between qty_requested and qty_returned. This is updated after the RTV has been shipped. |
| quantityReturned | Number | This feld contains the quantity of this item that was shipped to the supplier on this RTV. |
| restockPercentage | Number | This feld contains the Restocking Fee percentage applicable to the item. This is the fee as percentage of the total return value charged by the supplier for recovering the expenses that may have to be incurred while restocking them at suppliers location. |
| originalUnitCost | Number | This feld contains the current weighted average cost for the item at the return location. |
| updatedByRmsInd | String | This feld indicates if the last update to RTV_DETAIL table is done by RMS or an external application. If by RMS, then the indicator will be set to Y and a message will be published to external systems; otherwise, the indicator will be set to N and a message will not be published to external systems. |
| createDateTime | String | Date time when record was inserted. |
| updateDateTime | string | Date time when record was updated. |
Output - Custom Flex Attributes
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| updateDateTime | String | This feld will hold the date time when the custom fex attribute was last updated. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| Elements | Description |
|---|---|
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON output:
{
"items": [
{
"action": "NO_CHANGE",
"rtvOrderNo": 0,
"supplier": 0,
"supplierName": "string",
"status": 0,
"location": 0,
"locationType": "string",
"physicalLocation": 0,
"totalOrderAmount": 0,
"shipToAddress1": "string",
"shipToAddress2": "string",
"shipToAddress3": "string",
"shipToCity": "string",
"state": "string",
"shipToCountry": "string",
"shipToPostalCode": "string",
"returnAuthorizationNo": "string",
"returnCourier": "string",
"freightCharge": 0,
"creationDate": "string",
"completedDate": "string",
"restockingPercentage": 0,
"restockingCost": 0,
"externalReferenceNo": "string",
"comments": "string",
"notAfterDate": "string",
"massReturnTransferNo": 0,
"shipToJurisdictionCode": "string",
"originInd": "string",
"createDateTime": "string",
"updateDateTime": "string",
"details": [
{
"item": "string",
"shipment": "string",
"invStatus": "string",
"quantityRequested": 0,
"unitCost": 0,
"reason": "string",
"sequenceNo": 0,
"quantityCancelled": 0,
"quantityReturned": 0,
"restockPercentage": 0,
"originalUnitCost": 0,
"updatedByRmsInd": "string",
"createDateTime": "string",
"updateDateTime": "string"
}
],
"customFlexAttribute": [
{
"name": "string",
"value": "string",
"valueDate": "string",
"createDateTime": "string",
"updateDateTime": "string"
}
],
"rtvOriginatedInd": "string",
"cacheTimestamp": "string"
}
],
"hasMore": true,
"limit": 0,
"count": 0,
"links": [
"SELF_LINK"
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_RTV | Yes | No | Yes | Yes |
| MERCHAPI_EXT_RTV | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_RTV _JSON | Yes | No | No | No |
Return to Vendor Upload Service
The following services are included in this functional area:
- Manage Returns to Vendor
Manage Returns to Vendor
Functional Area
Inventory - Returns to Vendor
Business Overview
Merchandising subscribes to return-to-vendor (RTV) messages when an RTV is shipped out from a warehouse or store. This shipment could be for an RTV that was initially created in Merchandising, or one initiated at the store or warehouse. The RTV information is sent from a warehouse management system (WMS), such as Oracle WMS Cloud or the store inventory solutions, such as Oracle Retail Store Inventory and Operations Cloud Service (SIOCS) when the RTV is created or shipped out of the location. Additionally, RTV information may also come from an external application where RTVs are planned. The external system can create, cancel or update RTVs using this service in the similar manner these are created in Merchandising.
This service allows the above listed systems to create, update or cancel RTVs in Merchandising. Create, update and cancel messages can be sent through this single service.
This service accepts the following status:
A - Approved
P - In-Progress
S - Shipped
C - Cancelled
Create RTVs
If the message contains a new RTV generated in the store or warehouse, then it must contain both header and detail information. RTVs from external systems can be created in Approved, In-Progress or Shipped status. RTVs created in Approved status will be editable through Merchandising screen where details can be updated including an approved RTVs being shipped and cancelled. RTVs created in Approved status via this service will be integrated to downstream systems.
Update RTVs
RTVs in Input (created via Merchandising UI), In-Progress, Approved and Shipped status can be updated using this service. To update an RTV, you can send either only the header information or both header and detail level information. The most common update is to ship a previously created RTV. While updating an approved or in-progress RTV to the Shipped status, if only the header information is provided, then the requested quantity of all the items that are present in the approved RTV will be shipped. Note: Once RTVs are Shipped, they cannot be changed back to the approved status. Alternatively, approved RTVs can also be set to Cancelled status by updating the quantities in case they cannot be shipped for some reason.
Cancel RTV
An RTV can be cancelled without specifying the individual item quantities by sending the header information with Cancelled status. Only Input and Approved RTVs can be cancelled.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/returnsToVendor/manage
Input Payload Details
Table 5-277 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of return to |
| Object | vendor details. |
Table 5-278 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| rtvNo | No | Number (10) | Contains the number that uniquely identifes the return to vendor within the system. If both the rtvNo and extRefNo are provided, it is assumed that an existing externally generated RTV that contains the same rtvNo/ extRefNo combination needs to be updated. If no match is found, then the service will return an error. In order to create a new return to vendor, the rtvNo feld must be blank. When updating a return to vendor that was initiated in Merchandising, both the rtvNo and extRefNo must be provided but only the rtvNo is expected to match since the extRefNo is blank for these types of RTVs. |
| location | Yes | Number (10) | Contains the location number that the items are returned from. If the location is a store, the STORE column gets populated with the location value, and the WH column is defaulted to -1. If the location is a warehouse, the WH column gets populated. |
| externalReferenceNo | No | String (30) | Audit trail reference to external system when an external transaction initiates master record creation in Merchandising. |
| returnAuthorizationNo | No | String (12) | Contains the number that the supplier provides when the decision is made that an order may be returned. This value is not always required and is determined by vendor level data. |
| supplier | Yes | Number (10) | Contains the supplier ID to which the merchandise is being returned. |
| shipToAddress1 | No | String (240) | Contains the frst line of the supplier’s address for returns. |
| shipToAddress2 | No | String (240) | Contains the second line of the supplier’s address for returns. |
| shipToAddress3 | No | String (240) | Contains the third line of the supplier’s address for returns. |
Table 5-278 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| shipToState | No | String (3) | Contains the state of the supplier’s address for returns. |
| shipToCity | No | String (120) | Contains the city name of the supplier’s address for returns. |
| shipToPostalCode | No | String (30) | Contains the zip code of the supplier’s address for returns. |
| shipToCountry | No | String (3) | Contains the country ID of the supplier’s address for returns. |
| createdDate | No | date | Contains the date the vendor return was created. |
| status | No | String (1) | This value is used to determine the current status of the return. If this is ’A’, Merchandising will set the status to 10 (Approved). If this is ‘P’, Merchandising will set the status to 12 (In Progress). If this is ‘S’ or null, it will be set to 15 (Shipped). If this is ‘C’, Merchandising will set the status to 20 (Cancelled). |
| comments | No | String (2000) | Contains any comments associated with the return. |
| details | No | Collection of Object | References a collection of items on the RTV. If no details are provided for the RTV status being updated from Approved to Shipped, then the quantity requested for all the items that are present in the RTV will be shipped. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| consignmentVendorRtvInd | No | String (1) | This indicator determine whether the RTV being interfaced is a Consignment Vendor RTV. |
Table 5-279 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Unique identifer for the item on the |
| RTV. |
Table 5-279 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| unitQuantity | Yes | Number (12,4) | Contains the item quantity that is being returned to the supplier under this RTV number. When updating the quantity in an RTV, the value of the return/requested quantity will be increased if the unit quantity provided is positive whereas a negative unit quantity will increase the quantity cancelled. This quantity cannot be negative for RTVs in shipped status, and should always be greater than zero when creating a new RTV detail record. |
| fromDisposition | No | String (4) | This value is used to determine if the inventory is available or unavailable, based on the code’s INV_STATUS value on the INV_STATUS_CODES table. |
| unitCost | No | Number (20,4) | Contains the cost per unit for the SKU being returned. This feld is stored in the supplier’s currency. |
| reason | No | String (6) | Contains the value identifying the reason for the return. Valid values are: Q - QC Failed, U - Unavailable Inventory. Other values may also be entered via the codes table under code type ‘RTVR’, however, the two codes listed previously may never be deleted. Note that any value added can only be related to RTV from existing inventory (e. g. overstock). |
| weight | No | Number (12,4) | Contains the actual weight shipped for the items on the RTV. This should not be provided for RTVs in the approved status. |
| weightUom | No | String (4) | Unit of Measure for the weight (for example, pounds, kilograms). |
| inventoryIdentiferType | No | String (6) | This inventory identifer type feld is passed during Return to Vendor Integration. Valid values are found under the Inventory Identifer Types (IIDT) code type; for example, Lot (L), Expiry Date (E), Import Document (D). |
| inventoryId | No | String (120) | Holds the inventory identifer provided on inventory transaction messages. It is a free-form text ID feld that will be interfaced and displayed as a text feld. |
Table 5-280 CustomFlexAttribute - Object. See list of elements for detail
Element Name Required Data Type Description name Yes String (30) Holds the attribute name. value No String (250) Holds the numeric or string value of the attribute. valueDate No date Holds the date value of the attribute. Sample Input Message { "collectionSize": 1, "items": [ { "rtvNo": 188295, "location": 1521, "externalReferenceNo": "RETURN01", "returnAuthorizationNo": "5522014", "supplier": 2400, "shipToAddress1": "2243 Pennys Way", "shipToAddress2": null, "shipToAddress3": null, "shipToState": "ORE", "shipToCity": "Woodburn", "shipToPostalCode": "4522", "shipToCountry": "US", "createdDate": "2001-12-31", "status": "A", "comments": "creating RTV via ReST service", "details": [ { "item": "100100068", "unitQuantity": 3, "fromDisposition": "ATS", "unitCost": 9.65, "reason": "O", "weight": 1, "weightUom": "KG", "inventoryIdentifierType": "L", "inventoryId": "5346" } ], "customFlexAttribute": [ { "name": "COMMENT", "value": "CFA Comment creating RTV via ReST service", "valueDate": "2001-12-31" } ], "consignmentVendorRtvInd": "Y" } ] }
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Shipments and Receipts
The following services are included in this functional area:
-
Receiver Unit Adjustment Download Service
- Get Receiver Unit Adjustment
-
Shipment and Receipt Download Service
- Get Shipment Detail
-
Shipment and Receipt Upload Service
-
Create DSD Receipts
-
Create Outbound ASNs
-
Delete Inbound ASNs
-
Manage Inbound ASN
-
Manage Purchase Order and Stock Order Receipts
-
Manage Purchase Order Receipts
-
Manage Stock Order Receipts
-
Update DSD Receipts
-
Receiver Unit Adjustment Download Service
The following services are included in this functional area:
• Get Receiver Unit Adjustment
Get Receiver Unit Adjustment
Endpoint
MerchIntegrations/services/inventory/receiverunitadj
Functional Area
Inventory - Shipments and Receipts
Business Overview
This service publishes receiver unit adjustment data to downstream consuming systems. It publishes incremental receiver-unit-adjustment transactions together with the ASN reference, receiving location, adjusted unit quantity, and from/to disposition movement. Functionally, the upstream receiver-unit-adjustment logic writes to RUA_RIB_INTERFACE when the calling program is REIM or RECUTADJ, and only when the adjusted quantity is non-zero.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: RUA_RIB_INTERFACE
Additional business tables: SHIPMENT
JSON cache table: MERCHAPI_EXT_RCV_UNIT_ADJ
JSON generation view: not applicable; cache rows are populated directly from ICL_RMS_RCV_UNIT_ADJ and SHIPMENT by the delta-processing logic
Functionally, the upstream receiver-unit-adjustment logic only writes to RUA_RIB_INTERFACE when the calling program is REIM or RECUTADJ, and only when the adjusted quantity is nonzero.
The published asnNo is derived as the first available value of SHIPMENT.EXT_REF_NO_IN or SHIPMENT.ASN), so SIM’s external receipt number takes precedence over the shipment ASN when it exists.
This API is delta-only by design.
Initial Seeding and post enablement rebuild/repair
This API has no initial load or rebuild; the refresh step only performs API-disable handling for the cache table.
ICL (Integration Change Log) table: ICL_RMS_RCV_UNIT_ADJ (ICL consumer name = MERCHAPI)
The delta async process reads unprocessed ICL_RMS_RCV_UNIT_ADJ rows for consumer MERCHAPI, inserts one cache row per event, and deletes the processed ICL rows after publication.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_RUA
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_RUA_ADHOC_PROCESS - > MERCHAPI_EXT_RUA_ADHOC_JOB
Webhook configuration api name: inventory/receiverunitadj
Service Type
GET
ReST URL
MerchIntegrations/services/inventory/receiverunitadj
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key (Sequence Number) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-281 PageResultsItemsMerchApiRua - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-281 (Cont.) PageResultsItemsMerchApiRua - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-282 MerchApiRua - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for receiver unit adjustment details. |
| location | No | Number(10,0) | This feld contains the unique identifer for the location for which the receiver unit adjustment is performed. The location will be a store if the location type is S, and a warehouse if the location type is W. |
| locationType | No | String (1) | This feld contains the type of the location for which the receiver unit adjustment is performed. Valid values are S for store and W for warehouse. |
| orderNo | No | Number(12,0) | This feld contains the unique identifer for the order against which a receiver unit adjustment was performed. |
Table 5-282 (Cont.) MerchApiRua - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| asnNo | No | String (30) | This feld contains the advance shipment notifcation number associated with the shipment for which a receiver unit adjustment was performed. |
| item | No | String (25) | This feld contains the unique identifer for the item for which the receiver unit adjustment is being made. |
| containerId | No | String (30) | This feld contains the unique identifer for the carton that contained the item against which the receiver unit adjustment was performed. |
| unitQuantity | No | Number(12,4) | This feld contains the quantity of the receiver unit adjustment. |
| fromDisposition | No | String (4) | This value, along with the to disposition value, is used to determine if the inventory is available or unavailable. |
| toDisposition | No | String (4) | This feld contains the value used to determine if the inventory is available or unavailable based on the value of the INV_STATUS column in the INV_STATUS_CODES table. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the record was frst picked for processing from ICL table (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-283 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"location": 1111,
"locationType": "S",
"orderNo": 545005,
"asnNo": "ASN_11223344_2",
"item": "106400029",
"containerId": "CTN_1_ASN_11223344_2",
"unitQuantity": 3,
"fromDisposition": "ATS",
"toDisposition": "ATS",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
Table Impact: The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | Yes | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_RCV_UNIT_ADJ | Yes | No | Yes | Yes |
| MERCHAPI_EXT_RCV_UNIT_ADJ | No | Yes | No | Yes |
| SYSTEM_OPTIONS | Yes | No | No | No |
Shipment and Receipt Download Service
The following services are included in this functional area:
• Get Shipment Detail
Get Shipment Detail
This section describes the Shipment Detail Service.
Functional Area
Inventory - Shipments and Receipts
Business Overview
This service allows users to retrieve shipment and shipment item details for a given distro (transfer or allocation) or purchase order (PO).
Service Type
Get
ReST URL
Shipment/shipmentDetail?
orderNumber={orderNumber}&distroNumber={distroNumber}&distroType={distroType}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| orderNumber | No | Order Number. If none is specified, then Distro Number and Distro Type are required. |
| distroNumber | No | Distro Number. If none is specified, then Order Number is required. |
| distroType | No | Distro Type. If none is specified, then Order Number is required. |
Output
RestShipmentRecRDO
| Parameter Name | Data Type |
|---|---|
| shipment | BigDecimal |
| bolNo | String |
| asn | String |
| shipDate | Timestamp |
| receiveDate | Timestamp |
| Parameter Name | Data Type |
|---|---|
| estArrDate | Timestamp |
| shipOrigin | String |
| statusCode | String |
| toLoc | BigDecimal |
| toLocType | String |
| fromLoc | BigDecimal |
| fromLocType | String |
| parentShipment | BigDecimal |
| seqNo | BigDecimal |
| item | String |
| refItem | String |
| carton | String |
| invStatus | BigDecimal |
| shipskuStatusCode | String |
| qtyReceived | BigDecimal |
| unitCost | BigDecimal |
| unitRetail | BigDecimal |
| qtyExpected | BigDecimal |
| adjustType | String |
| actualReceivingStore | BigDecimal |
| reconcileUserId | String |
| reconcileDate | Timestamp |
| tamperedInd | String |
| dispositionedInd | String |
JSON Structure
{
"shipment":null,
"bolNo":null,
"asn":null,
"shipDate":null,
"receiveDate":null,
"estArrDate":null,
"shipOrigin":null,
"statusCode":null,
"toLoc":null,
"toLocType":null,
"fromLoc":null,
"fromLocType":null,
"parentShipment":null,
"seqNo":null,
"item":null,
"refItem":null,
"carton":null,
"invStatus":null,
"shipskuStatusCode":null,
"qtyReceived":null,
"unitCost":null,
"unitRetail":null,
"qtyExpected":null,
"adjustType":null,
"actualReceivingStore":null,
"reconcileUserId":null,
"reconcileDate":null,
"tamperedInd":null,
"dispositionedInd":null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_SHIPMENT | Yes | No | No | No |
| V_SHIPSKU | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Shipment and Receipt Upload Service
The following services are included in this functional area:
-
Create DSD Receipts
-
Create Outbound ASNs
-
Delete Inbound ASNs
-
Manage Inbound ASN
-
Manage Purchase Order and Stock Order Receipts
-
Manage Purchase Order Receipts
-
Manage Stock Order Receipts
-
Update DSD Receipts
Create DSD Receipts
Functional Area
Inventory - Shipments and Receipts
Business Overview
Direct store delivery (DSD) is the delivery of merchandise to and/or the performance of services in a store without the benefit of a pre-approved purchase order. When the delivery or service occurs, the store inventory system (for example, SIOCS) informs Merchandising of the receipt, which also generates the purchase order at the same time. The receipt can include both the merchandise item as well as the non-merchandise information associated with the
order. This information works in conjunction with payment details sent through Sales Audit if payment was made a part of the delivery or service at the store.
Service Type
POST
ReST URL
MerchIntegrations/services/inventory/shipmentsAndReceipts/dsd/create
Input Payload Details
Table 5-284 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | References a collection of DSD |
| Object | Receipts. |
Table 5-285 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | Number (10) | This feld contains the unique identifying number for a supplier for the receipt. |
| originCountry | Yes | String (3) | This feld contains the identifer of the country from which the item is being sourced. |
| store | Yes | Number (10) | This feld contains the location where the items were delivered. |
| dept | No | Number (4) | The department in which all the items on the order belong. |
| currencyCode | Yes | String (3) | This feld contains a code identifying the currency the supplier uses for business transactions. |
| paidInd | Yes | String (1) | This feld indicates if the invoice has already been paid. Valid values are Y (invoice has already been paid) or N (invoice should be paid in accounts payable system). |
| externalReferenceNo | No | String (30) | If the invoice indicator is Y (invoice has been created), the external reference number, proof of delivery number, or payment reference number must be provided. |
| proofOfDeliveryNo | No | String (30) | This feld contains the proof of delivery or service number given at the time of receipt at the store. This feld will also be included when the invoice is interfaced through Sales Audit. |
Table 5-285 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| paymentReferenceNo | No | String (16) | This feld contains the reference number attached to the invoice payment, used when the invoice is paid from the POS system and interfaced through Sales Audit. |
| paymentDate | No | date | This feld contains the date when the invoice was paid from the POS system. This feld will be populated when the invoice is interfaced through Sales Audit. |
| invoiceInd | Yes | String (1) | This feld indicates whether an invoice was created for this receipt by the supplier. Valid values are Yes (Y) and No (N). |
| dealsInd | Yes | String (1) | This feld indicates whether deals need to be applied to the DSD Purchase Order or not. Valid values are Yes (Y) and No (N). |
| externalReceiptNo | No | String (17) | This feld holds the external transaction sequence number for the receipt. |
| receiptDate | No | date | This feld contains the date of the receipt. |
| details | No | Collection of Object | References a collection of DSD Receipt detail records. |
| nonMerchDetails | No | Collection of Object | References a collection of DSD Non Merchandise detail records. |
Table 5-286 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This feld contains the item in the receipt. The item must be an approved item that is at transaction level or above. |
| quantityReceived | Yes | Number (12,4) | This feld contains the number of items received for the item/shipment combination. The value must be greater than 0. |
| unitCost | No | Number (20,4) | This feld contains the cost of the item from the supplier/origin country in the supplier’s currency. |
| weight | No | Number (12,4) | This feld contains the weight of the item in the receipt, if it is a catch weight item. |
| weightUom | No | String (4) | This feld contains the unit of measure of the received weight. |
Table 5-286 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inventoryIdentiferType | No | String (6) | This inventory identifer type feld is passed during a DSD receipt message. Valid values are found under the Inventory Identifer Types (IIDT) code type; for example, Lot (L), Expiry Date (E), Import Document (D). |
| inventoryId | No | String (120) | Holds the inventory identifer provided on inventory transaction messages. It is a free-form text ID feld that will be interfaced and displayed as a text feld. |
Table 5-287 NonMerchDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nonMerchCode | Yes | String (6) | This feld contains the non- merchandising code that will be added to an invoice for services or other non-merchandise costs associated with the order. |
| nonMerchAmount | Yes | Number (20) | This feld contains the amount of the non-merchandise cost that was invoiced. This feld will be held in the invoice currency. |
| vatCode | No | String (6) | This feld contains the code identifying the VAT rate that should be applied to the non-merchandise amount entered. |
| servicePerformedInd | Yes | String (1) | Indicates if a service non- merchandise cost has actually been performed. Valid values are ‘Y’ (service has been performed) or ‘N’ (service has not been performed or non-merchandise cost is not a service cost). |
Sample Input Message
{
"items": [
{
"supplier": 2400,
"originCountry": "US",
"store": 1531,
"dept": 1117,
"currencyCode": "USD",
"paidInd": "Y",
"externalReferenceNo": "REF1531",
"proofOfDeliveryNo": null,
"paymentReferenceNo": null,
"paymentDate": "2001-12-31",
"invoiceInd": "Y",
"dealsInd": "Y",
"externalReceiptNo": "RECREF1531",
"receiptDate": "2001-12-31",
"details": [
{
"item": "100750001",
"quantityReceived": 3,
"unitCost": 9.65,
"weight": 79.00,
"weightUom": null,
"inventoryIdentifierType": "L",
"inventoryId": "5346"
}
],
"nonMerchDetails": [
{
"nonMerchCode": "B720",
"nonMerchAmount": 123456,
"vatCode": "S",
"servicePerformedInd": "N"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Outbound ASNs
Functional Area
Inventory - Shipments and Receipts
Business Overview
Merchandising receives advanced shipping notifications (ASNs), also known as a bill of lading (BOL) messages, from a warehouse management system, like Oracle Warehouse Management Cloud, or a store inventory system like Oracle Retail Store Inventory and Operations Cloud Service (SIOCS).
These ASNs are notifications to Merchandising that inventory is moving from one location to another and they contain data that is used by Merchandising to create or modify a shipment record. ASNs are received for:
-
Pre-existing allocations
-
Pre-existing transfers
-
Externally generated transfers created in the store or warehouse (created as transfer type of EG within Merchandising).
An ASN message may contain details related to multiple transfers or allocations, and would enable the shipment record in Merchandising to reflect these multiple movements of the merchandise. The BOL number present on the shipment record is a way to track one or more transfers and allocations through their respective stock order records. Shipments for customer orders, franchise orders, and franchise returns are also managed through this service. If the receiving location is a non-stockholding location, like in the case of a warehouse shipment to a non-stockholding franchise store, or a warehouse shipment direct to a customer (that is processed through a non-stockholding store), then the shipment will be automatically received when processed by Merchandising.
Note
ASNs related to a purchase order from a supplier are classified as an Inbound ASNs. Details for those types of expected shipments are found in the ASN In Subscription service documentation.
Other Notes
-
For customer order fulfillment, SIOCS will send an ASN Out message that does not include a ship-to location. Such messages are ignored by Merchandising.
-
Store to customer fulfillment requests will not have associated transfers in Merchandising. When Oracle Retail Store Inventory and Operations Cloud Service (SIOCS) ships the customer order, then SIOCS will generate an Outbound ASN message with an empty ‘To Location’ or with the Location Type set as Customer (C). Since there are no associated transfers within Merchandising, it will not process these Outbound ASN messages. The reserved inventory will be backed out when Merchandising processes the related SALES transaction.
-
Messages received through this service can create new shipments or update existing shipments. A new shipment record will be created in Merchandising in the ‘Input’ status if the BOL number is not yet associated to any shipment record. If the BOL number is already associated to a shipment record, the shipment record will be updated accordingly.
Service Type
POST
ReST URL
MerchIntegrations/services/inventory/shipmentsAndReceipts/outboundAsn/create
Input Payload Details
Table 5-288 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of ASN details. |
Table 5-289 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| toLocation | No | Number (10) | Contains the location that the shipment will be delivered to. |
| fromLocation | Yes | Number (10) | For transfer and allocation shipments, this feld will hold the location from which the shipment was sourced. |
| cartonQuantity | No | Number (6) | Contains the number of boxes associated with the shipment. |
| asnNo | No | String (30) | Holds the bill of lading number associated with a shipment. This feld will be persisted in the bol_no column of the Shipment table in Merchandising. |
| bolNo | Yes | String (17) | Holds the transaction sequence number on the message from the transfer shipment confrmation process. This feld will be persisted in the ext_ref_no_out column of the Shipment table in Merchandising. |
| shipDate | No | date | This feld contains the date the transfer or PO was shipped. |
| estimatedArrivalDate | No | date | This feld contains the estimated arrival date of a vendor PO shipment. It is updated by EDIUP856. It is used for vendor/lead time analysis. |
| comments | No | String (2000) | Contains any miscellaneous comments about the shipment. |
| carrierCode | No | String (4) | Contains the courier that will deliver the shipment. |
| shipmentDetails | No | Collection of Object | Description is not available. |
Table 5-290 ShipmentDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| distroNo | Yes | Number (12) | Specifes the transfer or allocation number associated with the shipment/item/carton. |
| distroDocumentType | Yes | String (1) | Specifes what the distro_nbr feld corresponds to in Merchandising: V, D, and T specify transfer, A specifes Allocation. |
| customerOrderNo | No | String (48) | This is the customer order number that was generated by OMS and contains multiple fulfllment numbers. |
| fulfllOrderNo | No | String (48) | Based on a customer order - OMS will generate fulfllments to specifc locations based on availability. RMS will generate Transfers based on the fulfllment request. |
| comments | No | String (2000) | Not used by RMS. |
| cartons | Yes | Collection of Object | Description is not available. |
Table 5-291 Cartons - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| carton | Yes | String (30) | Identifes the UCC-128 carton number for shipments originating from the Advance Shipment Notifcation process as carton shipments. This feld will be zero for all shipments that are not at a carton level. |
| weight | No | Number (12,4) | Actual weight shipped for the container. |
| weightUom | No | String (4) | Unit of measurement for weight (e. g. pounds, kilograms) that was shipped. |
| items | Yes | Collection of Object | Description is not available. |
Table 5-292 Cartons.Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Unique identifer for the item. |
| unitQuantity | Yes | Number (12,4) | Contains the number of items expected to be received based on the supplier’s advance shipment notifcation for this item/shipment combination. |
Table 5-292 (Cont.) Cartons.Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromDisposition | No | String (4) | This value is used to determine if the inventory is available or unavailable, based on the code’s INV_STATUS value on the INV_STATUS_CODES table. |
| unitCost | No | Number (20,4) | Contains the unit cost of the item in the shipment. |
| baseCost | No | Number (20,4) | This value will be used to get the base cost (BC) from RFM for a transfer, which will fow into RMS. |
| weight | No | Number (12,4) | Actual weight shipped. |
| weightUom | No | String (4) | Unit of measurement for weight (for example, pounds, kilograms) shipped. |
| inventoryIdentiferType | No | String (6) | This inventory identifer type feld is passed during shipment of transfer/ allocations. Valid values are found under the Inventory Identifer Types (IIDT) code type; for example, Lot (L), Expiry Date (E), Import Document (D). |
| inventoryId | No | String (120) | Holds the inventory identifer provided on shipment transaction messages. It is a free-form text ID feld that will be interfaced and displayed as a text feld. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"toLocation": 1221,
"fromLocation": 1151,
"cartonQuantity": 5,
"asnNo": "ASN-100100990",
"bolNo": "BOL-100100990",
"shipDate": "2001-12-31",
"estimatedArrivalDate": "2001-12-31",
"comments": "Shipment for transfer 100100990",
"carrierCode": "FDX",
"shipmentDetails": [
{
"distroNo": 100100990,
"distroDocumentType": "T",
"customerOrderNo": null,
"fulfillOrderNo": null,
"comments": "Shipment for transfer 100100990",
"cartons": [
{
"carton": "CRTN10001",
"weight": 3,
"weightUom": "KG",
"items": [
{
"item": "100100991",
"unitQuantity": 10,
"fromDisposition": "ATS",
"unitCost": 9.65,
"baseCost": 10.65,
"weight": 3,
"weightUom": "KG",
"inventoryIdentifierType": "L",
"inventoryId": "5346"
}
]
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Inbound ASNs
Functional Area
Inventory - Shipments and Receipts
Business Overview
This service is used to delete shipments from Merchandising that have not been received. Only ASN shipments (Ship Origin = 0) and ASN UCC-128 shipments (Ship Origin = 6) can be deleted using this service.
Service Type
DELETE
ReST URL
MerchIntegrations/services/inventory/shipmentsAndReceipts/inboundAsn/delete
Input Payload Details
Table 5-293 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of ASN details |
| Object | for deletion. |
Table 5-294 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| asnNo | Yes | String (30) | Not used in Merchandising. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"asnNo": "ASN-464690028"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Manage Inbound ASN
Functional Area
Inventory - Shipments and Receipts
Business Overview
This service creates a new shipment record or updates an existing shipment for ASNs that have not been received once the supplier or consolidator sends an advanced shipping notice (ASN) to Merchandising. Merchandising subscribes to this ASN information and stores the information in the related tables depending upon the validity of the records enclosed within the ASN message. If an existing ASN number and carton combination already exists, the shipment details (shipment date, carrier code, unit quantity, etc.) will be updated with the values in the request, otherwise a new shipment record will be created.
The ASN message will consist of a header record, a series of order records, carton records, and item records. For each message, the header, order and item records are required while the carton portion of the record is optional. However, if a carton record is present or the ASN type is ‘C’, then the carton details must be present. The header record will contain information about the shipment, such as it’s destination location and estimated arrival date. The order records will identify the purchase orders that are associated with the shipment. If the shipment is packed in cartons, then the carton records will identify the items present in the cartons. The item records will contain details on the items that are present on the shipments, along with the quantity that will be shipped.
The location that is contained on the ASN will represent the expected receiving location for the order. If the location is set up as a non-stockholding store in Merchandising, then the shipment will also be automatically received when the ASN is processed. The two types of nonstockholding stores/orders for which orders are supported in this integration are Franchise stores and Customer orders.
Once the ship quantity is matched, an invoice is generated for Invoice Matching.
Note
This message can also be used by stores and warehouses for inbound transfer and allocation shipments. However, for Merchandising, all those shipments are processed as Outbound ASNs.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/shipmentsAndReceipts/inboundAsn/manage
Input Payload Details
Table 5-295 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of ASN details. |
Table 5-296 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| toLocation | No | Number (10) | Contains the location that the shipment will be delivered to. For purchase orders this will always be either a store or a physical warehouse. |
| asnNo | Yes | String (30) | Not used in Merchandising. |
| shipDate | Yes | date | This feld contains the date the transfer or PO was shipped. |
| estimatedArrivalDate | No | date | This feld contains the estimated arrival date of a vendor PO shipment. It is updated by EDIUP856. It is used for vendor/lead time analysis. |
| comments | No | String (2000) | Contains any comments about the shipment. |
| carrierCode | No | String (4) | This column contains a code that indicates the carrier that is involved in the shipment. |
| asnType | Yes | String (1) | This feld is used to determine the ship origin. If asn_type is ‘C’, ship_origin will be set to ‘6’ (ASN UCC-128) upon insert to the SHIPMENT table. Otherwise, SHIP_ORIGIN is defaulted to ‘0’ (ASN Shipment). |
| supplier | Yes | Number (10) | Contains the supplier who will provide the merchandise specifed in the order. This element is used to validate the order number(s) in ASNInPO (ASNInPO. po_nbr). The order number must be in the table ORDHEAD, in either the ORDER_NO column or VENDOR_ORDER_NO column. |
Table 5-296 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| shipPayMethod | No | String (2) | This column indicates the payment terms for freight charges associated with the order. Valid values are found in code type SHMT. Examples are Collect (CC), Collected Freight Credited Back to Cust (CF) and Defned by Buyer and Seller (DF). |
| asnDetails | Yes | Collection of Object | References a collection of ASN details. |
Table 5-297 AsnDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | Identifes the order number which relates to the goods delivered in the shipment. Validated against the ORDHEAD table, and also the SHIPMENT table if the message applies to an existing shipment. |
| notAfterDate | No | date | This feld contains the last date that delivery of the order will be accepted. |
| containers | No | Collection of Object | References a collection of shipment cartons. |
| items | No | Collection of Object | References a collection of items and item details. |
Table 5-298 Containers - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| containerId | Yes | String (30) | Holds the UCC-128 carton number. |
| fnalLocation | Yes | Number (10) | This will be the fnal destination of the carton. For a cross-dock order this will be the allocation location, otherwise it will be the direct to order location. |
| items | Yes | Collection of Object | References a collection of items and item details. |
| trackingNbr | No | String (120) | This is a unique tracking number that is used to track containers through a carriers system. Not used in Merchandising. |
Table 5-299 Containers.Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | Unique identifer for the item. Either vpn, item_id, or ref_item must be specifed in the message. |
| unitQuantity | Yes | Number (12,4) | This column contains the quantity of the item that is expected to be received. |
| vpn | No | String (30) | This column contains the vendor product number used to fnd the item number. Either VPN, item number, or reference item must be specifed in the message. |
| referenceItem | No | String (25) | The column contains a bar code or reference item. Either VPN, item number, or reference item must be specifed in the message. |
| uins | No | Collection of Object | Collection of Universal Identifcation Numbers. Not used in Merchandising. |
Table 5-300 Uins - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| uin | Yes | String (128) | Universal Identifcation Number |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"toLocation": 2,
"asnNo": "ASN-464690028",
"shipDate": "2001-12-31",
"estimatedArrivalDate": "2001-12-31",
"comments": "commentDesc",
"carrierCode": "FDX",
"asnType": "C",
"supplier": 2400,
"shipPayMethod": "PO",
"asnDetails": [
{
"orderNo": 464690028,
"notAfterDate": "2001-12-31",
"containers": [
{
"containerId": "00152100-1",
"finalLocation": 1521,
"items": [
{
"item": "103900095",
"unitQuantity": 3,
"vpn": "vpn-00152100-1-103900095",
"referenceItem": null,
"uins": [
{
"uin": "103-64323123-12"
}
]
}
],
"trackingNbr": "1234567A89"
}
],
"items": [
{
"item": "103900095",
"unitQuantity": 3,
"vpn": "vpn-00152100-1-103900095",
"referenceItem": null,
"uins": [
{
"uin": "103-64323123-12"
}
]
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Manage Purchase Order and Stock Order Receipts
Functional Area
Inventory - Shipments and Receipts
Business Overview
This service processes receipts that Merchandising receives against purchase orders, transfers, and allocations received at a store, warehouse or finisher. Purchase orders can be received at the item level only using this message, while transfers and allocations, collectively referred to as stock orders, may be received at the bill of lading (BOL) level, where the entire shipment is received without including details, carton level, or item level.
When a transfer, PO or allocation is received at a location, Merchandising will update the appropriate tables, including the shipment, the transfer, allocation, purchase order, stock on hand, as well as other inventory buckets (for example, in-transit). A record of the receipt is also made in the Stock Ledger.
Receiving Exceptions
Merchandising has the ability to automatically resolve several common exceptions that can occur during the receiving process. The following exceptions can be automatically processed when a stock order is received through this service:
Receipt Against the Wrong BOL
In this case, the receiving location should send a carton status of Dummy (D) or Overage (O), indicating that a dummy BOL number was used. But, even if that status is not used, this exception processing can still take place. Merchandising will attempt to match the contents of the receipt to a valid BOL as follows:
If the carton belongs to a valid BOL at the given location, Merchandising receives the carton against the intended BOL at the given location.
If the carton belongs to a valid BOL at a related walk-through store, Merchandising receives the carton against the intended BOL at the intended location.
If the carton belongs to a valid BOL at an unrelated location, Merchandising uses the wrong store receiving process.
Walk-through Store Receiving
If you have configured two or more stores as ‘walk-through’ locations, via attribution at on the store table in Merchandising, then if the BOL was intended to be received at the walk-through location instead of the location on the message, Merchandising will automatically adjust the receipt and process against the correct location.
Misdirected Container
Misdirected containers, or wrong store receiving, is when one or more containers on a receipt is identified as having been originally shipped to a different location (Location A) than the location that sent the receipt message (Location B). Whether or not misdirected container receiving is supported in Merchandising is controlled by a system option called Wrong Store Receipt Exception Handling. If this option is unchecked (N), then the receipt at the Location B will raise an error in this service. If set to checked (Y), then the shipment at Location A will be backed out, including in-transit updates, WAC adjustments, and stock ledger postings, and reapplied to Location B, prior to processing the receipt into Location B.
In order correctly manage this processing, Merchandising must receive the original carton number on the receipt. In some cases, such as when integrating with Store Inventory and Operations Cloud Service (SIOCS), the carton ID is reassigned by the receiving location. In that case, the reference carton field in the Receipt Detail node of the message must be populated to trigger this process. Otherwise, it will be treated as an overage at the actual receiving location and the original location will not have its quantities reversed until the transfer is reconciled.
Note: Wrong location receiving is supported only for item-level transfer/allocation receipts.
Unwanted Cartons
An unwanted carton is a situation where Merchandising never received notification of the original shipment, only the receipt. In this case, if receiving is done at the item level, Merchandising will process both the shipment and receipt together. If item level details are not included for the carton, an error will be raised, as Merchandising will not be able to determine the contents of the carton, having never received the initial shipment details.
Zero Receipts
This type of exception occurs when a location indicates to Merchandising that nothing was received for the item at the location by sending a receipt of zero and indicating that the carton is closed. Merchandising will reconcile the original ship to location based on system option settings to determine where to write off the lost items.
If a zero receipt occurs for an item that is part of a misdirected container, then some slightly different processing will occur. If the zero receipt is sent after a misdirected container reconciliation, then no further updates will be made, as the line would have been previously reconciled. If a zero receipt occurs before misdirected container processing, then the misdirected container processing at the actual receiving location will be treated as an overage, as the original location would have already been reconciled.
Other Key Notes
Externally generated warehouse-to-warehouse transfers are not supported in Merchandising, where the transfer is created in Merchandising at the physical warehouse level for both locations. For example, a warehouse-to-warehouse transfer created in WMS. This includes the receipt of such a transfer using this service.
Wrong store receiving is not supported for franchise transactions.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/shipmentsAndReceipts/receipts/manage
Input Payload Details
Manage - Object. See list of elements for detail
Items - Object. See list of elements for detail
Receipts - Object. See list of elements for detail
ReceiptDetails - Object. See list of elements for detail
Cartons - Object. See list of elements for detail
ReceiptOverages - Object. See list of elements for detail
Details - Object. See list of elements for detail
Response Code: 200 (Success)
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.
Manage Purchase Order Receipts
Functional Area
Inventory - Shipments and Receipts
Business Overview
This service is used to process receipts within Merchandising against purchase orders. The receipt gets processed against the matching shipment if it already exists within Merchandising whereas a new shipment record and receipt are created if it does not find a matching shipment. Purchase orders can be received only at an item level using this service.
When a PO is received at a location, Merchandising will update the appropriate tables, including the shipment and purchase order, stock on hand, as well as other inventory buckets (e.g., in-transit). A record of the receipt is also made in the transaction level stock ledger.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/shipmentsAndReceipts/purchaseOrder/
receipts/manage
Input Payload Details
Table 5-301 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of receipt |
| Object | records. |
Table 5-302 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| appointmentNo | No | Number (9) | Unique identifer for receiving a group of items. |
| receipts | Yes | Collection of | References a collection of purchase |
| Object | order receipts. |
Table 5-302 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| receiptOverages | No | Collection of Object | Contains the Receipt Overage Information. This optional overage node is ignored by MFCS. This overage group is used by Retail Fiscal Management system to differentiate whether an item or item quantity was not received due to specifc reason codes such as damaged for example. |
Table 5-303 Receipts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| location | Yes | Number (10) | Indicates the location that has processed the receipt. For stores, this will be the store ID. For warehouses, this will be the physical warehouse ID. |
| orderNo | No | Number (12) | Specifed the unique identifer of the purchase order, allocation or transfer. |
| referenceDocumentNo | No | Number (10) | Contains a reference number for a document associated to the shipment (e.g., Fiscal Document ID for Brazilian based transactions). |
| asnNo | No | String (30) | Used to relate the receipt message to the previous ASN message. This feld is required for transfers and allocations. |
| receiptDetails | No | Collection of Object | References a collection of receipt details. |
Table 5-304 ReceiptDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Specifes the item on the allocation, purchase order, or transfer that has been received. |
| receivedQuantity | Yes | Number (12,4) | Contains the quantity received for the allocation, purchase order, or transfer in the standard unit of measure. |
| receiptTransactionType | Yes | String (1) | Specifes whether the receipt detail line item is for a ‘R’eceipt, ‘T’ransshipment, or ‘A’djustment. For purchase order receiving, Transshipments are not allowed. For stock order (ie. Allocation and Transfer) receiving, Transshipments are handled the same way as ‘R’eceipt type. |
Table 5-304 (Cont.) ReceiptDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| receiptDate | No | date | Identifes the date on which the transaction was received. |
| externalReferenceNo | Yes | String (17) | An externally generated identifer corresponding to the receipt of the item at the location. |
| distroLocation | No | Number (10) | Only used for purchase order receipt, when the purchase order has an allocation attached to it. This element specifes the location to which the allocation is being sent. |
| containerId | No | String (30) | Identifes the carton number for shipments originating from the Advance Shipment Notifcation process as carton shipments. |
| distroNo | No | Number (12) | Only used for purchase order receipts, when the purchase order has an allocation attached to it. This element contains the allocation id. |
| distroDocumentType | No | String (1) | Only used for purchase orders, when the purchase order has an allocation attached to it. When populated, this value should always be A to specify an allocation. |
| toDisposition | No | String (4) | This value is used to determine if the inventory is available or unavailable, based on the code’s INV_STATUS value on the INV_STATUS_CODES table. |
| fromDisposition | No | String (4) | This value is used to determine inventory availability. Valid values are in the INV_STATUS_CODES table. The from disposition is used when the to disposition is not provided. |
| unitCost | No | Number (20,4) | Used for purchase order receipts when confgured for Global Tax (GTS) where the location’s country is localized. Otherwise, it is ignored except in scenarios where there is an unexpected item on the receipt, in which case it can be optionally included to indicate the receipt cost of the item. If not included for unexpected receipts, the default supplier cost will be used. Cost is converted to the order’s currency before insert/update. |
| shippedQuantity | No | Number (12,4) | Only used for doc_type of ‘P’. Updates the number of items expected to be received, originally set by the ASN process. |
Table 5-304 (Cont.) ReceiptDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| weight | No | Number (12,4) | Contains the actual weight of the item received for the shipment. This will be included for some catch weight items. |
| weightUom | No | String (4) | Contains the unit of measure of the received weight (e.g., pounds, kilograms) where UOM class is of type MASS. Weight and Weight UOM must both be populated, or both must be NULL. |
| grossCost | No | Number (20,4) | Contains the Unit cost and Expenses incurred on an item in a particular transaction. |
| itemLineNo | No | Number (10) | This feld indicates the item line number from customer orders. |
| inventoryIdentiferType | No | String (6) | This inventory identifer type feld is passed during receipt consume at item level. Valid values are found under the Inventory Identifer Types (IIDT) code type; for example, Lot (L), Expiry Date (E), Import Document (D). |
| inventoryId | No | String (120) | Holds the inventory identifer provided on inventory transaction messages. It is a free-form text ID feld that will be interfaced and displayed as a text feld. |
Table 5-305 ReceiptOverages - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | No | String (12) | Specifes the unique identifer of the purchase order. |
| details | No | Collection of Object | References a collection of Overage Receipt Detail Information |
Table 5-306 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | Unique identifer for the item. |
| overageQuantity | No | Number (12,4) | Contains the quantity of the item received at the location as overage, damaged etc. |
| reasonCode | No | Number (4) | Contains the rejection reason code or overage reason code. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"appointmentNo": 1,
"receipts": [
{
"location": 1211,
"orderNo": 545005,
"referenceDocumentNo": 531121,
"asnNo": "PO_54005_2",
"receiptDetails": [
{
"item": "106400029",
"receivedQuantity": 3,
"receiptTransactionType": "R",
"receiptDate": "2001-12-31",
"externalReferenceNo": "Receipt_531121",
"distroLocation": null,
"containerId": null,
"distroNo": 100000055001,
"distroDocumentType": null,
"toDisposition": "ATS",
"fromDisposition": "ATS",
"unitCost": 10,
"shippedQuantity": 5,
"weight": 5,
"weightUom": "KG",
"grossCost": 10.5,
"itemLineNo": null,
"inventoryIdentifierType": "L",
"inventoryId": "5346"
}
]
}
],
"receiptOverages": [
{
"orderNo": "545005",
"details": [
{
"item": "106400029",
"overageQuantity": 24,
"reasonCode": 3
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Manage Stock Order Receipts
Functional Area
Inventory - Shipments and Receipts
Business Overview
This service processes receipts that Merchandising receives against transfers, and allocations received at a store, warehouse or finisher. Transfers and allocations, collectively referred to as stock orders, may be received at the bill of lading (BOL) level, where the entire shipment is received without including details, carton level, or item level.
When a transfer or allocation is received at a location, Merchandising will update the appropriate tables, including the shipment, the transfer or allocation, stock on hand, as well as other inventory buckets (e.g., in-transit). A record of the receipt is also made in the Stock Ledger.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/shipmentsAndReceipts/stockOrder/receipts/
manage
Input Payload Details
Table 5-307 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of receipt |
| Object | records. |
Table 5-308 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| appointmentNo | No | Number (9) | Unique identifer for receiving a group of items. |
| receipts | Yes | Collection of | References a collection of transfer |
| Object | receipts. |
Table 5-309 Receipts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| location | Yes | Number (10) | Indicates the location that has processed the receipt. For stores, this will be the store ID. For warehouses, this will be the physical warehouse ID. |
| distroNo | No | Number (12) | Specifed the unique identifer of the purchase order, allocation or transfer. |
| documentType | Yes | String (1) | Specifed whether the receipt is for an allocation ‘A’, purchase order ‘P’, or transfer ‘T’. Types ‘D’ and ‘V’ are also valid document types that are treated the same as transfers. |
| asnNo | No | String (30) | Used to relate the receipt message to the previous ASN message. This feld is required for transfers and allocations. |
| receiptType | No | String (2) | This feld is used in receiving transfers or allocations to determine if the receipt is at the BOL level (BL) or SKU level (SK). If not provided, the value will be defaulted to SK. It is not used for a PO receipt.This feld is used in receiving transfers or allocations to determine if the receipt is at the BOL level (BL) or SKU level (SK). If not provided, the value will be defaulted to SK. It is not used for a PO receipt. |
| fromLocation | No | Number (10) | Contains the source location of the shipment. |
| fromLocationType | No | String (1) | Contains the from location type of the shipment. Valid values are W - Warehouse, E - External Finisher and S - Store. |
Table 5-309 (Cont.) Receipts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | No | String (1) | Indicates the status of the ASN received. This feld is used only for stock order receiving and a status of C indicates that the entire ASN is will be set to closed. |
| receiptDetails | No | Collection of Object | References a collection of receipt details. |
| cartons | No | Collection of Object | References a collection of container details. |
Table 5-310 ReceiptDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Specifes the item on the allocation, purchase order, or transfer that has been received. |
| receivedQuantity | Yes | Number (12,4) | Contains the quantity received for the allocation, purchase order, or transfer in the standard unit of measure. |
| receiptTransactionType | Yes | String (1) | Specifes whether the receipt detail line item is for a ‘R’eceipt, ‘T’ransshipment, or ‘A’djustment. For purchase order receiving, Transshipments are not allowed. For stock order (ie. Allocation and Transfer) receiving, Transshipments are handled the same way as ‘R’eceipt type. |
| receiptDate | No | date | Identifes the date on which the transaction was received. |
| externalReferenceNo | Yes | String (17) | An externally generated identifer corresponding to the receipt of the item at the location. |
| containerId | No | String (30) | Identifes the carton number for shipments originating from the Advance Shipment Notifcation process as carton shipments. |
| refContainerId | No | String (30) | Identifes the original carton number the item was shipped under, if it was being received at the wrong destination. This is required by Merchandising to process the updates correctly, as SIOCS reassigns the container ID at the receiving location. |
| toDisposition | No | String (4) | This value is used to determine if the inventory is available or unavailable, based on the code’s INV_STATUS value on the INV_STATUS_CODES table. |
Table 5-310 (Cont.) ReceiptDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromDisposition | No | String (4) | This value is used to determine inventory availability. Valid values are in the INV_STATUS_CODES table. The from disposition is used when the to disposition is not provided. |
| weight | No | Number (12,4) | Contains the actual weight of the item received for the shipment. This will be included for some catch weight items. |
| weightUom | No | String (4) | Contains the unit of measure of the received weight (e.g., pounds, kilograms) where UOM class is of type MASS. Weight and Weight UOM must both be populated, or both must be NULL. |
| dummyCartonInd | No | String (1) | Indicates if this carton is a dummy carton. This feld is only used for transfer receipts. |
| tamperedCartonInd | No | String (1) | Indicates if the carton was tampered. This feld is only used for transfer receipts. |
| inventoryIdentiferType | No | String (6) | This inventory identifer type feld is passed during receipt consume at item level. Valid values are found under the Inventory Identifer Types (IIDT) code type; for example, Lot (L), Expiry Date (E), Import Document (D). |
| inventoryId | No | String (120) | Holds the inventory identifer provided on inventory transaction messages. It is a free-form text ID feld that will be interfaced and displayed as a text feld. |
Table 5-311 Cartons - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| cartonStatus | No | String (1) | Denotes the status of the carton received. It can be Actual (A), Dummy (D), Overage (O), or Closed (C). This feld is used only for stock order receiving. A status of C indicates that the entire container is missing and the missing stock will be reconciled in RMS. |
| containerId | No | String (30) | Contains the carton ID for the shipment. |
Table 5-311 (Cont.) Cartons - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| receiptTransactionType | Yes | String (1) | Specifes whether the receipt detail line item is for a ‘R’eceipt, ‘T’ransshipment, or ‘A’djustment. For purchase order receiving, Transshipments are not allowed. For stock order (ie. Allocation and Transfer) receiving, Transshipments are handled the same way as ‘R’eceipt type. |
| receiptDate | No | date | This feld contains the date on which the carton is received. |
| externalReferenceNo | No | String (17) | This feld holds the externally generated number when the shipment is received at the location. |
| toDisposition | No | String (4) | This value is used to determine if the inventory is available or unavailable, based on the code’s INV_STATUS value on the INV_STATUS_CODES table. |
| weight | No | Number (12,4) | Contains the actual weight of the item received for the shipment. This will be included for some catch weight items. |
| weightUom | No | String (4) | Contains the unit of measure of the received weight (e.g., pounds, kilograms) where UOM class is of type MASS. Weight and Weight UOM must both be populated, or both must be NULL. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"appointmentNo": 2,
"receipts": [
{
"location": 1111,
"distroNo": 100000055001,
"documentType": "T",
"asnNo": "ASN_11223344_2",
"receiptType": "BL",
"fromLocation": 2,
"fromLocationType": "W",
"status": null,
"receiptDetails": [
{
"item": "104100022",
"receivedQuantity": 3,
"receiptTransactionType": "R",
"receiptDate": "2001-12-31",
"externalReferenceNo": "ERN_10091",
"containerId": "CTN_1_ASN_11223344_2",
"refContainerId": null,
"toDisposition": "ATS",
"fromDisposition": "ATS",
"weight": 3,
"weightUom": "KG",
"dummyCartonInd": "Y",
"tamperedCartonInd": "Y",
"inventoryIdentifierType": "L",
"inventoryId": "5346"
}
],
"cartons": [
{
"cartonStatus": "A",
"containerId": "CTN_1_ASN_11223344_2",
"receiptTransactionType": "R",
"receiptDate": "2001-12-31",
"externalReferenceNo": "ERN_10091",
"toDisposition": "ATS",
"weight": 3,
"weightUom": "KG"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Get Stock Order Shipments Created in Merchandising
Functional Area
Inventory - Shipments and Receipts
Business Overview
This service publishes stock-order shipment data to downstream consuming systems. It publishes shipment transactions together with shipment lines, physical from and to fulfillment locations, customer-order and fulfillment-order references, and the published base cost. Functionally, the payload only includes shipment lines whose SHIPSKU.DISTRO_TYPE is A or T, derives fromLocation and toLocation as physical fulfillment locations, uses ORDCUST for customer-order and fulfillment-order references, and uses V_ITEM_SUPP_COUNTRY_LOC.BASE_COST for baseCost.
This service can be used to publish details of stock order (transfer or allocation) shipments that were created within the Merchandising solution, including two-legged transfers involving Finisher locations. If one or more filters of the available filters, (From Location, From Location Type, To Location, To Location Type, and/or Bill of Lading (BOL) Number), are present as input parameters, the stock order shipments published will be those matching the provided filter values.
In some retail implementations, the management of stores or warehouses are done by third party systems that are not designed to efficiently handle shipments related to vital processes such as transfers and allocations on a regular basis. For these store or warehouse locations, subscribing to this service will allow these locations to be updated with the latest inventory movement information.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: SHIPMENT, SHIPSKU
Additional business tables: ORDCUST, V_ITEM_SUPP_COUNTRY_LOC, STORE, WH, PARTNER, TSFHEAD, ALLOC_HEADER
JSON cache table: MERCHAPI_EXT_SHIPMENT
JSON generation view: not applicable; cache rows are populated directly by package logic
The JSON payload is built from SHIPMENT, SHIPSKU, ORDCUST, V_ITEM_SUPP_COUNTRY_LOC, and derived location mapping from STORE, WH, PARTNER, TSFHEAD, and ALLOC_HEADER.
The view only publishes shipment lines whose SHIPSKU.DISTRO_TYPE in (‘A’,‘T’), derives fromLocation and toLocation as physical fulfillment locations, uses ORDCUST for customerorder and fulfillment-order references, and uses
V_ITEM_SUPP_COUNTRY_LOC.BASE_COST for the published baseCost.
This API is effectively delta-only.
Initial Seeding and post enablement rebuild/repair
This API has no initial load or rebuild; the refresh step only performs API-disable handling for the cache table.
ICL (Integration Change Log) table: ICL_RMS_SHIPMENT (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on SHIPMENT and SHIPSKU.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_SHIPMENT
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_SHIPMENT_ADHOC_PROCESS → MERCHAPI_EXT_SHIPMENT_ADHOC_JOB
Webhook configuration api name: inventory/shipmentsAndReceipts/stockOrder/shipment
Special handling
Additional GET query parameters: fromLoc, toLoc, fromLocType, toLocType, bolNo.
Service Type
GET
ReST URL
MerchIntegrations/services/inventory/shipmentsAndReceipts/stockOrder/shipment
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| fromLoc | No | Number | From Location |
| toLoc | No | Number | To Location |
| fromLocType | No | String | From Location Type |
| toLocType | No | String | To Location Type |
| bolNo | No | String | Bill of Lading (BOL) |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Response Code: 200 (Success)
Table 5-312 PageResultsItemsMerchApiShipment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-313 MerchApiShipment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for Shipment details. |
| shipmentNo | No | Number(12,0) | This feld specifes a number that uniquely identifes the shipment within the system. |
| toLocation | No | Number(10,0) | This feld specifes the destination location of the shipment. |
Table 5-313 (Cont.) MerchApiShipment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| toLocationType | No | String (1) | This feld specifes the location type of the destination location of the shipment. |
| fromLocation | No | Number(10,0) | This feld specifes the source location of the shipment. |
| fromLocationType | No | String (1) | This feld specifes the location type of the source location of the shipment. |
| bolNo | No | String (30) | This feld specifes the Bill of Lading linked with the shipment. |
| shipDate | No | date | This feld specifes the date on which the stock order was shipped. |
| cartonQuantity | No | Number(6,0) | This feld specifes the number of cartons associated with the shipment. |
| carrierCode | No | String (250) | This feld specifes the carrier associated with the shipment. |
| comments | No | String (2000) | This feld specifes any comments associated with the shipment. |
| createDateTime | No | dateTime | This column holds the record creation date. |
| updateDateTime | No | dateTime | This column holds the date when the record was last updated. |
| details | No | Collection of Object | This List holds attributes for details of shipment record. |
| cacheTimestamp | No | dateTime | This feld specifes date and time when the shipment record was last maintained. |
| cacheCreateTimestam p | No | dateTime | This feld specifes date and time when the record was frst created for web service publication. |
Table 5-314 ShipmentDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| distroNo | No | Number(12,0) | This feld specifes the transfer/allocation number associated with the shipment. |
| distroDocumentType | No | String (1) | This feld specifes the type of document associated with the shipment. |
| customerOrderNo | No | String (48) | This feld specifes the linked customer order number generated by Order Management System, if applicable. This feld will be NULL until Merchandising UI allows shipment of customer order transfers. |
| fulfllmentOrderNo | No | String (48) | This feld specifes the fulfllment order number linked with the customer order number. This feld will be NULL until Merchandising UI allows shipment of customer order transfers. |
| cartons | No | Collection of Object | This List holds attributes for details of cartons linked to the shipment. |
Table 5-315 ShipmentDetailsCarton - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| carton | No | String (30) | This feld specifes carton number associated with the shipment. |
| items | No | Collection of Object | This List holds attributes for items present in the specifc carton. |
Table 5-316 ShipmentDetailsCartonItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | This feld specifes the unique alphanumeric value that identifes the item. |
| unitQuantity | No | Number(12,4) | This feld specifes the number of items expected to be received for the item/ shipment combination. |
| unitCost | No | Number(20,4) | This feld specifes the unit cost associated with the item excluding any landed cost components. |
| baseCost | No | Number(20,4) | This feld specifes the base cost (BC) from RFMCS. |
| weight | No | Number(12,4) | This feld specifes the actual weight of the item. |
| weightUom | No | String (4) | This feld specifes the unit of measure associated with the weight. |
| createDateTime | No | dateTime | This column holds the record creation date. |
| updateDateTime | No | dateTime | This column holds the date when the record was last updated. |
Table 5-317 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"shipmentNo": 1,
"toLocation": 6000,
"toLocationType": "S",
"fromLocation": 10001,
"fromLocationType": null,
"bolNo": null,
"shipDate": "2001-12-31",
"cartonQuantity": 5,
"carrierCode": "FDX",
"comments": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"details": [
{
"distroNo": 1,
"distroDocumentType": "T",
"customerOrderNo": null,
"fulfillmentOrderNo": null,
"cartons": [
{
"carton": null,
"items": [
{
"item": null,
"unitQuantity": 1.0,
"unitCost": 1.0,
"baseCost": 1.0,
"weight": 1.0,
"weightUom": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
]
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | Yes | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_SHIPMENT | Yes | Yes | Yes | Yes |
| MERCHAPI_EXT_SHIPMENT | Yes | Yes | No | Yes |
| SHIPMENT | Yes | No | No | No |
| SHIPSKU | Yes | No | No | No |
| STORE | Yes | No | No | No |
| WH | Yes | No | No | No |
| PARTNER | Yes | No | No | No |
| V_ITEM_SUPP_COUNTRY_LOC | Yes | No | No | No |
| TSFHEAD | Yes | No | No | No |
| ALLOC_HEADER | Yes | No | No | No |
| ORDCUST | Yes | No | No | No |
| V_MERCHAPI_EXT_SHIPMENT_JSON | Yes | No | No | No |
Update DSD Receipts
Functional Area
Inventory - Shipments and Receipts
Business Overview
This service allows to modify an existing direct store delivery (DSD) receipt within Merchandising. For more information about the DSD receipts, see the Create DSD Receipts service.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/shipmentsAndReceipts/dsd/update
Input Payload Details
Table 5-318 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | References a collection of DSD |
| Object | Receipts. |
Table 5-319 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | Number (10) | This feld contains the unique identifying number for a supplier for the receipt. |
| store | Yes | Number (10) | This feld contains the location where the items were delivered. |
| externalReceiptNo | No | String (17) | This feld holds the external transaction sequence number for the receipt. |
| receiptDate | No | date | This feld contains the date of the receipt. |
| details | No | Collection of Object | References a collection of DSD Receipt detail records. |
Table 5-320 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This feld contains the item in the receipt. The item must be an approved item that is at transaction level or above. |
| quantityReceived | Yes | Number (12,4) | This feld contains the number of items received for the item/shipment combination. The value must be greater than 0. |
| unitCost | No | Number (20,4) | This feld contains the cost of the item from the supplier/origin country in the supplier’s currency. |
| weight | No | Number (12,4) | This feld contains the weight of the item in the receipt, if it is a catch weight item. |
| weightUom | No | String (4) | This feld contains the unit of measure of the received weight. |
| inventoryIdentiferType | No | String (6) | This inventory identifer type feld is passed during DSD receipt message. Valid values are found under the Inventory Identifer Types (IIDT) code type; for example, Lot (L), Expiry Date (E), Import Document (D). |
| inventoryId | No | String (120) | Holds the inventory identifer provided on inventory transaction messages. It is a free-form text ID feld that will be interfaced and displayed as a text feld. |
Sample Input Message
{
"items": [
{
"supplier": 2400,
"store": 1531,
"externalReceiptNo": "RECREF1531",
"receiptDate": "2001-12-31",
"details": [
{
"item": "100750001",
"quantityReceived": 3,
"unitCost": 9.65,
"weight": 3,
"weightUom": null,
"inventoryIdentifierType": "L",
"inventoryId": "5346"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Stock Counts
The following services are included in this functional area:
-
Stock Count Download Service
- Get Stock Count Detail
-
Stock Count Upload Service
-
Create Stock Count Schedules
-
Delete Stock Count Schedule Locations
-
Delete Stock Count Schedules
-
Update Stock Count Schedules
Stock Count Download Service
The following services are included in this functional area:
- Get Stock Count Detail
Get Stock Count Detail
This section describes the Stock Count Detail service.
Business Overview
Stock Count Detail service allows user to retrieve open stock count details for a given item and/or store.
Service Type
Get
ReST URL
StockCount/stockCountDetail?
cycleCount={cycleCount}&locationType={locationType}&location={location}&item={
item}&stocktakeDate={stocktakeDate}&pageSize={pageSize}&pageNumber={pageNumber
}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Item | No | Item |
| Location | No | Location |
| Location Type | No | Location Type |
| Cycle Count | No | Cycle Count |
| Stocktake Date | No | Stocktake Date (always optional) |
Output
RestStockCountRecRDO
| Parameter Name | Data Type |
|---|---|
| cycleCount | BigDecimal |
| cycleCountDesc | String |
| stocktakeDate | Timestamp |
| stocktakeType | String |
| stakeSkuLoc | List |
RestStakeSkuLocRecRDO
Parameter Name Data Type item String location BigDecimal locType String snapshotOnHandQty BigDecimal snapshotInTransitQty BigDecimal snapshotUnitCost BigDecimal snapshotUnitRetail BigDecimal processed String physicalCountQty BigDecimal packCompQty BigDecimal inTransitAmt BigDecimal depositItemType String xformItemType String distributeQty BigDecimal
JSON Structure
{
"cycleCount":null,
"cycleCountDesc":null,
"stocktakeDate":null,
"stocktakeType":null,
"stakeSkuLoc": [
{
"item":null,
"location":null,
"locType":null,
"snapshotOnHandQty":null,
"snapshotInTransitQty":null,
"snapshotUnitCost":null,
"snapshotUnitRetail":null,
"processed":null,
"physicalCountQty":null,
"packCompQty":null,
"inTransitAmt":null,
"depositItemType":null,
"xformItemType":null,
"distributeQty":null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| STAKE_HEAD | Yes | No | No | No |
| STAKE_SKU_LOC | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Stock Count Upload Service
The following services are included in this functional area:
-
Create Stock Count Schedules
-
Delete Stock Count Schedule Locations
-
Delete Stock Count Schedules
-
Update Stock Count Schedules
Create Stock Count Schedules
Functional Area
Inventory - Stock Counts
Business Overview
Stock count schedules are published by an inventory sub-system, such as Oracle Retail Store Inventory and Operations Cloud Service (SIOCS), to communicate unit and value stock count schedules to Merchandising. This stock count schedule data helps in synchronizing the inventory values of the integrated system and Merchandising. This integrated system then performs a physical inventory count and uploads the results, and Merchandising compares the discrepancies.
This webservice allows the external systems to create Unit and Value stock count requests within Merchandising. The count is assumed to be for the full location, unless any department, class or subclass details are included.
When a new stock count request is created, this webservice will validate all the required fields that are present in the message which includes a description, date, location type and location details. The stock take type will always be B (both unit and dollar). Optionally, the merchandise hierarchy information can also be included, but, if not included, it will be assumed the entire location will be counted. After the required field and business validations are successfully completed, the stock counts will be created in Merchandising.
Service Type
POST
ReST URL
MerchIntegrations/services/inventory/stockCount/schedules/create
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-321 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of stock count |
| Object | schedule records. |
Table 5-322 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| cycleCount | Yes | Number (8) | Contains the number which uniquely identifes the stock or cycle count. |
| description | Yes | String (250) | This feld contains a description of the cycle or stock count which, along with the cycle count number, identifes the cycle or stock count. |
| locationType | Yes | String (1) | This feld contains an indicator which identifes whether the cycle count will be for Stores or Warehouses. Valid values are Store (S) and Warehouse (W). |
| stocktakeDate | Yes | date | Contains the date on which the stock or cycle count even will take place. |
| merchandiseHierarchy | No | Collection of Object | References a collection of merchandies hierarchies to be included in the stock count. If not present, all departments will be included in the count. |
| locations | No | Collection of Object | References a collection of locations to be included in the stock count. |
Table 5-323 MerchandiseHierarchy - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number (4) | This feld contains the department number where the cycle count will occur. If the value = -1, the stock count will apply to all departments. The dept/class/subclass hierarchy must be a valid hierarchy in Merchandising. |
| class | No | Number (4) | This feld contains the class number where the cycle count will occur. The dept/class/subclass hierarchy must be a valid hierarchy in Merchandising. |
| subclass | No | Number (4) | This feld contains the subclass number where the cycle count will occur. The dept/class/subclass hierarchy must be a valid hierarchy in Merchandising. |
Table 5-324 Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| location | Yes | Number (10) | This feld contains the store or warehouse number on the cycle count. This must be a valid store or a stockholding warehouse in Merchandising. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"cycleCount": 1001,
"description": "Cycle count 1001",
"locationType": "S",
"stocktakeDate": "2001-12-31",
"merchandiseHierarchy": [
{
"dept": 3041,
"class": 1,
"subclass": 1
}
],
"locations": [
{
"location": 6000
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Stock Count Schedule Locations
Functional Area
Inventory - Stock Counts
Business Overview
This webservice allows external systems to delete locations from existing stock counts within Merchandising. This validates if all the required fields are present in the message and after the required field and business validations are completed successfully, the stock count locations will be removed. If all locations in the stock count are deleted, the entire stock count will be marked for deletion.
Service Type
DELETE
ReST URL
MerchIntegrations/services/inventory/stockCount/schedule/locations/delete
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-325 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| cycleCount | Yes | Number (8) | Contains the number which uniquely identifes the stock or cycle count. |
| locations | No | Collection of Object | References a collection of locations to be deleted from the stock count. |
Table 5-326 Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| location | Yes | Number (10) | This feld contains the store or warehouse number on the cycle count. This must be a valid store or a stockholding warehouse in Merchandising. |
Sample Input Message
{
"cycleCount": 1001,
"locations": [
{
"location": 6000
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Stock Count Schedules
Functional Area
Inventory - Stock Counts
Business Overview
This webservice allows the external systems to delete stock counts from Merchandising. This webservice will validate if all the required fields are present in the message. After required field and business validation are successfully completed, the stock counts will be marked for deletion in Merchandising.
A separate webservice Delete Stock Count Schedule Locations supports deleting a location from the count.
For more details on Stock Count Schedules, see the Create Stock Count Schedule service description.
Service Type
DELETE
ReST URL
MerchIntegrations/services/inventory/stockCount/schedules/delete
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-327 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| cycleCount | Yes | Number (8) | Contains the number which uniquely |
| identifes the stock or cycle count. |
Sample Input Message
{
"cycleCount": 1001
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Stock Count Schedules
Functional Area Inventory - Stock Counts
Business Overview
This webservice allows external systems to modify Unit and Value stock count requests that are already present within Merchandising. When an existing stock count request is updated, this webservice will validate all the required fields that are present in the message which includes a description, date, location type, and location details. After the required field and business validations are completed successfully, the stock counts will be updated in Merchandising.
For more details on Stock Count Schedules, see the Create Stock Count Schedule service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/stockCount/schedules/update
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-328 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| cycleCount | Yes | Number (8) | Contains the number which uniquely identifes the stock or cycle count. |
| description | Yes | String (250) | This feld contains a description of the cycle or stock count which, along with the cycle count number, identifes the cycle or stock count. |
| locationType | Yes | String (1) | This feld contains an indicator which identifes whether the cycle count will be for Stores or Warehouses. Valid values are Store (S) and Warehouse (W). |
| stocktakeDate | Yes | date | Contains the date on which the stock or cycle count even will take place. |
| merchandiseHierarchy | No | Collection of Object | References a collection of merchandies hierarchies to be included in the stock count. If not present, all departments will be included in the count. |
| locations | No | Collection of Object | References a collection of locations to be included in the stock count. |
Table 5-329 MerchandiseHierarchy - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number (4) | This feld contains the department number where the cycle count will occur. If the value = -1, the stock count will apply to all departments. The dept/class/subclass hierarchy must be a valid hierarchy in Merchandising. |
| class | No | Number (4) | This feld contains the class number where the cycle count will occur. The dept/class/subclass hierarchy must be a valid hierarchy in Merchandising. |
| subclass | No | Number (4) | This feld contains the subclass number where the cycle count will occur. The dept/class/subclass hierarchy must be a valid hierarchy in Merchandising. |
Table 5-330 Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| location | Yes | Number (10) | This feld contains the store or warehouse number on the cycle count. This must be a valid store or a stockholding warehouse in Merchandising. |
Sample Input Message
{
"cycleCount": 1001,
"description": "Cycle count 1001",
"locationType": "S",
"stocktakeDate": "2001-12-31",
"merchandiseHierarchy": [
{
"dept": 3041,
"class": 1,
"subclass": 1
}
],
"locations": [
{
"location": 6000
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Transfers and Allocations
The following services are included in this functional area:
-
Allocation Download Service
-
Get Allocation Details for Provided Allocation
-
Get Details for an Allocation
-
-
Allocation Number Download Service
- Get Next Allocation Numbers Service
-
Allocation Upload Service
-
Close Allocations
-
Create Allocation Details
-
Create Allocations
-
Delete Allocation Details
-
Update Allocation Details
-
Update Allocations
-
-
Allocation Corporate Rules
- Manage Corporate Rules
-
Mobile Workflow Transfer Download Service
- Create Transfer - Get From Locations for Transfer
-
Create Transfer - Get Items for Transfer
-
– Create Transfer - Get Next Transfer Numbers – Create Transfer - Get To Locations for Transfer – Create Transfer - Refresh Transfer Items – Create Transfer - Refresh Transfer Locations – Mobile Workflow - Get Locations on Existing Transfers – Mobile Workflow - Get Transfer Statuses – Mobile Workflow - Get Transfer Summary – Mobile Workflow - Get Transfer Types – Mobile Workflow - Get Transfer Users – Mobile Workflow - Get Transfers – Mobile Workflow - Refresh Transfer Locations
-
• Mobile Workflow Transfer Upload Service – Create Transfer – Mobile Workflow - Update Transfer Status
-
• Stock Order Status Upload Service – Manage Stock Order Status
-
• Transfer Detail Service • Transfer Download Service – Get Transfer – Get Transfer Details for Provided Transfer
-
• Transfer Upload Service – Create Book Transfer – Create Transfer Details – Create Transfers – Delete Transfer Details – Delete Transfers – Update Transfer Details
-
– Update Transfers
-
• Work Order Status Upload Service – Update Work Orders Status
-
• Work Order Download Service – Purchase Order Work Order Publish Services – Transfer Work Order Publish Services
Get Allocation Details for AIF Applications
Business Overview
The service is used to fetch all allocations from Merchandising for AIF application usage, data warehousing needs, or other downstream consuming systems. This service follows the AIF publish pattern and provides cache-backed JSON messages for consumers that need current allocation data.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and interacts with webhooks, refer to the common Publish API operational guidance.
Core business tables: ALLOC_HEADER, ALLOC_DETAIL
Additional business tables: ORDHEAD, ITEM_MASTER, WH, STORE
JSON cache table: MERCHAPI_AIF_ALLOC
JSON generation view: V_MERCHAPI_AIF_ALLOC_JSON
Builds the allocation header from ALLOC_HEADER and aggregates allocation detail rows from ALLOC_DETAIL, with order, item, warehouse, and store enrichment where applicable.
An allocation is published when it is present in the allocation JSON view and has a cacheable allocation message for AIF downstream consumption.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_MERCHAPI_AIF_ALLOC_JSON. No additional filter criteria were identified beyond the cache-build logic.
Mark cache rows deleted when the allocation no longer exists in V_MERCHAPI_AIF_ALLOC_JSON.
ICL (Integration Change Log) table: ICL_RMS_ALLOC (ICL consumer name = MERCHAPI_4)
ICL entries are created using the delivered entity map and table map for inventory/aif/ allocation. Qualifying inserts, updates, and deletes are written with change type U for cache refresh processing.
Batch Configuration. Background-engine execution is the delivered asynchronous option for this API.
Process configuration name: API_AIF_ALLOC
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM batch scheduler based delta processing is not supported for this API.
Webhook configuration api name: inventory/aif/allocation
Special handling:
Additional GET query parameters: allocNo.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime profiles.
Multi-threading and commit control
This service supports multi-threaded execution for both initial seeding and delta processing. Thread count is controlled through API_NO_OF_THREADS, and commit sizing is controlled through API_COMMIT_MAX_COUNTER. Choose these settings together based on expected row volume, average message size, and the SQL cost of building each JSON message.
Dropping indexes and constraints during seeding
DROP_INDEX_ON_REFRESH applies only to initial seeding, including truncate-and-load execution. When enabled, indexes and constraints are dropped before seeding and rebuilt after the load completes. GATHER_STATS_ON_REFRESH should normally remain enabled unless implementation testing shows a specific reason to change it.
REST fetch considerations
Select REST page size based on average payload size so the average response remains below about 10 MB per call. For full downloads, omit the since query parameter. For delta downloads, use a short time window; wider outage or recovery windows should be handled through smaller polling windows, using optimalBefore where applicable.
Input Parameters
Response Code: 200 (Success)
PageResultsItemsMerchApiAifAlloc - Object. See list of elements for detail
MerchApiAifAlloc - Object. See list of elements for detail aifAllocDetails - Object. See list of elements for detail
LinkItems - Object. See list of elements for detail
Sample Response Message
{
"items": [
{
"action": "INSERT",
"allocNo": 10010001,
"orderNo": 464690012,
"item": "100000001",
"allocStatus": "A",
"poType": "4000",
"allocMethod": "M",
"releaseDate": "2001-12-31",
"warehouse": 1001,
"allocDesc": "AIF allocation",
"createDateTime": "2001-12-31T10:15:30Z",
"updateDateTime": "2001-12-31T10:15:30Z",
"details": [
{
"toLocation": 101,
"toLocationType": "S",
"quantityAllocated": 24,
"quantityTransferred": 0,
"quantityCancelled": 0,
"quantityReceived": 0,
"inStoreDate": "2001-12-31"
}
]
}
],
"hasMore": false,
"limit": 1,
"count": 1,
"links": []
}
Get Transfer Details for AIF Applications
Business Overview
The service is used to fetch all transfers from Merchandising for AIF application usage, data warehousing needs, or other downstream consuming systems. This service follows the AIF publish pattern and provides cache-backed JSON messages for consumers that need current transfer data.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and interacts with webhooks, refer to the common Publish API operational guidance.
Core business tables: TSFHEAD, TSFDETAIL
Additional business tables: ITEM_MASTER, STORE, WH, PARTNER
JSON cache table: MERCHAPI_AIF_TRANSFER
JSON generation view: V_MERCHAPI_AIF_TRANSFER_JSON
Builds the transfer header from TSFHEAD and aggregates detail rows from TSFDETAIL, with source and destination location enrichment for stores, warehouses, internal finishers, and external finishers.
A transfer is published when it is present in the transfer JSON view and has a cacheable transfer message for AIF downstream consumption.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_MERCHAPI_AIF_TRANSFER_JSON. No additional filter criteria were identified beyond the cache-build logic.
Mark cache rows deleted when the transfer no longer exists in V_MERCHAPI_AIF_TRANSFER_JSON.
ICL (Integration Change Log) table: ICL_RMS_TRANSFER (ICL consumer name = MERCHAPI_4)
ICL entries are created using the delivered entity map and table map for inventory/aif/transfer. Qualifying inserts, updates, and deletes are written with change type U for cache refresh processing.
Batch Configuration. Background-engine execution is the delivered asynchronous option for this API.
Process configuration name: API_AIF_TRANSFER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM batch scheduler based delta processing is not supported for this API.
Webhook configuration api name: inventory/aif/transfer
Special handling:
Additional GET query parameters: transferNo, fromLocation, toLocation.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime profiles.
Multi-threading and commit control
This service supports multi-threaded execution for both initial seeding and delta processing. Thread count is controlled through API_NO_OF_THREADS, and commit sizing is controlled through API_COMMIT_MAX_COUNTER. Choose these settings together based on expected row volume, average message size, and the SQL cost of building each JSON message.
Dropping indexes and constraints during seeding
DROP_INDEX_ON_REFRESH applies only to initial seeding, including truncate-and-load execution. When enabled, indexes and constraints are dropped before seeding and rebuilt after the load completes. GATHER_STATS_ON_REFRESH should normally remain enabled unless implementation testing shows a specific reason to change it.
REST fetch considerations
Select REST page size based on average payload size so the average response remains below about 10 MB per call. For full downloads, omit the since query parameter. For delta downloads, use a short time window; wider outage or recovery windows should be handled through smaller polling windows, using optimalBefore where applicable.
Input Parameters
Response Code: 200 (Success)
PageResultsItemsMerchApiAifTransfer - Object. See list of elements for detail
MerchApiAifTransfer - Object. See list of elements for detail
aifTransferDetails - Object. See list of elements for detail
LinkItems - Object. See list of elements for detail
Sample Response Message
{
"items": [
{
"action": "INSERT",
"transferNo": 30030001,
"fromLocationType": "W",
"fromLocation": 1001,
"toLocationType": "S",
"toLocation": 101,
"transferType": "MR",
"deliveryDate": "2001-12-31",
"transferStatus": "A",
"orderNo": 464690012,
"createDateTime": "2001-12-31T10:15:30Z",
"updateDateTime": "2001-12-31T10:15:30Z",
"details": [
{
"transferSeqNo": 1,
"item": "100000001",
"transferQuantity": 24,
"shipQuantity": 0,
"receivedQuantity": 0,
"cancelledQuantity": 0,
"transferPrice": 12.5,
"transferCost": 10.0
}
]
}
],
"hasMore": false,
"limit": 1,
"count": 1,
"links": []
}
Update Transfer Price for Intercompany Allocations
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service is used to define and update the transfer price for intercompany allocations prior to the first shipment of an allocation. It enables users to override the default Weighted Average Cost (WAC) and explicitly specify transfer prices at either the allocation level or for specific destination locations within an allocation.
The available inputs for this service are allocation number, default transfer price, clear default transfer price flag, destination location, destination location type, and transfer price. The service processes requests to update transfer prices only for allocations that exist and have not yet undergone shipment processing.
The service provides the ability to accept a collection of allocation records and corresponding destination-level details from an external system or source to update transfer pricing for intercompany movements. Transfer prices can be applied globally across all eligible locations within an allocation or selectively for specific destination locations.
The service will attempt to process the request as a new update request. Success or failure of the operation will be returned as part of the response object.
When a default transfer price is provided at the header level, the service will update all intercompany destination locations within the allocation with the specified value.
When destination location details are provided, the service will update transfer prices only for the specified intercompany locations matching the allocation and location type.
When the clear default transfer price flag is set to ‘Y’, the service will remove any previously defined transfer prices for all intercompany locations within the allocation, provided the default transfer price is sent as NULL.
The service will only allow updates prior to the first shipment (i.e., when no quantity has been transferred.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/allocation/transferPrice/update
Input Payload Details
Update - Object. See list of elements for detail
Items - Object. See list of elements for detail
Details - Object. See list of elements for detail UpdateError - Object. See list of elements for detail
Sample Input Message
{
"collectionSize": 1000,
"items": [
{
"allocationNo": 10002,
"defaultTransferPrice": 20,
"clearTransferPrice": "N",
"details": [
{
"toLocation": 9625519,
"toLocationType": "S",
"transferPrice": 10
}
]
}
]
}
Response Code: 200 (Success)
UpdateResponse - Object. See list of elements for detail
Allocations - Object. See list of elements for detail
Sample Response Message
{
"allocations": [
{
"allocationNo": 10002
}
]
}
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.
UpdateError - Object. See list of elements for detail
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": [
{
"allocationNo": 10002,
"toLocation": 9625519,
"toLocationType": "S",
"errorMessage": [
"String"
]
}
]
}
Allocation Download Service
The following services are included in this functional area:
-
Get Allocation Details for Provided Allocation
-
Get Details for an Allocation
Get Allocation Details for Provided Allocation
Endpoint
MerchIntegrations/services/inventory/allocation
MerchIntegrations/services/inventory/allocation/{allocNo}
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service publishes allocation data to downstream consuming systems. It covers allocations that still exist in Merchandising and have at least one publishable destination row, where the destination is either a store or a warehouse on a different physical warehouse from the source; same-physical-warehouse warehouse destinations are excluded. The payload provides the allocation header together with qualifying destination details, related order context, pick window dates, ticket information, and supported pack-component detail.
Merchandising is responsible for communicating allocation information with external systems such as a store inventory system (SIOCS, for example) and a warehouse management system, like Oracle WMS Cloud.
There are several ways in which allocation information can be created in Merchandising:
Via integration with the Allocation Cloud Service
Via Merchandising replenishment, where cross dock orders generate allocations
Via the Allocation Subscription API, where a third-party system can create allocations and send to Merchandising for execution.
Allocations can be created from a virtual warehouse to any type of stockholding location in Merchandising, including other virtual warehouses, and to both company and franchise stores. Allocations include a store type and stockholding indicator at the detail level when allocating to stores, to allow the store and warehouse inventory management system to filter out the data irrelevant to their respective systems. When allocating to a franchise store, the linked franchise orders are not published; only the allocation itself is published. When allocating to another warehouse, the allocation quantities are summed up to the physical warehouse level and the physical warehouse is what is communicated in the integration.
Allocations in Approved, Closed or Deleted status can be retrieved by this service.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: ALLOC_HEADER, ALLOC_DETAIL
Additional business tables: WH, ORDHEAD, ITEM_MASTER, ITEM_LOC, STORE, ITEM_TICKET, PACKITEM_BREAKOUT, V_CODE_DETAIL_TL
JSON cache table: MERCHAPI_EXT_ALLOC
JSON generation view: V_MERCHAPI_EXT_ALLOC_JSON
The current JSON view builds the header from ALLOC_HEADER, derives source-warehouse enrichment from WH, uses ORDHEAD and V_CODE_DETAIL_TL to calculate the pick-notbefore and pick-not-after dates, derives ticket type from ITEM_TICKET, and builds detail rows from ALLOC_DETAIL, ITEM_LOC, STORE, WH, and PACKITEM_BREAKOUT.
Functionally, it publishes allocations that still exist in Merchandising and have at least one qualifying destination detail row, where the destination is either a store or a warehouse on a different physical warehouse from the source; same-physical-warehouse warehouse destinations are excluded.
The view itself does not apply a direct allocation-status filter, so eligibility is determined by those destination rules, while delta staging begins when an allocation first becomes approved and then continues for qualifying header and detail changes.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_ALLOC_JSON and therefore publish only allocations that still have at least one qualifying destination detail row, where the destination is either a store or a warehouse on a different physical warehouse from the source.
Mark cache rows deleted when the allocation no longer exists in ALLOC_HEADER.
ICL (Integration Change Log) table: ICL_RMS_ALLOC (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on ALLOC_HEADER and ALLOC_DETAIL.
ICL detail publication only when the related header status is A, the destination is publishable, and detail inserts satisfy QTY_TRANSFERRED ⇐ 0.
ICL insert when the allocation is inserted in status A or changes to status A; ICL update when header publication logic fires for status A or C or a release-date change; ICL delete on header delete.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_ALLOC
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_ALLOCATION_ADHOC_PROCESS → MERCHAPI_EXT_ALLOCATION_ADHOC_JOB
Webhook configuration api name: inventory/allocation
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime characteristics and should be evaluated separately. Because this service builds allocation messages from multiple base and supporting tables, including destinationeligibility logic and pack detail, the available configuration should be validated against the customer production allocation profile, with the key performance-related configuration for this service covering the following:
Multi-threading and commit control
This service supports multi-threaded execution for both initial seeding and delta processing. Thread count is controlled through API_NO_OF_THREADS, commit sizing through API_COMMIT_MAX_COUNTER, and long-running initial seeding can also be segmented through API_EXEC_SECONDS.
Thread and commit settings should be chosen together based on expected row volume, average message size, and the complex SQL query required to build the message from multiple base and supporting tables. Common starting points for large-volume runs are 8, 16, or 32 threads. Values of 48 or 64 threads should be considered only after testing and with awareness of competing workload in the environment.
API_COMMIT_MAX_COUNTER should be sized together with the thread setting. Typical values range from about 1,000 rows and can extend to 10,000. If the number of details line for allocation will be very high, start with smaller commit counter and then go up to see best throughput.
API_EXEC_SECONDS is mainly relevant for initial seeding. A value of about 30 minutes helps the batch pause and resume cleanly so tuning changes can be applied between runs if needed.
Dropping indexes and constraints during seeding
This option applies only to initial seeding, including truncate-and-load execution. When thread and commit settings are high, concurrent inserts can increase index maintenance overhead and slow the load.
To reduce that overhead, DROP_INDEX_ON_REFRESH can be enabled so indexes and constraints are dropped before seeding and rebuilt after the load completes. GATHER_STATS_ON_REFRESH should normally remain enabled unless testing shows a specific reason to change it.
REST fetch considerations
REST page size should be selected based on average payload size so the average response remains below about 10 MB per call. Common page-limit values are 500, 1,000, 5,000, or 10,000 rows and this should be selected based on average number of details lines in the allocation.
For full downloads, do not provide the since query parameter so the database can favor the primary-key access path. For delta downloads, use a small time window, typically a few minutes and at most a few hours, so the eligible row set on the LAST_UPDATE_DATETIME index remains small.
Wider delta windows, especially multi-day windows that can arise during outages or data recovery, generally do not perform well. For such scenarios, keeping BUILD_HISTOGRAM enabled allows the service to support recovery through smaller, more selective polling windows using the optimalBefore query parameter.
In this catch-up pattern, for requests up to 30 days in the past, the client provides optimalBefore and leaves before empty. The client then uses the returned before timestamp to continue polling incrementally until the backlog is cleared, and then resumes the normal shortwindow delta pattern. Hourly histogram processing groups LAST_UPDATE_DATETIME values into buckets of 10,000 rows in MERCHAPI_TIMESTAMP_HISTOGRAM using the shared HISTOGRAM_ROW_COUNT configuration.
Service Type
GET
ReST URL
MerchIntegrations/services/inventory/allocation
MerchIntegrations/services/inventory/allocation/{allocNo}
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-331 Input Parameter for “MerchIntegrations/services/inventory/allocation/ {allocNo}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| allocNo | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-332 PageResultsItemsMerchApiAllocation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-333 MerchApiAllocation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for allocation details. |
| allocNo | No | Number(10,0) | This feld specifes the number that uniquely identifes the allocation within the system. |
| docType | No | String (1) | This feld specifes that this document is of type allocation. This feld is defaulted to A. |
| physicalWarehouse | No | Number(10,0) | This feld specifes the number that is used to identify the physical warehouse for a virtual warehouse. |
| warehouse | No | Number(10,0) | This feld specifes the number that uniquely identifes the warehouse. |
| item | No | String (25) | This feld specifes the unique alphanumeric value that identifes the item. |
Table 5-333 (Cont.) MerchApiAllocation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| pickNotBeforeDate | No | date | This feld specifes the frst date on which the allocation should be released from the warehouse for delivery to the store locations. |
| pickNotAfterDate | No | date | This feld specifes the last date on which the allocation should be released from the warehouse for delivery to the store locations. |
| orderType | No | String (9) | This feld specifes the type of the order. Allocations created against purchase orders will be marked as PREDIST order types. Allocations created against warehouse stock will be populated with the DEFAULT_ORDER_TYP E from the SYSTEM_OPTIONS table, which can be AUTOMATIC, MANUAL, or WAVE. |
| orderNo | No | Number(12,0) | This feld specifes the order number to which the allocation applies. |
| orderDocType | No | String (1) | This feld specifes the order type and is defaulted to P. |
| priority | No | Number(1,0) | This feld is currently defaulted to 1. |
| ticketTypeId | No | String (4) | This feld uniquely identifes the ticket type that is associated with the item. |
| contextType | No | String (6) | This feld specifes the functional area code to which the allocation relates, for example, Promotions. Valid values are defned in the CNTX code type. |
Table 5-333 (Cont.) MerchApiAllocation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| contextValue | No | String (25) | This feld specifes the value relating to the context type, for example, Promotion Number. |
| allocStatus | No | String (1) | This feld specifes the status of the allocation. |
| poType | No | String (4) | This feld specifes the value associated with the PO_TYPE for the order. |
| allocMethod | No | String (1) | This feld specifes the preferred allocation method, which is used to distribute goods when the stock received at a warehouse cannot immediately fll all requested allocations to stores. Valid values are A - Allocation quantity based, P - Prorate method, and C - Custom. |
| releaseDate | No | date | This feld specifes the date on which the allocation should be released from the warehouse for delivery to the store locations. |
| documentNo | No | String (30) | This feld specifes the ASN or BOL number for an ASN- or BOL- sourced allocation. This will be populated for the product source of the tier-one allocation. |
| documentType | No | String (5) | This feld contains the type of allocation product source. Valid values are ASN, TSF, BOL, or ALLOC. When this feld is null, the source is assumed to be a purchase order or warehouse inventory if no purchase order number is provided. |
Table 5-333 (Cont.) MerchApiAllocation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| sourceParentAllocId | No | Number(15,0) | This feld contains the parent allocation identifer from the source system that interfaced the allocation to merchandising after splitting at item level. |
| allocDesc | No | String (300) | This feld specifes the description of the allocation. |
| commentDesc | No | String (2000) | This feld specifes additional information concerning the allocation. |
| originInd | No | String (6) | This feld identifes the origin point of the allocation. Valid values are AIP, EG, RMS, and ALC. |
| closeDate | No | date | This feld specifes the date when the allocation is closed. |
| createDateTime | No | dateTime | This column holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This column holds the date and time when the record was last updated (UTC). |
| details | No | Collection of Object | This list holds attributes for allocation detail records. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the allocation record was last picked for publication processing. |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication. |
Table 5-334 AllocationDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| physicaltoLocation | No | Number(10,0) | This feld specifes the physical warehouse of a virtual warehouse. The store ID is populated when the to location is a store. |
| toLocation | No | Number(10,0) | This feld specifes the location to which the allocation is being sent. |
| locationType | No | String (1) | This feld specifes the type of location in the location feld. Valid values are Store and Warehouse. |
| storeType | No | String (6) | This feld specifes whether the store is a company or franchise store and is not populated in the case of a warehouse. |
| stockholdingInd | No | String (1) | This feld specifes whether the store can hold stock. In a non- multichannel environment, this feld is defaulted to Y. It is not populated in the case of a warehouse. |
| quantityAllocated | No | Number(12,4) | This column contains the total number of items allocated. |
| price | No | Number(20,4) | This feld specifes the unit retail price in the selling unit retail. |
| sellingUom | No | String (4) | This feld specifes the selling unit of measure for an item. |
| priority | No | Number(1,0) | This feld is defaulted to 1. |
| storeOrderMultiple | No | String (1) | This column contains the multiple in which the item needs to be shipped from a warehouse to the location. |
| inStoreDate | No | date | This feld contains the date to be included in the publication for communication to the warehouse. |
Table 5-334 (Cont.) AllocationDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| rushFlag | No | String (1) | This feld contains the rush fag indicator to be included in the publication for communication to the warehouse. |
| quantityTransferred | No | Number(12,4) | This column contains the number of items that have already been transferred under this allocation. |
| quantityPrescaled | No | Number(12,4) | This column contains the allocation quantity (system generated or manually generated) for the item/location before order scaling processing was performed. |
| quantityDistro | No | Number(12,4) | This column contains the fnal quantity that the external system plans on flling. |
| quantitySelected | No | Number(12,4) | This column contains the initial quantity that the external system plans on flling. |
| quantityCancelled | No | Number(12,4) | This column contains the quantity that was left to be allocated when the line item was cancelled. |
| quantityReceived | No | Number(12,4) | This column contains the quantity of the item that has been received at the to location on the allocation. |
| quantityReconciled | No | Number(12,4) | This column contains the quantity received at another location for this allocated item. |
| poReceivedQty | No | Number(12,4) | This column tracks the quantity received against a cross-docked order. It is only used to distribute unallocated quantities that are received in a physical warehouse. |
Table 5-334 (Cont.) AllocationDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nonScaleInd | No | String (1) | This column determines whether the item/location allocation quantity should not be scaled during the order scaling process. |
| franchiseOrderNo | No | Number(10,0) | This feld holds the franchise order number to which this allocation detail line is linked. |
| createDateTime | No | dateTime | This column holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This column holds the date and time when the record was last updated (UTC). |
| detailsTicket | No | Collection of Object | This list holds attributes for allocation detail ticket records. |
Table 5-335 AllocationDetailsTicket - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentItem | No | String (25) | This feld specifes the alphanumeric value that identifes the component item within the pack. |
| componentPrice | No | Number(20,4) | This feld specifes the unit retail price in the selling unit retail of the component item within the pack. |
| componentSellingUom | No | String (4) | This feld specifes the selling unit of measure for a component item within the pack. |
Table 5-336 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-336 (Cont.) LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"allocNo": 102881222,
"docType": null,
"physicalWarehouse": 1,
"warehouse": 10001,
"item": "2147483647",
"pickNotBeforeDate": "2001-12-31",
"pickNotAfterDate": "2001-12-31",
"orderType": null,
"orderNo": 585036,
"orderDocType": null,
"priority": 1,
"ticketTypeId": "TKT1",
"contextType": "PROM",
"contextValue": "79890",
"allocStatus": "A",
"poType": null,
"allocMethod": null,
"releaseDate": "2001-12-31",
"documentNo": null,
"documentType": null,
"sourceParentAllocId": 225414,
"allocDesc": "Allocation to 1311.",
"commentDesc": null,
"originInd": "EG",
"closeDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"details": [
{
"physicaltoLocation": 1,
"toLocation": 6000,
"locationType": "S",
"storeType": "C",
"stockholdingInd": "Y",
"quantityAllocated": 3,
"price": 1.0,
"sellingUom": "EA",
"priority": 1,
"storeOrderMultiple": "E",
"inStoreDate": "2001-12-31",
"rushFlag": null,
"quantityTransferred": 1.0,
"quantityPrescaled": 1.0,
"quantityDistro": 1.0,
"quantitySelected": 1.0,
"quantityCancelled": 1.0,
"quantityReceived": 1.0,
"quantityReconciled": 1.0,
"poReceivedQty": 1.0,
"nonScaleInd": null,
"franchiseOrderNo": 1,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"detailsTicket": [
{
"componentItem": null,
"componentPrice": 1.0,
"componentSellingUom": null
}
]
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_ALLOC | Yes | No | Yes | Yes |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_EXT_ALLOC | Yes | Yes | Yes | No |
| V_MERCHAPI_EXT_ALLOC_JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
Get Details for an Allocation
This section describes the Allocation Detail service.
Business Overview
Allocation Detail service allows user to retrieve Allocation information for a selected allocation number.
Service Type
Get
ReST URL
Alloc/allocDetail?allocNumber={allocationNumber}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| allocNumber | Yes | Allocation Number |
Output
RestAllocRecRDO
| Parameter Name | Data Type |
|---|---|
| alloc_no | BigDecimal |
| order_no | BigDecimal |
| wh | BigDecimal |
| item | String |
| status | String |
| alloc_desc | String |
| po_type | String |
| alloc_method | String |
| release_date | Date |
| order_type | String |
| doc | String |
| doc_type | String |
| origin_ind | String |
| close_date | Date |
| alloc_detail | List |
RestAllocDetailRecRDO
Parameter Name Data Type to_loc BigDecimal to_loc_type String qty_transferred BigDecimal qty_allocated BigDecimal qty_prescaled BigDecimal qty_distro BigDecimal qty_selected BigDecimal qty_cancelled BigDecimal qty_received BigDecimal qty_reconciled BigDecimal po_rcvd_qty BigDecimal non_scale_ind String in_store_date Date wf_order_no BigDecimal rush_flag String
JSON Structure
[
{
"docType": null,
"allocDetail": [
{
"qtyTransferred": null,
"rushFlag": null,
"wfOrderNo": null,
"inStoreDate": null,
"qtyAllocated": null,
"nonScaleInd": null,
"toLoc": null,
"qtyPrescaled": null,
"toLocType": null,
"qtyDistro": null,
"qtySelected": null,
"qtyReceived": null,
"qtyCancelled": null,
"qtyReconciled": null,
"poRcvdQty": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"doc": null,
"originInd": null,
"allocNo": null,
"wh": null,
"allocMethod": null,
"allocDesc": null,
"poType": null,
"item": null,
"status": null,
"orderNo": null,
"orderType": null,
"releaseDate": null,
"closeDate": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
]
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ALLOC_HEADER | Yes | No | No | No |
| ALLOC_DETAIL | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Allocation Number Download Service
The following services are included in this functional area:
- Get Next Allocation Numbers Service
Get Next Allocation Numbers Service
Business Overview
This service retrieves next available allocation numbers from Merchandising. This service takes an optional query parameter of count to retreive multiple (up to 999 ) allocation numbers. The count defaults to 1 if the query parameter is not provided.
Service Type
GET
ReST URL
/Alloc/allocNo
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Count | No | Count (1-999) of allocation |
| numbers to be fetched. Default | ||
value is1. |
Output
| Parameter Name | Data Type | Details |
|---|---|---|
| allocNo | Number | Deprecated (UseallocNumbers) as this servicehas been enhanced to return multiple allocation numbers. This feld will contain the frst allocation number from the allocNumberslist. |
| allocNumbers | Array | Contains list of available allocation numbers. |
JSON Structure:
{
"allocNo": 123456,
"allocNumbers": [123456,123457]
}
Table Impact
N/A
Allocation Upload Service
The following services are included in this functional area:
-
Close Allocations
-
Create Allocation Details
-
Create Allocations
-
Delete Allocation Details
-
Update Allocation Details
-
Update Allocations
Close Allocations
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service can be used to close allocations within Merchandising from an external system. After successfully validating the information in the message, the header level record is updated to the Closed (C) status.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/allocations/close
Input Payload Details
Table 5-337 Close - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | References a collection of allocations. |
Table 5-338 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| allocationNo | Yes | Number (10) | Contains the unique identifer of the allocation. This should fall within the |
| range of Merchandising IDs already designated for allocations. |
Sample Input Message
{
"items": [
{
"allocationNo": 102881222
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Create Allocation Details
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service can be used to create detail level records for one or more allocations within Merchandising from an external application. This would add new destination locations to the items that are already present in existing allocations.
Service Type
POST
ReST URL
MerchIntegrations/services/inventory/allocation/details/create
Input Payload Details
Table 5-339 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | References a collection of allocations. |
| Object |
Table 5-340 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| allocationNo | Yes | Number (10) | Contains the unique identifer of the allocation. This should fall within the range of Merchandising IDs already designated for allocations. |
| allocationDescription | Yes | String (300) | Contains the user defned description of the allocation. |
| orderNo | No | Number (12) | Contains the purchase order with which the allocation is associated. Only used if the source for the allocation is a purchase order. |
| item | Yes | String (25) | Contains the transaction level item that is being allocated. |
| fromLocation | Yes | Number (10) | Contains the location that is the source of the allocation. This must be a valid stockholding virtual warehouse. |
Table 5-340 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| documentNo | No | String (30) | Contains identifcation number for a transfer, another allocation, bill of landing number (BOL), or advanced shipping notice (ASN) number for a purchase order. This feld is populated according to documentation type and indicates where the inventory for the allocation should be sourced. This should be null if the source for the allocation is warehouse inventory or a purchase order. |
| documentType | No | String (5) | Contains the type of allocation product source. Valid values are ASN, Transfer (TSF), Bill of Lading (BOL), or Allocation (ALLOC). When this is passed in as null, the source is assumed to be a PO or warehouse inventory if not PO number provided. |
| details | No | Collection of Object | References a collection of allocation details. |
Table 5-341 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| toLocation | Yes | Number (10) | Contains the destination location of the allocation. This must be an active stockholding store or virtual warehouse. |
| toLocationType | Yes | String (1) | Contains the type of the destination location. Valid values are S (store) and W (warehouse). |
| quantityAllocated | Yes | Number (12,4) | Contains the allocated quantity of the item for the destination location. When the allocation is being created this value must be a positive integer. If this value is being modifed, it will contain the quantity adjusted (positive or negative), rather than an override value. |
| inStoreDate | No | date | Contains the date the item is to be in store. This date will be included in the Merchandising publication for communication to the warehouse. |
Sample Input Message
{
"items": [
{
"allocationNo": 102881222,
"allocationDescription": "Allocation to 1311.",
"orderNo": 585036,
"item": "2147483647",
"fromLocation": 10001,
"documentNo": null,
"documentType": null,
"details": [
{
"toLocation": 6000,
"toLocationType": "S",
"quantityAllocated": 3,
"inStoreDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Create Allocations
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service can be used to create allocations within Merchandising from an external system. Allocations created or updated using this API include those that are based on warehouse inventory, as well as those using inventory from another transaction such as a purchase order, another allocation, a transfer, or a shipment (Vendor ASN or BOL). When allocating using something other than warehouse inventory, the ID of the transaction must also be included as part of the message.
Allocations can involve both stockholding and non-stockholding locations. This includes the ability to process allocations to both stockholding and non-stockholding company and franchise stores, as well as any stockholding warehouse locations, except internal finishers. If an allocation for a franchise store is received, Merchandising will also create a corresponding franchise order. This API supports multiple types of destination locations (warehouses as well as stores) as part of the detail section within the same message.
The release date for the allocation cannot be earlier than the release date of the document (ASN/BOL/ALLOC/TSF/PO) which it is based on. The requested total allocation quantity for an item cannot exceed the quantity available to allocate from the source location or the document it is based on.
The Oracle Retail Allocation Cloud Service does not use this API to interface allocations to Merchandising.
Service Type
POST
ReST URL
MerchIntegrations/services/inventory/allocations/create
Input Payload Details
Create - Object. See list of elements for detail
Items - Object. See list of elements for detail
Details - Object. See list of elements for detail
CreateError - Object. See list of elements for detail
Response Code: 200 (Success)
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 “businessErrors” will be present if the payload passes schema validation but exception is caught while processing business logic. The element businessErorr will be present but deprecated.
CreateError - Object. See list of elements for detail
Delete Allocation Details
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service can be used to remove detail level data from one or more allocations within Merchandising from an external system. On successful validation of the information present in the message, the detail level records are deleted from the database.
Service Type
DELETE
ReST URL
MerchIntegrations/services/inventory/allocation/details/delete
Input Payload Details
Table 5-342 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | References a collection of allocations. |
Table 5-343 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| allocationNo | Yes | Number (10) | Contains the unique identifer of the allocation. This should fall within the range of Merchandising IDs already designated for allocations. |
| details | No | Collection of Object | References a collection of allocation details |
Table 5-344 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| toLocation | Yes | Number (10) | Contains the destination location of the allocation. This must be an active stockholding store or virtual warehouse. |
| toLocationType | Yes | String (1) | Contains the type of the destination location. Valid values are S (store) and W (warehouse). |
Sample Input Message
{
"items": [
{
"allocationNo": 102881222,
"details": [
{
"toLocation": 1311,
"toLocationType": "S"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Update Allocation Details
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service allows an external application modify details on one or more allocations at a time within Merchandising. If modifying an existing location, Merchandising assumes the passed in quantity is an adjustment to the current quantity as opposed to an overwrite. The service verifies the allocation is not in-transit, received, nor in progress and that the quantity does not fall to zero or below.
For more information about allocation, see the Create Allocation Service.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/allocation/details/update
Input Payload Details
Table 5-345 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of allocations. |
Table 5-346 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| allocationNo | Yes | Number (10) | Contains the unique identifer of the allocation. This should fall within the range of Merchandising IDs already designated for allocations. |
| orderNo | No | Number (12) | Contains the purchase order with which the allocation is associated. Only used if the source for the allocation is a purchase order. |
| item | Yes | String (25) | Contains the transaction level item that is being allocated. |
| fromLocation | Yes | Number (10) | Contains the location that is the source of the allocation. This must be a valid stockholding virtual warehouse. |
| documentNo | No | String (30) | Contains identifcation number for a transfer, another allocation, bill of landing number (BOL), or advanced shipping notice (ASN) number for a purchase order. This feld is populated according to documentation type and indicates where the inventory for the allocation should be sourced. This should be null if the source for the allocation is warehouse inventory or a purchase order. |
| documentType | No | String (5) | Contains the type of allocation product source. Valid values are ASN, Transfer (TSF), Bill of Lading (BOL), or Allocation (ALLOC). When this is passed in as null, the source is assumed to be a PO or warehouse inventory if not PO number provided. |
| details | No | Collection of Object | References a collection of allocation details. |
Table 5-347 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| toLocation | Yes | Number (10) | Contains the destination location of the allocation. This must be an active |
| stockholding store or virtual warehouse. |
Table 5-347 (Cont.) Details - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| toLocationType Yes | String (1) | Contains the type of the destination location. Valid values are S (store) and W (warehouse). |
| quantityAllocated Yes | Number (12,4) | Contains the allocated quantity of the item for the destination location. When the allocation is being created this value must be a positive integer. If this value is being modifed, it will contain the quantity adjusted (positive or negative), rather than an override value. |
| inStoreDate No Sample Input Message | date | Contains the date the item is to be in store. This date will be included in the Merchandising publication for communication to the warehouse. |
{"items": [{"allocationNo": 102881222,"orderNo": 585036,"item": "2147483647","fromLocation": 10001,"documentNo": null,"documentType": null,"details": [{"toLocation": 6000,"toLocationType": "S","quantityAllocated": 3,"inStoreDate": "2001-12-31"}]}]} |
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Update Allocations
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service can be used to update allocations within Merchandising from an external system. In order to perform an update, the existence of a matching record in the allocation header table is mandatory. Currently, only the allocation description, the release date, and status can be modified at the header level.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/allocations/update
Input Payload Details
Table 5-348 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of allocations. |
Table 5-349 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| allocationNo | Yes | Number (10) | Contains the unique identifer of the allocation. This should fall within the range of Merchandising IDs already designated for allocations. |
| allocationDescription | Yes | String (300) | Contains the user defned description of the allocation. |
| releaseDate | No | date | Contains the earliest date on which the warehouse should ship the allocation. |
| contextType | No | String (6) | Contains the actual purpose behind the creation of the allocation in the overall business setup. Valid codes need to be defned in the code type = ‘CNTX’. E.g. - Promotion, Repairing, etc. |
| contextValue | No | String (25) | Contains the value related to the specifed context type, wherever applicable. E.g.: Promotion ID when the context type is set as ‘Promotion’. |
| allocStatus | No | String (1) | If specifed, needs to be either ‘R’ (Reserved) or ‘A’ (Approved). |
Sample Input Message
{
"items": [
{
"allocationNo": 102881222,
"allocationDescription": "Allocation to 1311.",
"releaseDate": "2001-12-31",
"contextType": "REPAIR",
"contextValue": "71256",
"allocStatus": "A"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Mobile Workflow Transfer Download Service
The following services are included in this functional area:
-
Create Transfer - Get From Locations for Transfer
-
Create Transfer - Get Items for Transfer
-
Create Transfer - Get Next Transfer Numbers
-
Create Transfer - Get To Locations for Transfer
-
Create Transfer - Refresh Transfer Items
-
Create Transfer - Refresh Transfer Locations
-
Mobile Workflow - Get Locations on Existing Transfers
-
Mobile Workflow - Get Transfer Statuses
-
Mobile Workflow - Get Transfer Summary
-
Mobile Workflow - Get Transfer Types
-
Mobile Workflow - Get Transfer Users
-
Mobile Workflow - Get Transfers
-
Mobile Workflow - Refresh Transfer Locations
Create Transfer - Get From Locations for Transfer
This section describes the Search From Location service.
Business Overview
This service retrieves locations applicable for inventory transfer. Location can be searched by either ‘S’tore or ‘W’arehouse. Then enter a location number, a partial location number, a location description, or a partial location description in the search string.
The locations returned are constrained by the following criteria:
-
When search type is warehouse only virtual warehouses are returned.
-
Only stockholding location.
-
When search type is store then only open stores are returned.
-
When items are sent as input then only locations with available inventory are returned.
-
When To Location is sent as input then:
-
It cannot be the same as the To Location.
-
When transfer type is Manual Requisition, then only locations with the same Transfer Entity/Set of Books as the To Location are returned in the search results.
-
When the transfer type is Intercompany, then only locations with a different Transfer Entity/Set of Books to the To Location are returned in the search results.
-
Only locations in the same transfer zone are returned in the search results.
-
Service Type
Get
ReST URL
/Transfer/fromLocation?
locationType={locationType}&searchString={searchString}&tsfType={tsfType}&toLo
cation={toLocation}&items={items}&pageSize={pageSize}&pageNumber={pageNumber}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| LocationType | Yes | Location type Store or warehouse | S,W |
| SearchString | Yes | search string for locations Id or Name | NA |
| tsfType | Yes | Transfer type | IC,MR |
| toLocation | No | Selected to location ID | NA |
| items | No | Comma Separated values for selected items | NA |
| PageSize | No | Maximum number of locations to retrieve per page | NA |
| PageNumber | No | Result page to retrieve | NA |
Output
TsfLocSearchResultRDO
| Parameter Name | Data Type |
|---|---|
| location | BigDecimal |
| locType | String |
| locName | String |
| locCurrencyCode | String |
| entity | BigDecimal |
| entityDesc | String |
| tsfLocitemSearchRes | List |
TsfLocitemSearchResRDO
Parameter Name Data Type item String availQty BigDecimal averageCost BigDecimal unitRetail BigDecimal currencyCode String
PagedResultsRDO
| Parameter Name | Data Type |
|---|---|
| totalRecordCount | BigDecimal |
| Next Page URL | String |
| Previous Page URL | String |
JSON Structure
{
"links": [],
"totalRecordCount": 1,
"results": [
{
"links": [],
"location": 5991,
"locType": "S",
"locName": "DIT Company Stockholding Store",
"locCurrencyCode": "USD",
"entity": 1000,
"entityDesc": "Regular Stores",
"tsfLocitemSearchRes": [
{
"links": [],
"item": "100054006",
"availQty": 100,
"averageCost": 0,
"unitRetail": 181.82,
"currencyCode": "USD",
"hyperMediaContent": {
"linkRDO": []
}
},
{
"links": [],
"item": "100040051",
"availQty": 998,
"averageCost": 1,
"unitRetail": 1.54,
"currencyCode": "USD",
"hyperMediaContent": {
"linkRDO": []
}
}
],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ALLOC_HEADER | Yes | No | No | No |
| ALLOC_DETAIL | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| ITEM_LOC_SOH | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| MV_LOC_SOB | Yes | No | No | No |
| ORDHEAD | Yes | No | No | No |
| ORG_UNIT | Yes | No | No | No |
| STORE | Yes | No | No | No |
| TRANSFER_LOC | Yes | No | No | No |
| TSF_ENTITY | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
| V_TRANSFER_FROM_LOC | Yes | No | No | No |
| V_TRANSFER_TO_LOC | Yes | No | No | No |
| V_WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Create Transfer - Get Items for Transfer
Business Overview
This service retrieves items applicable for inventory transfer. Item can be searched either by Item or VPN. To search the item, enter an item number, a partial item description, or a VPN in the search string.
-
When search type is ITEM, the search string can be an item number, a partial item number, an item description, or partial item description. In this case, the query returns all items which match the item description or partial description, or which match the item number entered.
-
When search type is VPN, the search string can be a VPN or partial VPN, the API should return all items with that VPN.
The items returned are constrained by the following criteria:
-
Approved status.
-
Transaction-level items.
-
Inventory items.
-
When From Location is sent as an input, then only the following items are returned:
-
With available inventory at the From Location.
-
Packs with Receive as Type as Each are filtered out when, from location is a virtual warehouse.
-
-
If the System Option for DEPT_LEVEL_TRANSFERS is set as”Y” and a Department ID is sent as input, then only the input department items are returned.
Service Type
GET
ReST URL
/Transfer/item?
itemSearchType={itemSearchType}&searchString={searchString}&dept={dept}&fromLo
cation={fromLocation}&pageSize={pageSize}&pageNumber={pageNumber}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| itemSearchType | Yes | Search type item or VPN. | ITEM, VPN |
| searchString | Yes | Search string for items ID or Name. | NA |
| dept | No | Selected items’ department ID. | NA |
| fromLocation | No | Selected from location ID. | NA |
| PageSize | No | Maximum number of items to retrieve per page. | NA |
| PageNumber | No | Result page to retrieve. | NA |
Output
Table 5-350 TsfItemSearchRDO
| Parameter Name | Data Type |
|---|---|
| item | String |
| itemDesc | String |
Table 5-350 (Cont.) TsfItemSearchRDO
| Parameter Name | Data Type |
|---|---|
| dept | BigDecimal |
| availQty | BigDecimal |
| averageCost | BigDecimal |
| unitRetail | BigDecimal |
| currencyCode | String |
| standardlUnitOfMeasure | String |
| suppPackSize | BigDecimal |
| innerPackSize | BigDecimal |
| itemImageUrl | String |
Table 5-351 PagedResultsRDO
| Parameter Name | Data Type |
|---|---|
| totalRecordCount | BigDecimal |
| Next Page URL | String |
| Previous Page URL | String |
JSON Structure
{
"links": [
{
"href": "/Transfer/item?
itemSearchType=ITEM&searchString=Black&fromLocation=363640301&pageSize=1&pageN
umber=3",
"rel": "next",
"type": "GET",
"methodType": null
},
{
"href": "/Transfer/item?
itemSearchType=ITEM&searchString=Black&fromLocation=363640301&pageSize=1&pageN
umber=1",
"rel": "prev",
"type": "GET",
"methodType": null
}
],
"totalRecordCount": 51,
"results": [
{
"links": [],
"item": "100001406",
"itemDesc": "DIT Test 11:Black:Extra Small",
"dept": 1102,
"availQty": 100,
"averageCost": 5,
"unitRetail": 7.26,
"currencyCode": "USD",
"standardlUnitOfMeasure": "CKG",
"suppPackSize": 1,
"innerPackSize": 1,
"itemImageUrl": null,
"hyperMediaContent": {
"linkRDO": []
}
}
],
"hyperMediaContent": {
"linkRDO": [
{
"href": "/Transfer/item?
itemSearchType=ITEM&searchString=Black&fromLocation=363640301&pageSize=1&pageN
umber=3",
"rel": "next",
"type": "GET",
"methodType": null
},
{
"href": "/Transfer/item?
itemSearchType=ITEM&searchString=Black&fromLocation=363640301&pageSize=1&pageN
umber=1",
"rel": "prev",
"type": "GET",
"methodType": null
}
]
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ALLOC_HEADER | Yes | No | No | No |
| ALLOC_DETAIL | Yes | No | No | No |
| DAILY_PURGE | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| ITEM_LOC_SOH | Yes | No | No | No |
| ITEM_IMAGE | Yes | No | No | No |
| ITEM_SUPPLIER | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| ORDHEAD | Yes | No | No | No |
| STORE | Yes | No | No | No |
| V_ITEM_MASTER | Yes | No | No | No |
| WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Create Transfer - Get Next Transfer Numbers
Business Overview
This service retrieves the next available transfer numbers from Merchandising. This service takes an optional query parameter of count to retrieve multiple (up to 999) transfer numbers. The count defaults to 1 if the query parameter is not provided.
Service Type
GET
ReST URL
/Transfer/transferId
Input Parameters
Output
| Parameter Name | Requi | red | Description |
|---|---|---|---|
| count | No | Count (1-999) of transfer numbers to be fetched. Default value is 1. | |
| Parameter Name | Data Type | Details | |
| transfer_no | Number | Deprecated (UsetransferNumbers) as thisservice has been enhanced to return multiple transfer numbers. This field will contain the first transfer number from transferNumberslist. | |
| transferNumbers | Array | Contains list of available transfer numbers. |
JSON Output
{
"transfer_no": 123456,
"transferNumbers": [123456, 123457]
}
Table Impact
N/A
Create Transfer - Get To Locations for Transfer
This section describes the Search To Location service.
Business Overview
This service retrieves locations applicable for inventory transfer. Location can be searched by either ‘S’tore or ‘W’arehouse. Then enter a location number, a partial location number, a location description, or a partial location description in the search string.
The locations returned are constrained by the following criteria:
-
When search type is warehouse only virtual warehouses are returned.
-
Internal finishers are filtered out.
-
Only stockholding location.
-
When search type is Store then only open stores are returned.
-
When items are sent as input then only locations with available inventory are returned.
-
When From Location is sent as input then:
-
To Location cannot be the same as the From Location.
-
When Transfer Type is set as a manual request, then only locations with the same Transfer Entity/Set of Books as the From Location are returned in the search results.
-
When the Transfer Type is Intercompany, then only locations with a different Transfer Entity/Set of Books to the From Location are returned in the search results.
-
Only locations in the same transfer zone are returned in the search results.
-
Service Type
Get
ReST URL
/Transfer/toLocation?
locationType={locationType}&searchString={searchString}&tsfType={tsfType}&from
Location={fromLocation}&pageSize={pageSize}&pageNumber={pageNumber}")
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| LocationType | Yes | Location type Store or warehouse | S,W |
| SearchString | Yes | search string for locations Id or Name | NA |
| tsfType | Yes | Transfer type | IC,MR |
| fromLocation | No | Selected from location ID | N/A |
| PageSize | No | Maximum number of locations to retrieve per page | N/A |
| PageNumber | No | Result page to retrieve | N/A |
Output
TsfLocSearchResultRDO
| Parameter Name | Data Type |
|---|---|
| location | BigDecimal |
| locType | String |
| locName | String |
| locCurrencyCode | String |
Parameter Name Data Type entity BigDecimal entityDesc String tsfLocitemSearchRes List
TsfLocitemSearchResRDO
Parameter Name Data Type item String availQty BigDecimal averageCost BigDecimal unitRetail BigDecimal currencyCode String
PagedResultsRDO
Parameter Name Data Type totalRecordCount BigDecimal Next Page URL String Previous Page URL String
JSON Structure
{
"links": [],
"totalRecordCount": 1,
"results": [
{
"links": [],
"location": 5991,
"locType": "S",
"locName": "DIT Company Stockholding Store",
"locCurrencyCode": "USD",
"entity": 1000,
"entityDesc": "Regular Stores",
"tsfLocitemSearchRes": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ALLOC_HEADER | Yes | No | No | No |
| ALLOC_DETAIL | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| ITEM_LOC_SOH | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| MV_LOC_SOB | Yes | No | No | No |
| ORDHEAD | Yes | No | No | No |
| ORG_UNIT | Yes | No | No | No |
| STORE | Yes | No | No | No |
| TRANSFER_LOC | Yes | No | No | No |
| TSF_ENTITY | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
| V_TRANSFER_FROM_LOC | Yes | No | No | No |
| V_TRANSFER_TO_LOC | Yes | No | No | No |
| V_WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Create Transfer - Refresh Transfer Items
This section describes the load items.
Business Overview
Load items service allows the user to refresh item records information for already selected items.
Service Type
Get
ReST URL
/Transfer/item/load?items={items}&fromLocation={fromLocation}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| items | Yes | Comma Separated values for selected items’ ID. |
| fromLocation | No | Selected from location ID. |
Output
TsfItemSearchRDO
| Parameter Name | Data Type |
|---|---|
| item | String |
| Parameter Name | Data Type |
|---|---|
| itemDesc | String |
| dept | BigDecimal |
| availQty | BigDecimal |
| averageCost | BigDecimal |
| unitRetail | BigDecimal |
| currencyCode | String |
| standardlUnitOfMeasure | String |
| suppPackSize | BigDecimal |
| innerPackSize | BigDecimal |
| itemImageUrl | String |
JSON Structure
[
{
"links": [],
"item": "100001887",
"itemDesc": "DIT Test 12:Black:Medium",
"dept": 1102,
"availQty": 100,
"averageCost": 5,
"unitRetail": 7.26,
"currencyCode": "USD",
"standardlUnitOfMeasure": "CKG",
"suppPackSize": 1,
"innerPackSize": 1,
"itemImageUrl": null,
"hyperMediaContent": {
"linkRDO": []
}
}
]
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ALLOC_HEADER | Yes | No | No | No |
| ALLOC_DETAIL | Yes | No | No | No |
| DAILY_PURGE | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| ITEM_LOC_SOH | Yes | No | No | No |
| ITEM_IMAGE | Yes | No | No | No |
| ITEM_SUPPLIER | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| ORDHEAD | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| STORE | Yes | No | No | No |
| V_ITEM_MASTER | Yes | No | No | No |
| WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Create Transfer - Refresh Transfer Locations
This section describes the Load Locations service.
Business Overview
Load locations Web service allows user to refresh selected locations records.
Service Type
Get
ReST URL
/Transfer/loadLocations?fromLocation={fromLocation}&toLocation={toLocation}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| FromLocation | No | Selected from location ID. |
| ToLocation | No | Selected to location ID. |
Output
TsfLocSearchResultRDO
| Parameter Name | Data Type |
|---|---|
| location | BigDecimal |
| locType | String |
| locName | String |
| locCurrencyCode | String |
| entity | BigDecimal |
| entityDesc | String |
| tsfLocitemSearchRes | List |
TsfLocitemSearchResRDO
| Parameter Name | Data Type |
|---|---|
| item | String |
| availQty | BigDecimal |
| averageCost | BigDecimal |
| unitRetail | BigDecimal |
Parameter Name Data Type currencyCode String
JSON Structure
[
{
"links": [],
"location": 5991,
"locType": "S",
"locName": "DIT Company Stockholding Store",
"locCurrencyCode": "USD",
"entity": 1000,
"entityDesc": "Regular Stores",
"tsfLocitemSearchRes": [],
"hyperMediaContent": {
"linkRDO": []
}
},
{
"links": [],
"location": 12310101,
"locType": "W",
"locName": "test",
"locCurrencyCode": "USD",
"entity": 1000,
"entityDesc": "Regular Stores",
"tsfLocitemSearchRes": [],
"hyperMediaContent": {
"linkRDO": []
}
}
]
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ALLOC_HEADER | Yes | No | No | No |
| ALLOC_DETAIL | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| ITEM_LOC_SOH | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| MV_LOC_SOB | Yes | No | No | No |
| ORDHEAD | Yes | No | No | No |
| ORG_UNIT | Yes | No | No | No |
| STORE | Yes | No | No | No |
| TRANSFER_LOC | Yes | No | No | No |
| TSF_ENTITY | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_TRANSFER_FROM_LOC | Yes | No | No | No |
| V_TRANSFER_TO_LOC | Yes | No | No | No |
| V_WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Mobile Workflow - Get Locations on Existing Transfers
This section describes the transfer location search service.
Business Overview
The web service enables location search applicable for Transfers. Locations can be searched by either ‘S’tore or ‘W’arehouse, with the subsequent entry of a location number, a partial location number, a location description, or a partial location description in the search string.
The locations returned are constrained by the following criteria:
-
When search type is warehouse then:
- Internal finishers are filtered out
-
When search type is store then:
-
Only company stores are returned
-
Only stockholding stores are returned
-
Service Type
Get
ReST URL
/Transfer/recent/transferLocSearch?
searchString={searchString}&locType={locType}&pageSize={pageSize}&pageNumber={
pageNumber}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| SearchString | No | Search string for locations ID or Name | N/A |
| LocType | No | Location type: Store or warehouse | S,W |
| PageSize | No | Maximum number of locations to retrieve per page | N/A |
| PageNumber | No | Result page to retrieve | N/A |
Output
PagedResultsRDO
| Parameter Name | Data Type |
|---|---|
| totalRecordCount | BigDecimal |
Parameter Name Data Type results List
RtsfLocSearchResultRDO
Parameter Name Data Type location BigDecimal locationType String locationName String currency String
JSON Structure
{
"totalRecordCount": 1,
"results": [
{
"location": null,
"locationType": null,
"locationName": null,
"currency": null,
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
],
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_STORE | Yes | No | No | No |
| V_WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Mobile Workflow - Get Transfer Statuses
This section describes the Transfer Status List service.
Business Overview
Retrieves all valid transfer statuses.
Service Type
Get
ReST URL
/Transfer/recent/transferStatusList
Input Parameters
No input.
Output
CodeDetailRDO
Parameter Name Data Type code String codeDescription String codeSequence BigDecimal JSON Structure [ { "code": null, "codeDescription": null, "codeSequence": null, "links": [ ], "hyperMediaContent": { "linkRDO": [ ] } } ]
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| CODE_HEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Mobile Workflow - Get Transfer Summary
This section describes the Get Transfer Detail service.
Business Overview
Get Transfer Detail service allow user to retrieve Transfer information for a selected transfer number.
Service Type
Get
ReST URL
/Transfer/recent/transferDetail?
transferNumber={transferNumber}&pageSize={pageSize}&pageNumber={pageNumber}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| TransferNumber | Yes | Transfer Number ID |
| PageSize | No | Maximum number of items to |
| retrieve per page | ||
| PageNumber | No | Result page to retrieve |
Output
PagedResultsRDO
| Parameter Name | Data Type |
|---|---|
| totalRecordCount | BigDecimal |
| results | List |
RtsfTsfDtlRDO
| Parameter Name | Data Type |
|---|---|
| transferNumber | BigDecimal |
| status | String |
| fromLocation | BigDecimal |
| fromLocationName | String |
| finisher | BigDecimal |
| finisherName | String |
| toLocation | BigDecimal |
| toLocationName | String |
| transferType | String |
| totalCost | BigDecimal |
| totalRetail | BigDecimal |
| currency | String |
| deliveryDate | Long |
| createId | String |
| createDate | Long |
| transferItemsTable | List |
RtsfTsfDtlItemRDO
| Parameter Name | Data Type |
|---|---|
| item | String |
| itemDescription | String |
| transferQuantity | BigDecimal |
JSON Structure
{
"totalRecordCount": null,
"results": [
{
"transferNumber": null,
"status": null,
"fromLocation": null,
"fromLocationName": null,
"finisher": null,
"finisherName": null,
"toLocation": null,
"toLocationName": null,
"transferType": null,
"totalCost": null,
"totalRetail": null,
"currency": null,
"deliveryDate": null,
"createId": null,
"createDate": null,
"transferItemsTable": [
{
"item": null,
"itemDescription": null,
"transferQuantity": null,
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
],
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ITEM_LOC | Yes | No | No | No |
| ITEM_LOC_SOH | Yes | No | No | No |
| TSF_ITEM_INV_FLOW | Yes | No | No | No |
| V_EXTERNAL_FINISHER | Yes | No | No | No |
| V_INTERNAL_FINISHER | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_ITEM_MASTER | Yes | No | No | No |
| V_LOCATION | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
| V_TSFDETAIL | Yes | No | No | No |
| V_TSFHEAD | Yes | No | No | No |
| V_WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Mobile Workflow - Get Transfer Types
This section describes the Transfer Type List service.
Business Overview
Retrieves all valid transfer types.
Service Type
Get
ReST URL
/Transfer/recent/transferTypeList
Input Parameters
No input.
Output
CodeDetailRDO
Parameter Name Data Type code String codeDescription String codeSequence BigDecimal
JSON Structure
[
{
"code": null,
"codeDescription": null,
"codeSequence": null,
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
]
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| CODE_HEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Mobile Workflow - Get Transfer Users
This section describes the Search Transfer User IDs.
Business Overview
The Search Transfer User IDs service retrieves for all User IDs that created transfers.
Service Type
Get
ReST URL
/Transfer/recent/searchUserIds?
searchString={searchString}&pageSize={pageSize}&pageNumber={pageNumber}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| SearchString | Yes | search string for User Id |
| PageSize | No | Maximum number of transfer user IDs to retrieve per |
| page | ||
| PageNumber | No | Result page to retrieve |
Output
PagedResultsRDO
| Parameter Name | Data Type |
|---|---|
| totalRecordCount | BigDecimal |
| results | List |
VarcharIdRDO
| Parameter Name | Data Type |
|---|---|
| id | String |
JSON Structure
{
"totalRecordCount": null,
"results": [
{
"id": null,
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
],
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_TSFHEAD | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Mobile Workflow - Get Transfers
This section describes the Transfer Search service.
Business Overview
The web services in this area enables search for applicable transfers. Transfers can be searched by their status, transfer types, transfer number, create date, delivery date, create ID, item department and/or locations.The transfers returned are constrained by the following criteria:
-
Customer Orders and Book Transfers are filtered out.
-
Only Transfers with transfer details are returned.
Service Type
Get
ReST URL
/Transfer/recent/transferSearch?
statuses={statuses}&transferTypes={transferTypes}&createIds={createIds}&startC
reateDate={startCreateDate}&endCreateDate={endCreateDate}&startDeliveryDate={s
tartDeliveryDate}&endDeliveryDate={endDeliveryDate}&transferNumber={transferNu
mber}&locations={locations}&departments={departments}&pageSize={pageSize}&page
Number={pageNumber}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| Statuses | No | Comma Separated values for selected transfer statuses | |
| TransferTypes | No | Comma Separated values for selected transfer types | |
| CreateIds | No | Comma Separated values for selected transfer create ID |
| Parameter Name | Required | Description Valid values |
|---|---|---|
| StartCreateDate | No | Start of the range of transfer create dates |
| EndCreateDate | No | End of the range of transfer create dates |
| StartDeliveryDate | No | Start of the range of transfer create dates |
| EndDeliveryDate | No | End of the range of transfer create dates |
| TransferNumber | No | Transfer Number |
| Locations | No | Comma Separated values for selected Location IDs |
| Departments | No | Comma Separated values for selected Department IDs |
| PageSize | No | Maximum number of locations to retrieve per page |
| PageNumber | No | Result page to retrieve |
Output
PagedResultsRDO
| Parameter Name | Data Type |
|---|---|
| totalRecordCount | BigDecimal |
| results | List |
RtsfSearchResRDO
| Parameter Name | Data Type |
|---|---|
| transferNumber | BigDecimal |
| tsfType | String |
| fromLocation | BigDecimal |
| fromLocationType | String |
| fromLocationName | String |
| toLocation | BigDecimal |
| toLocationType | String |
| toLocationName | String |
| status | String |
| totalCost | BigDecimal |
| currency | String |
| deliveryDate | Long |
JSON Structure
{
"totalRecordCount": null,
"results": [
{
"transferNumber": null,
"tsfType": null,
"fromLocation": null,
"fromLocationType": null,
"fromLocationName": null,
"toLocation": null,
"toLocationType": null,
"toLocationName": null,
"status": null,
"totalCost": null,
"currency": null,
"deliveryDate": null,
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
],
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ITEM_LOC_SOH | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| TSFDETAIL | Yes | No | No | No |
| TSFITEM_INV_FLOW | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
| V_TSFDETAIL | Yes | No | No | No |
| V_TSFHEAD | Yes | No | No | No |
| V_WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Mobile Workflow - Refresh Transfer Locations
This section describes the Transfer Location Load service.
Business Overview
This web service allows the user to refresh already selected Transfer locations records.
Service Type
Get
ReST URL
/Transfer/recent/transferLocationLoad?locations={locations}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Locations | No | Comma-separated values for selected locations’ ID |
Output
RtsfLocSearchResultRDO
| Parameter Name | Data Type |
|---|---|
| location | BigDecimal |
| locationType | String |
| locationName | String |
| currency | String |
JSON Structure
[
{
"location": null,
"locationType": null,
"locationName": null,
"currency": null,
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
]
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_STORE | Yes | No | No | No |
| V_WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Mobile Workflow Transfer Upload Service
The following services are included in this functional area:
-
Create Transfer
-
Mobile Workflow - Update Transfer Status
Create Transfer
This section describes the Create Transfer service.
Business Overview
The Web service calls the existing Merchandising XTSF API directly with input parameters. For more information on Merchandising XTSF API, see Store Order Subscription API and Transfer Subscription API sections.
Service Type
Post
ReST URL
/Transfer
Input Parameters
Example JSON RDO Input
{
"links" : [ ],
"tsfdtlRDOs" : [
{
"links" : [ ],
"item" : null,
"tsfQty" : null,
"suppPackSize" : null,
"invStatus" : null,
"unitCost" : null,
"hyperMediaContent" : {
"linkRDO" : [ ]
}
}
],
"tsfNo" : null,
"fromLocType" : null,
"fromLoc" : null,
"toLocType" : null,
"toLoc" : null,
"deliveryDate" : null,
"dept" : null,
"routingCode" : null,
"freightCode" : null,
"tsfType" : null,
"status" : null,
"userId" : null,
"commentDesc" : null,
"contextType" : null,
"contextValue" : null,
"hyperMediaContent" : {
"linkRDO" : [ ]
}
}
Output
N/A
Table Impact
For more information on the Merchandising XTSF API, see the Store Order Subscription API and Transfer Subscription API sections.
Mobile Workflow - Update Transfer Status
This section describes the Update Transfer Status service.
Business Overview
The web service approves or unapproves a transfer or a list of transfers.
Service Type
Post
ReST URL
/Transfer/recent/updateTransferStatus?
newStatus={newStatus}&transferNumbers={transferNumbers}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| NewStatus | Yes | New status of the transfer. May only beA-Approved or I-Input. | A,I |
| TransferNumbers | Yes | Comma Separated values for selected locations’ ID |
Output
N/A
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| TSFHEAD | Yes | No | Yes | No |
| TSFDETAIL | Yes | Yes | Yes | Yes |
| ITEM_LOC | Yes | No | No | No |
| ITEM_LOC_SOH | Yes | No | Yes | No |
| ITEM_MASTER | Yes | No | No | No |
| PACKITEM_BREAKOUT | Yes | No | No | No |
| STORE | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| V_TSFHEAD | Yes | No | No | No |
| WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Stock Order Status Upload Service
The following services are included in this functional area:
- Manage Stock Order Status
Manage Stock Order Status
Functional Area
Inventory - Transfers and Allocations
Business Overview
A stock order is an outbound merchandise request from a warehouse or store. In Merchandising, a stock order takes the form of either a transfer or allocation. Merchandising subscribes to stock order status messages published by an external application, such as a store system (SIOCS, for example) or a warehouse management system (Oracle WMS Cloud, for example) to communicate the status of a specific stock order.
Listed are the stock order statuses for both transfers and allocation document types and what occurs in Merchandising after receiving the respective status. Statuses other than listed below are ignored by Merchandising.
Statuses for Document Types T, D, and S
Document types of T, D, and S all refer to transfers and indicate if the transfer is initiated in Merchandising, a warehouse system, or a store system, respectively.
-
SI (Stock Increased) - Insert or increase transfer quantity and increase item/location transfer reserve quantity for the source location and transfer expected quantity for the destination location.
-
SD (Stock Decreased) - Delete or decrease the transfer quantity for the transfer/item combination. Transfer quantity for the transfer/item combination will be deleted if the transfer has been created but has not been shipped. Additionally, the item/location transfer reserved quantity for the source location and the transfer expected quantity for the destination location will be decreased.
-
DS (Details Selected) - Increase the selected quantity for the transfer/item combination.
-
DU (Details Un-selected) - Decrease selected and transfer quantity for the transfer/item by the quantity on the message and increase the cancelled quantity. Additionally, it will decrease the reserved quantity for the source location and decrease the expected quantity for the destination location by the lesser of the quantity on the message and transfer - shipped quantity. The transfer will also be added to the document close queue if transfer status is not closed. Document Close batch program will then determine if the transfer should be closed based on certain conditions. Transfers with outstanding appointments are not closed.
-
PP (Distributed) - Decreases the selected quantity and increases the distro quantity for the transfer/item.
-
PU (Un-Distribute) - Decreases the distro quantity for the transfer/item.
-
RS (Return to Stock) - Decreases distro quantity and transfer quantity for the transfer/item; the cancelled quantity for the transfer/item is increased. Additionally, transfer reserved is decreased for the item/source location and transfer expected is decreased for the item/ destination location for the lesser of the quantity in the message and the transfer - shipped quantity if the transfer status is not closed.
-
EX (Expired) - Decreases transfer quantity for the transfer/item; the cancelled quantity for the transfer/item is increased. Additionally, transfer reserved is decreased for the item/ source location and transfer expected is decreased for the item/destination location for the lesser of the quantity in the message and the transfer - shipped quantity if the transfer status is not closed. The transfer will also be added to the document close queue if transfer status is not closed. Document Close batch program will then determine if the transfer
should be closed based on certain conditions. Transfers with outstanding appointments are not closed.
- SR (Store Reassign) - Updates the distro quantity for the transfer/item. This can either increase or decrease the value, depending on whether a positive or negative value is sent.
Statuses for Document Type A
Document type A is always used for Allocations.
-
SI (Stock Increased) - Insert or increase allocated quantity and increase item/location transfer reserve quantity for the source location and transfer expected quantity for the destination location.
-
SD (Stock Decreased) - Decrease the allocated quantity for the allocation/item combination. Additionally, the item/location transfer reserved quantity for the source location and the transfer expected quantity for the destination location will be decreased.
-
DS (Details Selected) - Increase the selected quantity for the allocation/item combination.
-
DU (Details Un-Selected) - Decrease the selected quantity for the allocation/item combination.
-
NI (WMS Line Cancellation) - Decrease selected and allocation quantity for the allocation/ item by the quantity on the message and increase the cancelled quantity. Additionally, it will decrease the reserved quantity for the source location and decrease the expected quantity for the destination location by the lesser of the quantity on the message and allocation - shipped quantity if the allocation is not closed. The allocation will also be added to the document close queue if allocation status is not closed. Document Close batch program will then determine if the allocation should be closed based on certain conditions. Allocations with outstanding appointments are not closed.
-
PP (Distributed) - Decreases the selected quantity and increases the distro quantity for the allocation/item.
-
PU (Un-Distribute) - Decreases the distro quantity for the allocation/item.
-
RS (Return to Stock) - Decreases distro quantity and allocation quantity for the allocation/ item; the cancelled quantity for the allocation/item is increased. Additionally, transfer reserved is decreased for the item/source location and transfer expected is decreased for the item/destination location for the lesser of the quantity in the message and the allocation - shipped quantity if the allocation status is not closed.
-
EX (Expired) - Decreases allocation quantity for the allocation/item; the cancelled quantity for the allocation/item is increased. Additionally, transfer reserved is decreased for the item/source location and transfer expected is decreased for the item/destination location for the lesser of the quantity in the message and the allocation - shipped quantity if the allocation status is not closed. The allocation will also be added to the document close queue if allocation status is not closed. Document Close batch program will then determine if the allocation should be closed based on certain conditions. Allocations with outstanding appointments are not closed.
-
SR (Store Reassign) - Updates the distro quantity for the allocation/item. This can either increase or decrease the value, depending on whether a positive or negative value is sent.
For customer orders, Merchandising assumes it will get updates from an OMS for customer order related stock orders. Therefore, to avoid duplicate processing, Merchandising will ignore No Inventory, Expired, Stock Decreased, and Stock Increased statuses received for a customer order transfer.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/stockOrders/status/manage
Input Payload Details
Table 5-352 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of stock order status records. |
Table 5-353 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| location | Yes | Number (10) | Contains the location number of the stock order source location. |
| distroNo | No | Number (12) | This feld contains the stock order number. This is either the transfer or allocation number in Merchandising. |
| distroType | Yes | String (1) | This feld specifes whether the stock order status pertains to an allocation (A) or transfer (T - transfers created in Merchandising, D - transfers created in a warehouse management system or S - transfers created in a store inventory system) that is already existing in Merchandising. Customer Order (C), and Virtual Distro (V) are also valid document types but will be ignored by Merchandising. |
Table 5-353 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| contextType | No | String (6) | This feld holds the reason code related to which a transfer is made. Valid values are found in the code type CNTX. Examples are Promotion (PROM), Customer Transfer (WED), Store Requisition (STORE) and Repairing (REPAIR). |
| contextValue | No | String (25) | This feld holds the value relating to the context type like promotion number. |
| inventoryType | No | String (6) | This feld indicates if a transfer is made from the available (A) or unavailable (U) inventory. |
| customerOrderNo | No | String (48) | This feld holds the master customer order number for a stock order associated with a customer order. |
| fulfllOrderNo | No | String (48) | This feld holds the number related to the fulfllment details for a stock order associated with a customer order. One or more fulfllment orders could relate back to a single customer order. |
| details | Yes | Collection of Object | References a collection of stock order details. |
Table 5-354 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| toLocation | Yes | Number (10) | Contains the location number of the stock order receiving location. |
| item | Yes | String (25) | This contains the unique identifer for the item. |
Table 5-354 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| unitQuantity | No | Number (12,4) | This feld contains the difference between the number of item units shipped versus the receiving count for the given item. This is subtracted from the document-line-item- unit-count to yield an over/under variance between what a supplier said was shipped and what was counted and received at by the store’s staff. |
| status | Yes | String (2) | This feld contains the status of the stock order. Valid values are: Accepted (SI), Rejected (SD), Distributed (PP), Un- Distributed (PU), Details Selected (DS), Details Un-selected (DU), WMS Line Cancellation (NI), Return To Stock (RS), Expired (EX), and Store Reassign (SR). Statuses other than listed are ignored by Merchandising. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"location": 2,
"distroNo": 100000190000,
"distroType": "T",
"contextType": "PROM",
"contextValue": "2255",
"inventoryType": "A",
"customerOrderNo": null,
"fulfillOrderNo": null,
"details": [
{
"toLocation": 1211,
"item": "102900034",
"unitQuantity": 10,
"status": "SI"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Transfer Detail Service
This section describes the Transfer Detail service.
Business Overview
Transfer Detail service allows user to retrieve details for a given transfer.
Service Type
Get
ReST URL
Transfer/transferDetail?transferNumber={transferNumber}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Transfer Number | Yes | Transfer number |
Output
RestTsfheadRecRDO
| Parameter Name | Data Type |
|---|---|
| tsfNo | BigDecimal |
| tsfParentNo | BigDecimal |
| fromLocType | String |
| fromLoc | BigDecimal |
| toLocType | String |
| toLoc | BigDecimal |
| expDcDate | Timestamp |
| dept | BigDecimal |
| inventoryType | String |
| tsfType | String |
| status | String |
| deliveryDate | Timestamp |
| closeDate | Timestamp |
| notAfterDate | Timestamp |
| contextType | String |
| contextValue | String |
| wfOrderNo | BigDecimal |
| tsfdetail | List |
RestTsfdetailRecRDO
| Parameter Name | Data Type |
|---|---|
| tsfSeqNo | BigDecimal |
| item | String |
| invStatus | BigDecimal |
| tsfPrice | BigDecimal |
| tsfQty | BigDecimal |
| fillQty | BigDecimal |
| shipQty | BigDecimal |
| receivedQty | BigDecimal |
| reconciledQty | BigDecimal |
| distroQty | BigDecimal |
| selectedQty | BigDecimal |
| Parameter Name | Data Type |
|---|---|
| cancelledQty | BigDecimal |
| suppPackSize | BigDecimal |
| tsfCost | BigDecimal |
| publishInd | String |
JSON Structure
{
"tsfNo": null,
"tsfParentNo": null,
"fromLocType": null,
"fromLoc": null,
"toLocType": null,
"toLoc": null,
"expDcDate": null,
"dept": null,
"inventoryType": null,
"tsfType": null,
"status": null,
"deliveryDate": null,
"closeDate": null,
"notAfterDate": null,
"contextType": null,
"contextValue": null,
"wfOrderNo": null,
"tsfdetail": [
{
"tsfSeqNo": null,
"item": null,
"invStatus": null,
"tsfPrice": null,
"tsfQty": null,
"fillQty": null,
"shipQty": null,
"receivedQty": null,
"reconciledQty": null,
"distroQty": null,
"selectedQty": null,
"cancelledQty": null,
"suppPackSize": null,
"tsfCost": null,
"publishInd": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| TSFHEAD | Yes | No | No | No |
| TSFDETAIL | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Transfer Download Service
The following services are included in this functional area:
-
Get Transfer
-
Get Transfer Details for Provided Transfer
Get Transfer
Endpoint
MerchIntegrations/services/inventory/transfer
MerchIntegrations/services/inventory/transfer/{tsfNo}
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service publishes transfer transactions to downstream consuming systems. It covers transfer header and line-detail information for stock movement between stores, warehouses, internal finishers, and external finishers, and, for customer-order transfers, it also publishes delivery, billing, and consumer-fulfillment enrichment. Only transfers in Approved (A), Shipped (S), Closed (C), Picked (P), or Selected (L) status are published. Transfers still in Input (I), Submitted (B), externally closed (X), or Deleted (D) status do not appear in this API payload.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: TSFHEAD, TSFDETAIL, ORDCUST
Additional business tables: ITEM_LOC, ITEM_TICKET, PACKITEM_BREAKOUT, ITEM_MASTER, ORDCUST_DETAIL, ORDCUST_CUSTOMER_DETAIL, STORE, WH, PARTNER, DELIVERY_SLOT, V_CODE_DETAIL_TL, SYSTEM_OPTIONS, TSFHEAD_CFA_EXT
JSON cache table: MERCHAPI_EXT_TRANSFER
JSON generation view: V_MERCHAPI_EXT_TSF_JSON
Pulls transfer header data from TSFHEAD, line details from TSFDETAIL, item-location selling attributes from ITEM_LOC, ticket and component detail from ITEM_TICKET, PACKITEM_BREAKOUT, and ITEM_MASTER, customer-order enrichment from ORDCUST, ORDCUST_DETAIL, and ORDCUST_CUSTOMER_DETAIL, delivery-slot text from DELIVERY_SLOT, location enrichment from STORE, WH, and PARTNER, and custom flex attributes from MERCHAPI_EXT_TRANSFER_CFA.
The view only publishes transfers whose TSFHEAD.STATUS is one of A, S, C, P, or L, so input, submitted, externally closed, and already-deleted transfer headers are not published through this API.
The view also derives additional business fields needed by downstream consumers.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_TSF_JSON and apply TSFHEAD.STATUS IN (‘A’,‘S’,‘C’,‘P’,‘L’).
Mark cache rows deleted when the transfer no longer exists in TSFHEAD.
ICL (Integration Change Log) table: ICL_RMS_TRANSFER (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on TSFHEAD, TSFDETAIL, TSFHEAD_CFA_EXT, and qualifying ORDCUST updates.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_TRANSFER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_TRANSFER_ADHOC_PROCESS → MERCHAPI_EXT_TRANSFER_ADHOC_JOB
Webhook configuration api name: inventory/transfer
Special handling
Additional GET query parameters: fromLoc, toLoc, fromLocType, toLocType.
These filters are not backed by dedicated cache-table indexes. At high volume, use them only as additional criteria on top of a small-window delta fetch and not for full downloads.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime characteristics and should be evaluated separately. Because this service builds transfer messages from multiple base and supporting tables, including customer-order enrichment and line-detail expansion, the available configuration should be validated against the customer production transfer profile, with the key performance-related configuration for this service covering the following:
Multi-threading and commit control
This service supports multi-threaded execution for both initial seeding and delta processing. Thread count is controlled through API_NO_OF_THREADS, commit sizing through API_COMMIT_MAX_COUNTER, and long-running initial seeding can also be segmented through API_EXEC_SECONDS.
Thread and commit settings should be chosen together based on expected row volume, average message size, and the complex SQL query required to build the message from multiple base and supporting tables. Common starting points for large-volume runs are 8, 16, or 32 threads. Values of 48 or 64 threads should be considered only after testing and with awareness of competing workload in the environment.
API_COMMIT_MAX_COUNTER should be sized together with the thread setting. Typical values range from about 1,000 rows and can extend to 10,000.
API_EXEC_SECONDS is mainly relevant for initial seeding. A value of about 30 minutes helps the batch pause and resume cleanly so tuning changes can be applied between runs if needed.
Dropping indexes and constraints during seeding
This option applies only to initial seeding, including truncate-and-load execution. When thread and commit settings are high, concurrent inserts can increase index maintenance overhead and slow the load.
To reduce that overhead, DROP_INDEX_ON_REFRESH can be enabled so indexes and constraints are dropped before seeding and rebuilt after the load completes. GATHER_STATS_ON_REFRESH should normally remain enabled unless testing shows a specific reason to change it.
REST fetch considerations
Transfer payloads can be comparatively large, so REST page size should be selected based on average payload size so the average response remains below about 10 MB per call. Common page-limit values are 500, 1,000, 5,000, or 10,000 rows, with the lower end often proving better for broader transfer messages.
For full downloads, do not provide the since query parameter so the database can favor the primary-key access path. For delta downloads, use a small time window, typically a few minutes and at most a few hours, so the eligible row set on the LAST_UPDATE_DATETIME index remains small.
Wider delta windows, especially multi-day windows that can arise during outages or data recovery, generally do not perform well. For such scenarios, keeping BUILD_HISTOGRAM enabled allows the service to support recovery through smaller, more selective polling windows using the optimalBefore query parameter.
In this catch-up pattern, for requests up to 30 days in the past, the client provides optimalBefore and leaves before empty. The client then uses the returned before timestamp to continue polling incrementally until the backlog is cleared, and then resumes the normal shortwindow delta pattern. Hourly histogram processing groups LAST_UPDATE_DATETIME values into buckets of 10,000 rows in MERCHAPI_TIMESTAMP_HISTOGRAM using the shared HISTOGRAM_ROW_COUNT configuration.
Service Type
GET
ReST URL
MerchIntegrations/services/inventory/transfer
MerchIntegrations/services/inventory/transfer/{tsfNo}
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| fromLoc | No | Number | From Location |
| toLoc | No | Number | To Location |
| fromLocType | No | String | From Location Type |
| toLocType | No | String | To Location Type |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-355 Input Parameter for “MerchIntegrations/services/inventory/transfer/ {tsfNo}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| tsfNo | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
Table 5-355 (Cont.) Input Parameter for “MerchIntegrations/services/inventory/transfer/ {tsfNo}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-356 PageResultsItemsMerchApiTransfer - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-357 MerchApiTransfer - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for transfer details. |
| transferNo | No | Number(12,0) | This feld specifes a number that uniquely identifes the transfer within the system. |
| docType | No | String (1) | This feld is defaulted to T for transfers. |
Table 5-357 (Cont.) MerchApiTransfer - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| physicalFromLocation | No | Number(10,0) | This feld specifes the number that is used to identify the physical warehouse for a virtual warehouse when the from location is a warehouse. Store ID is populated when the from location is a store. |
| fromLocationType | No | String (1) | This feld specifes the location type of the transfer from location. |
| fromStoreType | No | String (6) | This feld specifes whether a particular store is a franchise or company store if the from location is a store. This feld is not populated if the from location is a warehouse. |
| fromStockholdingInd | No | String (1) | This feld specifes whether the store can hold stock. In a non- multichannel environment this will always be Y if the from location is a store. This feld is not populated if the from location is a warehouse. |
| fromLocation | No | Number(10,0) | This feld specifes the location number of the transfer from location. |
| physicalToLocation | No | Number(10,0) | This feld specifes the number that is used to identify the physical warehouse for a virtual warehouse when the to location is a warehouse. Store ID is populated when the to location is a store. |
| toLocationType | No | String (1) | This feld specifes the location type of the transfer to location. |
Table 5-357 (Cont.) MerchApiTransfer - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| toStoreType | No | String (6) | This feld specifes whether a particular store is a franchise or company store if the to location is a store. This feld is not populated if the to location is a warehouse. |
| toStockholdingInd | No | String (1) | This feld specifes whether the store can hold stock. In a non- multichannel environment this will always be Y if the to location is a store. This feld is not populated if the to location is a warehouse. |
| toLocation | No | Number(10,0) | This feld specifes the location number of the transfer to location. |
| transferType | No | String (6) | This feld identifes the type or reason for the transfer. |
| pickNotBeforeDate | No | date | This feld specifes the date the transfer was approved. |
| pickNotAfterDate | No | date | This feld is calculated as the transfer approval date plus the days from code_detail where code_type = ‘DEFT’ and code = ‘DATE’. |
| orderType | No | String (9) | This feld specifes the order type associated with transfers. RWMS uses this value to determine how to distribute stock orders. |
| breakByDistro | No | String (1) | This feld is set to ‘Y’ if the delivery_type for the transfer’s customer is ‘S’. Otherwise, it is set to ‘N’. |
| deliveryDate | No | date | This feld specifes the earliest date that the transfer can be delivered to the store. This will be populated if the transfer type is PO-Linked. |
Table 5-357 (Cont.) MerchApiTransfer - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| deliverAdd1 | No | String (240) | For customer order transfers, this feld contains the frst line of the customer’s delivery address. For other types of transfer this feld is not populated. |
| deliverAdd2 | No | String (240) | For customer order transfers, this feld contains the second line of the customer’s delivery address. For other types of transfer this feld is not populated. |
| deliverCity | No | String (120) | For customer order transfers, this feld contains the city portion of the customer’s delivery address. For other types of transfer this feld is not populated. |
| deliverState | No | String (3) | For customer order transfers, this feld contains the state portion of the customer’s delivery address. For other types of transfer this feld is not populated. |
| deliverPost | No | String (30) | For customer order transfers, this feld contains the postal code portion of the customer’s delivery address. For other types of transfer this feld is not populated. |
| deliverCountryId | No | String (3) | For customer order transfers, this feld contains the country portion of the customer’s delivery address. For other types of transfer this feld is not populated. |
| comments | No | String (2000) | This feld specifes any comments associated with the transfer. |
Table 5-357 (Cont.) MerchApiTransfer - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferParentNo | No | Number(12,0) | This feld identifes the transfer at the level above the transfer. |
| expectedDcDate | No | date | This feld specifes the date the inventory is expected to arrive at the DC. |
| expectedDcEowDate | No | date | This column holds the eow_date for the exp_dc_date column. It is used for OTB extracts for intercompany transfers. |
| approvalId | No | String (30) | This feld specifes the ID of the user who approved the transfer. |
| approvalDate | No | date | This feld specifes the date the transfer was approved. |
| fromLocationTransfer Entity | No | Number(10,0) | This feld specifes the transfer entity of the from location. |
| toLocationTransferEnt ity | No | Number(10,0) | This feld specifes the transfer entity of the to location. |
| invType | No | String (6) | This feld specifes that a transfer can only contain available or unavailable merchandise, never a combination of both. This feld indicates whether the transfer is for available inventory or unavailable inventory. |
| transferStatus | No | String (1) | This feld specifes the status of the transfer. |
| notAfterDate | No | date | This feld specifes the last day delivery of the transfer will be accepted. |
| contextType | No | String (6) | This feld can be used to indicate the transfer reason or category, for example ‘promotion’. |
Table 5-357 (Cont.) MerchApiTransfer - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| contextValue | No | String (25) | This feld can be used to further indicate the reason or category for the transfer. For instance, if context_type was ’promotion’, this could be the promotion number. |
| deliverySlotId | No | String (15) | This feld specifes when the transfer quantity is needed at the location. |
| deliverySlotDescriptio n | No | String (240) | This feld specifes the delivery slot description. |
| customerOrderNo | No | String (48) | For customer order transfers, this feld contains the master customer order number from the Order Management System. |
| fulfllmentOrderNumb er | No | String (48) | This feld contains the fulfllment order number for the transfer as provided by OMS. One or more fulfllment orders could relate back to a single customer order in OMS. |
| carrierCode | No | String (4) | This feld indicates the carrier the order is to be shipped with, if specifed on the order. |
| carrierServiceCode | No | String (6) | This feld indicates the method that was selected for shipping by the customer placing the order (for example, Standard Shipping or Overnight). |
| consumerDeliveryDate | No | date | This feld specifes the desired date the delivery is required by the customer. |
| consumerDeliveryTim e | No | dateTime | This feld specifes the desired time the delivery is required by the customer. |
Table 5-357 (Cont.) MerchApiTransfer - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| deliverFirstName | No | String (120) | For customer order transfers, this feld contains the frst name for the delivery address on the order. For other types of transfer this feld is not populated. |
| deliverPhoneticFirst | No | String (120) | For customer order transfers, this feld contains the phonetic frst name for the delivery address on the order. For other types of transfer this feld is not populated. |
| deliverLastName | No | String (120) | For customer order transfers, this feld contains the last name for the delivery address on the order. For other types of transfer this feld is not populated. |
| deliverPhoneticLast | No | String (120) | For customer order transfers, this feld contains the phonetic last name for the delivery address on the order. For other types of transfer this feld is not populated. |
| deliverPreferredName | No | String (120) | For customer order transfers, this feld contains the preferred name for the delivery address on the order. For other types of transfer this feld is not populated. |
| deliverCompanyName | No | String (120) | For customer order transfers, this feld contains the company name for the delivery address on the order. For other types of transfer this feld is not populated. |
Table 5-357 (Cont.) MerchApiTransfer - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| deliverAdd3 | No | String (240) | For customer order transfers, this feld contains the third line of the customer’s delivery address. For other types of transfer this feld is not populated. |
| deliverCounty | No | String (250) | For customer order transfers, this feld contains the county portion of the customer’s delivery address. For other types of transfer this feld is not populated. |
| deliverPhone | No | String (20) | For customer order transfers, this feld contains the delivery phone number. For other types of transfer this feld is not populated. |
| billFirstName | No | String (120) | For customer order transfers, this feld contains the frst name for the billing address on the order. For other types of transfer this feld is not populated. |
| billPhoneticFirst | No | String (120) | For customer order transfers, this feld contains the phonetic frst name for the billing address on the order. For other types of transfer this feld is not populated. |
| billLastName | No | String (120) | For customer order transfers, this feld contains the last name for the billing address on the order. For other types of transfer this feld is not populated. |
| billPhoneticLast | No | String (120) | For customer order transfers, this feld contains the phonetic last name for the billing address on the order. For other types of transfer this feld is not populated. |
Table 5-357 (Cont.) MerchApiTransfer - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| billPreferredName | No | String (120) | For customer order transfers, this feld contains the preferred name for the billing address on the order. For other types of transfer this feld is not populated. |
| billCompanyName | No | String (120) | For customer order transfers, this feld contains the company name for the billing address on the order. For other types of transfer this feld is not populated. |
| billAdd1 | No | String (240) | For customer order transfers, this feld contains the frst line of the customer’s billing address. For other types of transfer this feld is not populated. |
| billAdd2 | No | String (240) | For customer order transfers, this feld contains the second line of the customer’s billing address. For other types of transfer this feld is not populated. |
| billAdd3 | No | String (240) | For customer order transfers, this feld contains the third line of the customer’s billing address. For other types of transfer this feld is not populated. |
| billCounty | No | String (250) | For customer order transfers, this feld contains the county portion of the customer’s billing address. For other types of transfer this feld is not populated. |
Table 5-357 (Cont.) MerchApiTransfer - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| billCity | No | String (120) | For customer order transfers, this feld contains the city portion of the customer’s billing address. For other types of transfer this feld is not populated. |
| billCountry | No | String (3) | For customer order transfers, this feld contains the country portion of the customer’s billing address. For other types of transfer this feld is not populated. |
| billPost | No | String (30) | For customer order transfers, this feld contains the postal code portion of the customer’s billing address. For other types of transfer this feld is not populated. |
| billState | No | String (3) | For customer order transfers, this feld contains the state portion of the customer’s billing address. For other types of transfer this feld is not populated. |
| billPhone | No | String (20) | For customer order transfers, this feld contains the billing phone number. For other types of transfer this feld is not populated. |
| partialDeliveryInd | No | String (1) | For customer order transfers, this feld indicates if the order can be picked and shipped partially or if it should be shipped only when complete. |
| consumerDirectInd | No | String (1) | This feld indicates the order as being consumer direct (Y) or not (N). An order is consumer direct if it is a customer order. |
Table 5-357 (Cont.) MerchApiTransfer - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | No | Number(12,0) | This feld contains the import order number for which the intercompany book transfer was created for POs created using an importer. |
| freightCode | No | String (1) | This feld is used to determine the priority for this transfer. Valid values for this feld are: N - Normal, E - Expedite, H - Hold. |
| routingCode | No | String (1) | This feld is used to indicate the type of freight to use on the transfer. Valid values are 1 - 1 day expedite, 2 - 2 day expedite, 3 - 3 day expedite. |
| externalReferenceNo | No | String (14) | This feld contains the audit trail reference to an external system when an external transaction initiates master record creation in the Oracle Retail system. |
| massReturnTransferN o | No | Number(10,0) | This feld holds the mass return transfer number with which this transfer is associated. This is the primary key for the table MRT. |
| restockingPercentage | No | Number(12,4) | This feld holds the percentage of cost charged by the receiving location for re-stocking. |
| franchiseOrder | No | Number(10,0) | This feld holds the franchise order number this transfer is linked to. |
| franchiseReturnAutho rizationNo | No | Number(10,0) | This feld holds the franchise return number this transfer is linked to. |
Table 5-357 (Cont.) MerchApiTransfer - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| franchiseNeedDate | No | date | This feld contains the need date of the franchise order. This is populated only for franchise order transfers. |
| closeDate | No | date | This feld contains the date the transfer was closed. |
| createId | No | String (254) | This feld contains the user ID of the user that created the transfer. |
| createDateTime | No | dateTime | This column holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This column holds the date and time when the record was last updated (UTC). |
| details | No | Collection of Object | This list holds attributes for transfer record details. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the transfer. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the transfer record was frst picked for processing from the ICL table. |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication. |
Table 5-358 TransferDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferSeqNo | No | Number(8,0) | This feld contains a sequence number that, when combined with the transfer number, makes this detail row unique. |
| item | No | String (25) | This feld specifes the unique alphanumeric value that identifes the item. |
Table 5-358 (Cont.) TransferDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferQuantity | No | Number(12,4) | This feld specifes the total quantity of the item reserved at the from location for this transfer. |
| price | No | Number(20,4) | This feld specifes the unit retail price in the selling unit of measure for the item/location combination. |
| sellingUom | No | String (4) | This feld specifes the selling unit of measure of the item. |
| expediteFlag | No | String (1) | This feld is determined from the transfer’s freight code feld. |
| storeOrderMultiple | No | String (1) | This feld specifes the multiple in which the item needs to be shipped from a warehouse to the location. |
| transferOrderLinkNo | No | Number(12,0) | This feld specifes the reference number to link the item on the transfer to any purchase orders that have been created to allow the from location (that is, warehouse) on the transfer to fulfll the transfer quantity to the to location (that is, store) on the transfer. |
| ticketTypeId | No | String (4) | This feld specifes the ticket type associated with the item. |
| ticketDetails | No | Collection of Object | This list holds attributes for transfer detail ticket records. |
| invStatus | No | Number(2,0) | This feld specifes inventory status, if one exists, for the transfer detail record. The inventory status feld corresponds to the inventory status type found on the INV_STATUS_TYPES table. |
Table 5-358 (Cont.) TransferDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transactionUom | No | String (4) | This feld specifes the original transaction unit of measure to be passed on to the store system. It is only used for customer direct orders coming from the Order Management System. All quantities in the response payload are expressed in the item’s standard unit of measure. |
| itemLineNo | No | Number(10,0) | This feld specifes the detail item line number for customer order transfers. For other types of transfer this feld is not populated. |
| comments | No | String (2000) | This feld specifes any comments associated with the transfer line item. |
| transferPrice | No | Number(20,4) | This feld holds the unit cost of the item that will be used for this specifc transfer if being transferred at something other than current WAC. This feld should only have a value for intercompany transfers. |
| transferCost | No | Number(20,4) | This feld holds the unit cost of the item that will be used for this specifc transfer if the current shipping location’s WAC is not used. |
| supplierPackSize | No | Number(12,4) | This feld contains the supplier pack size for this transfer/item. |
Table 5-358 (Cont.) TransferDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| defaultCharges2ndLeg Ind | No | String (1) | This feld is an indicator to identify whether item up charges, if they exist, should be defaulted to the 2nd leg of the transfer. The valid values are Y, N, and NULL. Its value is set on the transfer detail form when applying item up charges to the 1st leg. |
| restockingPercentage | No | Number(12,4) | This feld contains the percentage of cost charged by the supplier for re- stocking. This could be different than the restocking percentage held in TSFHEAD if the user decides to change the percentage at item level. |
| fnisherAverageRetail | No | Number(20,4) | This feld is applicable to two-legged transfers and contains the weighted average retail of all the units of the transfer item currently at or in transit to the fnisher. |
| fnisherUnits | No | Number(12,4) | This feld is applicable to two-legged transfers and contains the number of units of the transfer item currently at or in transit to the fnisher. |
| createDateTime | No | dateTime | This column holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This column holds the date and time when the record was last updated (UTC). |
Table 5-359 TransferDetailsTicket - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentItem | No | String (25) | This feld specifes the alphanumeric value that identifes the component item within the pack. |
| componentPrice | No | Number(20,4) | This feld specifes the unit retail price in the selling unit retail of the component item within the pack. |
| componentSellingUom | No | String (4) | This feld specifes the selling unit of measure for a component item within the pack. |
Table 5-360 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-361 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-361 (Cont.) LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"transferNo": 12300056,
"docType": null,
"physicalFromLocation": 1,
"fromLocationType": "S",
"fromStoreType": "C",
"fromStockholdingInd": "Y",
"fromLocation": 1521,
"physicalToLocation": 1,
"toLocationType": "S",
"toStoreType": "C",
"toStockholdingInd": "Y",
"toLocation": 1511,
"transferType": "AD",
"pickNotBeforeDate": "2001-12-31",
"pickNotAfterDate": "2001-12-31",
"orderType": null,
"breakByDistro": null,
"deliveryDate": "2001-12-31",
"deliverAdd1": null,
"deliverAdd2": null,
"deliverCity": null,
"deliverState": null,
"deliverPost": null,
"deliverCountryId": null,
"comments": "transfer to loc 1511",
"transferParentNo": 1,
"expectedDcDate": "2001-12-31",
"expectedDcEowDate": "2001-12-31",
"approvalId": null,
"approvalDate": "2001-12-31",
"fromLocationTransferEntity": 1,
"toLocationTransferEntity": 1,
"invType": null,
"transferStatus": null,
"notAfterDate": "2001-12-31",
"contextType": null,
"contextValue": null,
"deliverySlotId": null,
"deliverySlotDescription": null,
"customerOrderNo": "12342132156",
"fulfillmentOrderNumber": "123123213",
"carrierCode": "30",
"carrierServiceCode": "D",
"consumerDeliveryDate": "2001-12-31",
"consumerDeliveryTime": "2001-12-31T23:59:59.000Z",
"deliverFirstName": null,
"deliverPhoneticFirst": null,
"deliverLastName": null,
"deliverPhoneticLast": null,
"deliverPreferredName": null,
"deliverCompanyName": null,
"deliverAdd3": null,
"deliverCounty": null,
"deliverPhone": null,
"billFirstName": null,
"billPhoneticFirst": null,
"billLastName": null,
"billPhoneticLast": null,
"billPreferredName": null,
"billCompanyName": null,
"billAdd1": null,
"billAdd2": null,
"billAdd3": null,
"billCounty": null,
"billCity": null,
"billCountry": null,
"billPost": null,
"billState": null,
"billPhone": null,
"partialDeliveryInd": "N",
"consumerDirectInd": null,
"orderNo": 464690012,
"freightCode": "N",
"routingCode": null,
"externalReferenceNo": null,
"massReturnTransferNo": 1,
"restockingPercentage": 1.0,
"franchiseOrder": 1,
"franchiseReturnAuthorizationNo": 1,
"franchiseNeedDate": "2001-12-31",
"closeDate": "2001-12-31",
"createId": "RMS01APP",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"details": [
{
"transferSeqNo": 1,
"item": "104100022",
"transferQuantity": 3,
"price": 1.0,
"sellingUom": "EA",
"expediteFlag": "Y",
"storeOrderMultiple": null,
"transferOrderLinkNo": 1,
"ticketTypeId": null,
"ticketDetails": [
{
"componentItem": null,
"componentPrice": 1.0,
"componentSellingUom": "EA"
}
],
"invStatus": 1,
"transactionUom": "EA",
"itemLineNo": 1,
"comments": null,
"transferPrice": 1.0,
"transferCost": 1.0,
"supplierPackSize": 3,
"defaultCharges2ndLegInd": null,
"restockingPercentage": 1.0,
"finisherAverageRetail": 1.0,
"finisherUnits": 1.0,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | Yes | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_TRANSFER | Yes | No | Yes | Yes |
| MERCHAPI_EXT_TRANSFER | Yes | Yes | Yes | Yes |
| MERCHAPI_EXT_TRANSFER_CFA | No | Yes | No | Yes |
| TSFHEAD | Yes | No | No | No |
| TSFHEAD_CFA_EXT | Yes | No | No | No |
| V_MERCHAPI_EXT_TSF_JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
Get Transfer Details for Provided Transfer
Endpoint
MerchIntegrations/services/inventory/transfer
MerchIntegrations/services/inventory/transfer/{tsfNo}
Functional Area
Inventory - Transfers
Business Overview
This service can be used by external applications to get all or selected transfers and its details from Merchandising.
Service Type
GET
ReST URL
/MerchIntegrations/services/inventory/transfer?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. |
Format:yyyy-mm-dd"T"hh24:mi:ss.fftzh:tzm | |||
| before | No | String | Before Date |
Format:yyyy-mm-dd"T"hh24:mi:ss.fftzh:tzm | |||
| fromLoc | No | Number | Source Location |
| toLoc | No | Number | Destination location |
| fromLocType | No | String | Source location type |
| toLocType | No | String | Destination location type |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| offsetkey | No | String | Offset Key. Valid Value is transfer ID. |
| limit | No | BigDecimal | Pagination limit. Default Value is1000. |
Output
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for Item details. Valid Values are INSERT, UPDATE and DELETE. |
| transferNo | Number | This feld specifes a number that uniquely identifes the transfer within the system. |
| docType | String | This feld Specifes the type of document. This feld is defaulted to T for Transfers. |
| physicalFromLocation | String | This feld specifes number that is used to identify physical warehouse for virtual warehouse in case from location is warehouse. Store+ id is populated in case of store. |
| fromLocationType | String | This feld specifes the location type of from location of the transfer |
| fromStoreType | String | This feld specifes whether a particular store is a franchise or company store if from location is Store. Field not populated if from location is Warehouse. |
| fromStockholdingInd | Number | This feld specifes whether the store can hold stock. In a non-multichannel environment this will always be Y, if from location is Store. Field not populated if from location is Warehouse. |
| fromLocation | Number | This feld specifes location number of the transfer from location. |
| physicalToLocation | String | This feld specifes number that is used to identify physical warehouse for virtual warehouse in case to location is warehouse. Store id is populated in case of store. |
| toLocationType | String | This feld specifes the location type of to location of the transfer. |
| toStoreType | String | This feld specifes whether a particular store is a franchise or company store if to location is Store. Field not populated if to location is Warehouse. |
| toStockholdingInd | Number | This feld specifes whether the store can hold stock. In a non-multichannel environment this will always be Y, if to location is Store. Field not populated if to location is Warehouse. |
| toLocation | Number | This feld specifes location number of the transfer to location. |
| transferType | Number | This feld identifes the type or reason for the transfer. |
| pickNotBeforeDate | String | This feld Contains the date on which the transfer should be released from the from location for delivery to the to location. |
| Name | Data Type | Description |
|---|---|---|
| pickNotAfterDate | Number | This feld is calculated as transfer approval date + days from code_detail where code_type = ‘DEFT’ and code = ‘DATE’. |
| orderType | String | This feld specifes order type associated with transfers. |
| breakByDistro | String | This feld is set to ‘Y’ if the deliver_type for the transfer’s customer is ‘S’. Otherwise, set to N |
| deliveryDate | String | This feld specifes earliest date that the transfer can be delivered to the store. This will be populated if the transfer type is PO-Linked. |
| deliverAdd1 | String | For customer order transfers, this feld contains the frst line of the delivery address of the customer. For other type’s of transfer this feld would not be populated. |
| deliverAdd2 | String | For customer order transfers, this feld contains the second line of the delivery address of the customer. For other types of transfer this feld would not be populated. |
| deliverCity | String | For customer order transfers, this feld contains the city portion of the customer. For other types of transfer this feld would not be populated. |
| deliverState | String | For customer order transfers, this feld contains the state portion of the customer. For other types of transfer this feld would not be populated. |
| deliverPost | String | For customer order transfers, this feld contains the postal code portion of the customer. For other types of transfer this feld would not be populated. |
| deliverCountryId | String | For customer order transfers, this feld contains the country portion of the customer. For other types of transfer this feld would not be populated. |
| comments | String | This feld specifes any comments associated with the transfer. |
| details | This list holds detail records for the transfers | |
| transferParentNo | Number | This feld identifes the transfer at the level above the transfer. |
| expectedDcDate | String | This feld specifes date the inventory is expected to arrive at the DC. |
| approvalId | String | This feld specifes ID of the user who approved the transfer. |
| approvalDate | String | This feld specifes date the transfer was approved. |
| fromLocationTransferEntity | Number | This feld specifes transfer entity of the from location. |
| toLocationTransferEntity | Number | This feld specifes transfer entity of the to location. |
| Name | Data Type | Description |
|---|---|---|
| invType | String | This feld specifes transfer can only contain available or unavailable merchandise, never a combination of both. This feld will indicate whether the transfer is for Available inventory or Unavailable inventory. |
| transferStatus | String | This feld specifes Status of the transfer. |
| notAfterDate | String | This feld specifes last day delivery of the transfer will be accepted. |
| contextType | String | This feld can be used to indicate the transfer reason or category, e.g., ‘promotion’. |
| contextValue | String | This feld can be used to further info to indicate the reason or category for the transfer. For instance, if context type was ’promotion’, this could be the promotion number. |
| deliverySlotId | String | This feld Specifes when the transfer quantity is needed at the location. |
| deliverySlotDescription | String | This feld Specifes delivery slot description. |
| customerOrderNo | String | or customer order transfers, this feld contains the master customer order number from the Order Management System. |
| fulfllmentOrderNumber | String | Contains the fulfllment order number for the transfer as provided by OMS. One or more fulfllment orders could relate back to a single customer order in OMS. |
| carrierCode | String | This feld indicates the carrier the order is to be shipped with, if specifed on the order. |
| carrierServiceCode | String | This feld indicates method that was selected for shipping by the customer placing the order (e.g., Standard Shipping, Overnight, etc.). |
| consumerDeliveryDate | String | This feld specifes desired date the delivery is required by the customer. |
| consumerDeliveryTime | String | This feld specifes desired time the delivery is required by the customer. |
| deliverFirstName | String | For customer order transfers, this feld contains the frst name for the delivery address on the order. For other types of transfer this feld would not be populated. |
| deliverPhoneticFirst | String | For customer order transfers, this feld contains the phonetic frst name for the delivery address on the order. For other types of transfer this feld would not be populated. |
| deliverLastName | String | For customer order transfers, this feld contains the phonetic frst name for the delivery address on the order. For other types of transfer this feld would not be populated. |
| deliverPhoneticLast | String | For customer order transfers, this feld contains the phonetic last name for the delivery address on the order. For other types of transfer this feld would not be populated. |
| Name | Data Type | Description |
|---|---|---|
| deliverPreferredName | String | For customer order transfers, this feld contains the preferred name for the delivery address on the order. For other types of transfer this feld would not be populated. |
| deliverCompanyName | String | For customer order transfers, this feld contains the company name for the delivery address on the order. For other types of transfer this feld would not be populated. |
| deliverAdd3 | String | For customer order transfers, this feld contains the third line of the delivery address of the customer. For other types of transfer this feld would not be populated. |
| deliverCounty | String | For customer order transfers, this feld contains country of the delivery address of the customer. For other types of transfer this feld would not be populated. |
| deliverPhone | String | For customer order transfers, this feld contains delivery phone number. For other types of transfer this feld would not be populated. |
| billFirstName | String | For customer order transfers, this feld contains the frst name for the billing address on the order. For other types of transfer this feld would not be populated. |
| billPhoneticFirst | String | For customer order transfers, this feld contains the phonetic frst name for the billing address on the order. For other types of transfer this feld would not be populated. |
| billLastName | String | For customer order transfers, this feld contains the last name for the billing address on the order. For other types of transfer this feld would not be populated. |
| billPhoneticLast | String | For customer order transfers, this feld contains the phonetic last name for the billing address on the order. For other types of transfer this feld would not be populated. |
| billPreferredName | String | For customer order transfers, this feld contains the preferred name for the billing address on the order. For other types of transfer this feld would not be populated. |
| billCompanyName | String | For customer order transfers, this feld contains the preferred name for the billing address on the order. For other types of transfer this feld would not be populated. |
| billAdd1 | String | For customer order transfers, this feld contains the frst line of the billing address of the customer. For other types of transfer this feld would not be populated. |
| billAdd2 | String | For customer order transfers, this feld contains the second line of the billing address of the customer. For other types of transfer this feld would not be populated. |
| Name | Data Type | Description |
|---|---|---|
| billAdd3 | String | For customer order transfers, this feld contains the third line of the billing address of the customer. For other types of transfer this feld would not be populated. |
| billCounty | String | For customer order transfers, this feld contains the county portion of the billing address of the customer. For other types of transfer this feld would not be populated. |
| billCity | String | For customer order transfers, this feld contains the city portion of the billing address of the customer. For other types of transfer this feld would not be populated. |
| billCountry | String | For customer order transfers, this feld contains the city portion of the billing address of the customer. For other types of transfer this feld would not be populated. |
| billPost | String | For customer order transfers, this feld contains the postal code portion of the billing address of the customer. For other types of transfer this feld would not be populated. |
| billState | String | For customer order transfers, this feld contains the state portion of the billing address of the customer. For other types of transfer this feld would not be populated. |
| billPhone | String | For customer order transfers, this feld contains the billing phone number. For other types of transfer this feld would not be populated. |
| partialDeliveryInd | String | For customer order transfers, this feld indicates if the order can be picked and shipped partially or if it should be shipped only when complete. |
| consumerDirectInd | String | This feld indicates the order as being consumer direct (Y) or not (N). An order is consumer direct if it is a customer order. |
| customFlexAttribute | This list holds custom fex attributes for the transfers. | |
| createDateTime | String | This column holds the record creation date. |
| updateDateTime | String | his column holds the date when the record was last updated. |
Table 5-362 details
| Name | Data Type | Description |
|---|---|---|
| item | String | This feld specifes unique alphanumeric value that identifes the item. |
| transferQuantity | Number | This feld specifes total quantity of the item reserved at the from location for this transfer. |
| price | Number | This feld specifes unit retail price in the selling unit of measure for the item/location combination. |
Table 5-362 (Cont.) details
| Name | Data Type | Description |
|---|---|---|
| sellingUom | String | This feld specifes selling unit of measure of the item. |
| expediteFlag | String | This feld is determined from transfer’s freight code feld. |
| storeOrderMultiple | String | This feld specifes multiple in which the item needs to be shipped from a warehouse to the location. |
| transferOrderLinkNo | Number | This feld specifes reference number to link the item on the transfer to any purchase orders that have been created to allow the from location (i.e. warehouse) on the transfer to fulfll the transfer quantity to the to location (i.e. store) on the transfer. |
| ticketTypeId | String | This feld specifes reference number to link the item on the transfer to any purchase orders that have been created to allow the from location (i.e., warehouse) on the transfer to fulfll the transfer quantity to the to location (i.e. store) on the transfer. |
| ticketDetails | This List holds attributes for details of transfer details ticket record. | |
| invStatus | String | This feld specifes inventory status, if one exists, for the transfer detail record. The inventory status feld corresponds to the inventory status type found on the INV_STATUS_TYPES table |
| transactionUom | String | This feld specifes original transaction unit of measure to be passed on to the store system. It is only used for customer direct orders coming from the Order Management System. All quantities in the response payload are expressed in item’s standard unit of measure. |
| itemLineNo | String | This feld specifes detail item line number for customer order transfers. For other types of transfer this feld is not populated. |
| comments | String | This feld specifes any comments associated with the transfer line item. |
| createDateTime | String | This column holds the record creation date. |
| updateDateTime | String | This column holds the date when the record was last updated. |
Table 5-363 ticketDetails
| Name | Data Type | Description |
|---|---|---|
| componentItem | String | This feld specifes Alphanumeric value that identifes the component item within the pack. |
| componentPrice | Number | This feld specifes unit retail price in the selling unit retail of the component item within the pack. |
Table 5-363 (Cont.) ticketDetails
| Name | Data Type | Description |
|---|---|---|
| componentSellingUom | String | This feld specifes selling unit of measure for a component item within the pack. |
Table 5-364 customFlexAttribute
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| updateDateTime | String | This feld will hold the date time when the custom fex attribute was last updated. |
Table 5-365 Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. |
| For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. | |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
" {
"items": [
{
"action": "INSERT",
"transferNo": 100000005000,
"docType": "T",
"physicalFromLocation": 1515,
"fromLocationType": "S",
"fromStoreType": "C",
"fromStockholdingInd": "Y",
"fromLocation": 1515,
"physicalToLocation": 8811,
"toLocationType": "S",
"toStoreType": "C",
"toStockholdingInd": "Y",
"toLocation": 8811,
"transferType": "MR",
"pickNotBeforeDate": "2021-12-08",
"pickNotAfterDate": "2022-01-07",
"orderType": "AUTOMATIC",
"breakByDistro": "N",
"deliveryDate": "2021-12-08",
"deliverAdd1": null,
"deliverAdd2": null,
"deliverCity": null,
"deliverState": null,
"deliverPost": null,
"deliverCountryId": null,
"comments": null,
"details": [
{
"item": "100500002",
"transferQuantity": 1,
"price": 12.22,
"sellingUom": "EA",
"expediteFlag": "N",
"storeOrderMultiple": "E",
"transferOrderLinkNo": null,
"ticketTypeId": null,
"ticketDetails": null,
"invStatus": null,
"transactionUom": null,
"itemLineNo": null,
"comments": null,
"createDateTime": "2021-12-08T18:16:04.000Z",
"updateDateTime": "2021-12-08T18:16:10.000Z"
}
],
"transferParentNo": null,
"expectedDcDate": "2021-12-08",
"approvalId": "RMS_ADMIN",
"approvalDate": "2021-12-08",
"fromLocationTransferEntity": 1111,
"toLocationTransferEntity": 1111,
"invType": "A",
"transferStatus": "A",
"notAfterDate": "2021-12-10",
"contextType": null,
"contextValue": null,
"deliverySlotId": null,
"deliverySlotDescription": null,
"customerOrderNo": null,
"fulfillmentOrderNumber": null,
"carrierCode": null,
"carrierServiceCode": null,
"consumerDeliveryDate": null,
"consumerDeliveryTime": null,
"deliverFirstName": null,
"deliverPhoneticFirst": null,
"deliverLastName": null,
"deliverPhoneticLast": null,
"deliverPreferredName": null,
"deliverCompanyName": null,
"deliverAdd3": null,
"deliverCounty": null,
"deliverPhone": null,
"billFirstName": null,
"billPhoneticFirst": null,
"billLastName": null,
"billPhoneticLast": null,
"billPreferredName": null,
"billCompanyName": null,
"billAdd1": null,
"billAdd2": null,
"billAdd3": null,
"billCounty": null,
"billCity": null,
"billCountry": null,
"billPost": null,
"billState": null,
"billPhone": null,
"partialDeliveryInd": null,
"consumerDirectInd": "N",
"customFlexAttribute": null,
"createDateTime": "2021-12-08T00:00:00.000Z",
"updateDateTime": "2021-12-08T18:16:24.000Z",
"cacheTimestamp": "2022-04-06T10:00:47.220Z"
},
{
"action": "INSERT",
"transferNo": 100000015002,
"docType": "T",
"physicalFromLocation": 440,
"fromLocationType": "W",
"fromStoreType": null,
"fromStockholdingInd": null,
"fromLocation": 441,
"physicalToLocation": 2345,
"toLocationType": "E",
"toStoreType": null,
"toStockholdingInd": null,
"toLocation": 2345,
"transferType": "MR",
"pickNotBeforeDate": "2021-12-20",
"pickNotAfterDate": "2022-01-19",
"orderType": "AUTOMATIC",
"breakByDistro": "N",
"deliveryDate": "2021-12-21",
"deliverAdd1": null,
"deliverAdd2": null,
"deliverCity": null,
"deliverState": null,
"deliverPost": null,
"deliverCountryId": null,
"comments": null,
"details": [
{
"item": "100500002",
"transferQuantity": 3,
"price": 12.22,
"sellingUom": "EA",
"expediteFlag": "N",
"storeOrderMultiple": "E",
"transferOrderLinkNo": null,
"ticketTypeId": null,
"ticketDetails": null,
"invStatus": null,
"transactionUom": null,
"itemLineNo": null,
"comments": null,
"createDateTime": "2021-12-21T14:07:46.000Z",
"updateDateTime": "2021-12-21T14:07:50.000Z"
}
],
"transferParentNo": null,
"expectedDcDate": "2021-12-21",
"approvalId": "RMS_ADMIN",
"approvalDate": "2021-12-20",
"fromLocationTransferEntity": 1111,
"toLocationTransferEntity": 1111,
"invType": "A",
"transferStatus": "A",
"notAfterDate": "2021-12-22",
"contextType": null,
"contextValue": null,
"deliverySlotId": null,
"deliverySlotDescription": null,
"customerOrderNo": null,
"fulfillmentOrderNumber": null,
"carrierCode": null,
"carrierServiceCode": null,
"consumerDeliveryDate": null,
"consumerDeliveryTime": null,
"deliverFirstName": null,
"deliverPhoneticFirst": null,
"deliverLastName": null,
"deliverPhoneticLast": null,
"deliverPreferredName": null,
"deliverCompanyName": null,
"deliverAdd3": null,
"deliverCounty": null,
"deliverPhone": null,
"billFirstName": null,
"billPhoneticFirst": null,
"billLastName": null,
"billPhoneticLast": null,
"billPreferredName": null,
"billCompanyName": null,
"billAdd1": null,
"billAdd2": null,
"billAdd3": null,
"billCounty": null,
"billCity": null,
"billCountry": null,
"billPost": null,
"billState": null,
"billPhone": null,
"partialDeliveryInd": null,
"consumerDirectInd": "N",
"customFlexAttribute": null,
"createDateTime": "2021-12-20T00:00:00.000Z",
"updateDateTime": "2021-12-21T14:08:42.000Z",
"cacheTimestamp": "2022-04-06T10:00:48.823Z"
}
],
"hasMore": true,
"limit": 2,
"count": 2,
"links": [
{
"href": "https://rex.retail.us-phoenix-1.ocs.oc-test.com/rgbu-rex-rgbu-
stg83-mfcs/MerchIntegrations/services/inventory/transfer?
limit=2&since=1970-01-01T00:00:00.001Z&before=2022-04-10T15:26:38.684995+00:00
",
"rel": "self"
},
{
"href": "https://rex.retail.us-phoenix-1.ocs.oc-test.com/rgbu-rex-rgbu-
stg83-mfcs/MerchIntegrations/services/inventory/transfer?
offsetkey=100000015002&limit=2&since=1970-01-01T00:00:00.001Z&before=2022-04-1
0T15:26:38.684995+00:00",
"rel": "next"
}
]
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | Yes | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_TRANSFER | Yes | No | Yes | Yes |
| MERCHAPI_EXT_TRANSFER | Yes | Yes | Yes | Yes |
| MERCHAPI_EXT_TRANSFER_CFA | No | Yes | No | Yes |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| TSFHEAD | Yes | No | No | No |
| TSFHEAD_CFA_EXT | Yes | No | No | No |
| V_MERCHAPI_EXT_TSF_JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
Transfer Upload Service
The following services are included in this functional area:
-
Create Book Transfer
-
Create Transfer Details
-
Create Transfers
-
Delete Transfer Details
-
Delete Transfers
-
Update Transfer Details
-
Update Transfers
Create Book Transfer
This section describes the Book Transfer ReSTful Web Service
Functional Area
Transfer and Customer Order
Business Overview
This web service will be built to virtually move inventory from one location to the other for the purposes of attributing the sale to a location different from the location that is fulfilling the order physically. For example, if the order is being fulfilled via shipment from a physical store, some retailers will want to actually have the sale processed against the e-commerce store. This service also accept a customer order number and fulfillment order number to be associated with the transfer when it is created as a cross reference.
Service Type
Post
ReST URL
/Transfer/customerOrderBookTransfer
Input Parameters
The Book Transfer web service has the following parameters:
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| FromLocation | Yes | BigDecimal | Transfer source location |
| ToLocation | Yes | BigDecimal | Transfer destination |
| CustomerOrderNumber | No | String | Customer order identification |
| FulfillOrderNumber | No | String | Fulfillment order identification |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| UpdateCustomerReserve dQty | No | String | Indicates if any of the customer reserved quantity should be update either the source or destination location or both. Valid values: |
•Bupdate both the source anddestination location • Supdate only the source location• Rupdate only the destinationlocation • Nor NULL no update | |||
| ItemsDetail | Yes | Collection of itemsDetail RDO | |
| ApprovalDate | No | Date | Approval date of the transfer (Format: ‘ DD-MON-YYYY’) |
ItemDetail RDO
The Book Transfer web service has the following parameters:
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| Item | Yes | String | Item identification |
| Quantity | Yes | BigDecimal | Item quantity to be transferred |
Example JSON Input
[
{
"toLocation":null,
"fromLocation":null,
"customerOrderNumber":null,
"fulfillOrderNumber":null,
"updateCustomerReservedQty":null,
"itemsDetail":[
{
"item":null,
"quantity":null
},
{
"item":null,
"quantity":null
},
{
"item":null,
"quantity":null
}
],
"approvalDate":null
},
{
"fromLocation":null,
"toLocation":null,
"customerOrderNumber":null,
"fulfillOrderNumber":null,
"updateCustomerReservedQty":null,
"itemsDetail":[
{
"item":null,
"quantity":null
}
],
"approvalDate":null
}
]
Output
RestCobtsfStatuRDO
| Parameter Name | Data Type |
|---|---|
| successCobtsfCount | Big Decimal |
| successCobtsfTbl | List< successCobtsfRDO> |
| failCobtsfCount | BigDecimal |
| failCobtsfTable | List |
SuccessCobtsfRDO
| Parameter Name | Data Type |
|---|---|
| FromLocation | Big Decimal |
| ToLocation | Big Decimal |
| TransferNumber | BigDecimal |
FailCobtsfRDO
| Parameter Name | Data Type |
|---|---|
| FromLocation | Big Decimal |
| ToLocation | Big Decimal |
| errorMessage | BigDecimal |
JSON Structure
{
"successCobtsfCount": 2,
"successCobtsfTable": [
{
"fromLocation ": 123,
"toLocation ": 987,
"transferNumber ": 123456789
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
},
{
"fromLocation ": 456,
"toLocation ": 654,
"transferNumber ": 987654321
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"failCobtsfCount": 1,
"failCobtsfTable": [
{
"orderNumber": 123,
"errorMessage": "Invalid Item.",
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
The following tables are affected:
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| CURRENCIES | Yes | No | No | No |
| DEPS | Yes | No | No | No |
| ITEM_LOC | Yes | Yes | No | No |
| ITEM_LOC_SOH | Yes | Yes | Yes | No |
| ITEM_MASTER | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| MONTH_DATA | Yes | No | No | No |
| MV_CURRENCY_CONVERSIO ATES | N_R Yes | No | No | No |
| ORDCUST | Yes | Yes | No | No |
| STORE | Yes | No | No | No |
| TRAN_DATA | No | Yes | No | No |
| TSFDETAIL | No | Yes | No | No |
| TSFHEAD | No | No | No | No |
| UOM_CLASS | Yes | No | No | No |
| V_PACKSKU_QTY | Yes | No | No | No |
| WEEK_DATA | Yes | No | No | No |
| WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Create Transfer Details
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service is used to create additional line items for one or more existing transfers at a time in Merchandising. For more information about transfer, see the Create Transfer service.
Service Type
POST
ReST URL
MerchIntegrations/services/inventory/transfer/details/create
Input Payload Details
Table 5-366 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of transfers. |
Table 5-367 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferNo | Yes | Number (12) | Number that uniquely identifes the transfer. |
| fromLocationType | Yes | String (1) | The location type of the from location. Valid values are ‘S’ and ‘W’. |
| fromLocation | Yes | String (10) | The location number of the from location. |
| toLocationType | Yes | String (1) | The location type of the to location. Valid values are ‘S’, ‘W’ and ‘E’ |
| toLocation | Yes | String (10) | The location number of the to location. |
| details | No | Collection of Object | References collection of transfer details |
Table 5-368 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the item being transferred. |
| transferQuantity | Yes | Number (12,4) | The total quantity of the item reserved for this transfer at the from location. |
| supplierPackSize | No | Number (12,4) | The supplier pack size for this item/ transfer. |
Table 5-368 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| invStatus | No | Number (2) | A code indicating the inventory status for this transfer detail. Valid values are found on the inv_status_types table. |
| adjustmentType | No | String (6) | This feld, along with the adjustment value, is used to calculate the transfer price for intercompany transfers. It will be ignored for all other transfers. If the adjustment value is provided, then the type must also be specifed. Valid values are: ‘IA’, ‘IP’, ‘DA’, ‘DP’, ‘S’. IA and IP can only be used if you have your system options set to allow the transfer price to exceed weighted average cost. |
| adjustmentValue | No | Number (20,4) | If the adjustment type is provided, then the value must also be specifed. This must always be a positive amount. |
Sample Input Message
{
"items": [
{
"transferNo": 12300056,
"fromLocationType": "S",
"fromLocation": "1521",
"toLocationType": "S",
"toLocation": "1511",
"details": [
{
"item": "100100076",
"transferQuantity": 3,
"supplierPackSize": 3,
"invStatus": 1,
"adjustmentType": "IA",
"adjustmentValue": 3.55
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Create Transfers
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service is used to by external systems to create one or more transfers at a time in Merchandising. Within Oracle Retail solutions, this is also leveraged by Advanced Inventory Planning (AIP) to create standalone transfers generated out of its replenishment processing.
When a new transfer is created, this service will first validate that all required fields are present in the message. Certain fields are required regardless of transfer type and system configuration, while others are dependent on other Merchandising configurations. Additionally, when creating a new transfer at least one detail line must also be included in the message. After that, business level validation on the input information will be performed.
Location Validation
The from and to locations passed into the message must be valid stores or warehouses in Merchandising; but they cannot be the same. If both locations are stores, then they must both exist in the same transfer zone. Additionally, if the to location is a store, then it must be open. This is determined based on whether there is a close date defined for the store and the stop order days.
If either location is a warehouse, then it can be either a physical warehouse or a virtual warehouse, depending on transfer type. A physical warehouse is only allowed as the from location type for an EG type of transfer. Additionally, only Book type transfers are allowed between two warehouses in the same physical warehouse.
If either the from or to location is a franchise store, then the other location cannot be a finisher. If the franchise store is a non-stockholding location, then the other location on the transfer must be a warehouse.
Validation is also done at the item level based on the locations on the transfer. Each item on the transfer must be in active, inactive, or discontinued status at the from location. It also must have been ranged to the from location in Merchandising, when that location is a warehouse. However, if the from location is a store, there is an exception where the transfer can still be created even though it is not yet ranged, which also bypasses inventory validation. This is to support a specific function in Oracle Retail Store Inventory Management (SIM). If the item is not already ranged to the to location, then ranging will occur when the transfer is created, regardless of status. The ranging that occurs will flag the item/location as unintentionally ranged for all transfer types except service. If the to location is an external finisher, see the section below on transfers with finishing.
Inventory Validation
Another part of the validation that is applicable for all transfers created is that inventory is available for transfer if the status passed through the integration is approve (A), with a few exceptions. First, EG type transfers do not have inventory validated as it is assumed that this type of transfer is generated in the store or warehouse and the inventory availability check has been done in that solution as part of the shipping of the inventory. Additionally, if the system option titled Validate External Warehouse Availability is set to No (unchecked), then warehouse inventory will not be validated for any transfers initiated in this service regardless of type. Store inventory availability is never validated by this service because of support for the process where the item does not need to be ranged to the shipping store.
Status Validation
Transfers can be created in a status of Input (I) or Approved (A) using this service. Transfers in input status are not subject to inventory validation, but all other validations are applicable. Book type transfers can only be created in Input status using this service, as there isn’t really a concept of an ‘approved’ book transfer. As soon as it is approved it is executed. Additionally, transfers of type Reallocation (RAC) and Return to Vendor (RV) can also only be created in Input status. Conversely, transfers of type AIP, SIM, and EG must always be created in Approved status. If any validation fails when processing the new transfer that results in it not being able to be approved, the transfer will be created but will remain in input status. The exception to this is for transfers of type AIP, SIM, and EG, as they must always be created in approved status. If they are not able to be approved, the transfer is not created or updated.
Transfer Type Specific Validation
Most of the validation defined above is relevant regardless of transfer type, except where noted. However, there are also some other validations done as part of this service processing that are specific to a type of transfer.
Administrative (AD)
See Manual Requisition
AIP Generated (AIP)
This type of transfer is expected only to be sent from AIP as an output of the replenishment process. As such, Merchandising assumes certain validations have been done by AIP in advance of receiving the transfer and slightly different validation is enforced. The following special validations apply for this transfer type using this service:
Must be created in Approved status
Can only be to stockholding locations
Supports transferring packs from stores
Allows the department number to be passed even when the system option is N
Item/location ranging to the to location will result in the Ranged flag being set to Yes as it is assumed this an intentional ranging.
Can be an intercompany transfer
Book (BT)
Book transfers processed through this service can be created for two virtual warehouses in the same physical warehouse only. This is usually used for inventory rebalancing between virtual locations. The following special validations apply for this transfer type using this service:
Can only be created in Input status
Can only be created for virtual warehouses in the same physical warehouse
Warehouses must be in the same legal entity
Confirmation (CF)
See Manual Requisition
Externally Generated (EG)
Externally Generated transfers are assumed to be created in the store or warehouse. Further, it is assumed that once they get to Merchandising, the transfer is already in process at that location. As such, there are certain validations that are managed differently for this transfer type in this service:
Must be created in Approved status
Supports transferring packs from stores
Allows the department number to be passed even when the system option is N
Can be an intercompany transfer
Uses the physical warehouse number, not a virtual warehouse number, if warehouses are involved
Intercompany (IC)
An intercompany transfer is a type of business to business transaction that sells product from one legal entity and purchases it into another. Legal entities in Merchandising are determined based on the setting of the Intercompany Basis system option, which indicates whether the transfer entity or the set of books of a location should be used. This transfer type is used when either it is explicitly passed into the service or if the transfer type is NULL in the inbound message and the locations are in different legal entities. Other transfer types may also be intercompany, as well, but the below rules apply for those flagged as intercompany type explicitly:
The legal entity of the from and to locations must be different.
If an adjustment type or value is passed into the message, that will be used to calculate the ‘selling’ price between entities. Otherwise, the from location’s weighted average cost is used
Manual Requisition (MR)
This is the most basic type of transfer in Merchandising, so it is used as a default transfer type when either it is explicitly passed into the service or if the transfer type is NULL in the inbound message and the locations are in the same legal entity. The behavior for this transfer type is
the same as that for AD and CF types of transfers, those could be used as different reasons for a transfer. For this transfer type the following validation rules are enforced:
Locations must be in the same legal entity
Reallocation (RAC)
A reallocation transfer is assumed to be used to pull back inventory from stores or warehouses to a single warehouse for re-allocation to other stores or other warehouses. This is the type of transfer that is created when a mass-return transfer is created, for example. Because it has unique rules tied to it related to MRTs, some additional validations are followed:
Can only be created in Input status in this service
Locations must be in the same legal entity
Return to Vendor (RV)
A return to vendor type of transfer is similar to a reallocation type, in that it is assumed to be pulling inventory back to a warehouse from stores or other warehouses, but in this case, for the purpose of returning the merchandise to the supplier. This is the type of transfer that is created when a mass-return transfer is created, for example. Because it has some unique rules tied to it related to MRTs, some additional validations are followed:
Can only be created in Input status in this service
Locations must be in the same legal entity
SIM Generated (SIM)
SIM generated transfers are created only by the store orders process in SIM. This functionality is not available in SIOCS. Because of this, they have special rules applied, including the ability to create the transfer even though no item/store relationship exists for the originating location in Merchandising. The rules that apply for this type of transfer include:
Must be created in Approved status
Supports transferring packs from stores
Allows the department number to be passed even when the Merchandising system option is No
Can be an intercompany transfer
All Transfer Types
For all of the above transfer types, if all validation described above passes, then the transfer will be created. If the transfer is created in Approved status, then in addition to the transfer itself, other details may also be created based on the items and locations involved.
Inventory will be updated to reflect the reserved quantity at the from location and expected quantity at the to location.
Upcharges will be applied, if configured, for transfers that do not include a physical warehouse location. For transfers with a physical warehouse, the records for upcharges are added when the transfer is shipped.
An associated franchise order or return will be created if the transfer involves a franchise location.
Transfers with Finishing
Transfers with finishing are sometimes referred to as a two-legged transfer, as they generate two transfers in Merchandising. One from the originating store or warehouse to the finisher and one from the finisher back to a store or warehouse. This service supports the creation of a transfer with finishing only through an external finisher, a type of partner, and back to the originating location. Transfers to an internal finisher are not supported via this integration. To do this, when sending the transfer details in the message, you will indicate the external finisher as the to location. Then when the transfer is created, it will automatically generate the second leg.
When creating transfers in this way, it does not generate any work order activities to send to the finisher with the transfer. These will either need to be added manually in the Merchandising screens, or sent separately to the finisher.
Flex Attributes
If you have defined any custom flex attributes (CFAS) for transfers, then they can be integrated as part of this service. The node of the integration that supports this will accept the name of the attribute as it is defined in the group set level view and the value for the attribute. Flex attributes can only be added or updated to a transfer, they cannot be deleted. Additionally, for transfers with finishing, flex attributes can only be added to the first leg of the transfer.
Location Validation
The from and to locations passed into the message must be valid stores or warehouses in Merchandising; but they cannot be the same. If both locations are stores, then they must both exist in the same transfer zone. Additionally, if the to location is a store, then it must be open. This is determined based on whether there is a close date defined for the store and the stop order days.
If either location is a warehouse, then it can be either a physical warehouse or a virtual warehouse, depending on transfer type. A physical warehouse is only allowed as the from location type for an EG type of transfer. Additionally, only Book type transfers are allowed between two warehouses in the same physical warehouse.
If either the from or to location is a franchise store, then the other location cannot be a finisher. If the franchise store is a non-stockholding location, then the other location on the transfer must be a warehouse.
Validation is also done at the item level based on the locations on the transfer. Each item on the transfer must be in active, inactive, or discontinued status at the from location. It also must have been ranged to the from location in Merchandising, when that location is a warehouse. However, if the from location is a store, there is an exception where the transfer can still be created even though it is not yet ranged, which also bypasses inventory validation. This is to support a specific function in Oracle Retail Store Inventory Management (SIM). If the item is not already ranged to the to location, then ranging will occur when the transfer is created, regardless of status. The ranging that occurs will flag the item/location as unintentionally ranged for all transfer types except service. If the to location is an external finisher, see the section below on transfers with finishing.
Inventory Validation
Another part of the validation that is applicable for all transfers created is that inventory is available for transfer if the status passed through the integration is approve (A), with a few exceptions. First, EG type transfers do not have inventory validated as it is assumed that this type of transfer is generated in the store or warehouse and the inventory availability check has been done in that solution as part of the shipping of the inventory. Additionally, if the system option titled Validate External Warehouse Availability is set to No (unchecked), then warehouse inventory will not be validated for any transfers initiated in this service regardless of type. Store inventory availability is never validated by this service because of support for the process where the item does not need to be ranged to the shipping store.
Status Validation
Transfers can be created in a status of Input (I) or Approved (A) using this service. Transfers in input status are not subject to inventory validation, but all other validations are applicable. Book type transfers can only be created in Input status using this service, as there isn’t really a concept of an ‘approved’ book transfer. As soon as it is approved it is executed. Additionally, transfers of type Reallocation (RAC) and Return to Vendor (RV) can also only be created in Input status. Conversely, transfers of type AIP, SIM, and EG must always be created in Approved status. If any validation fails when processing the new transfer that results in it not being able to be approved, the transfer will be created but will remain in input status. The exception to this is for transfers of type AIP, SIM, and EG, as they must always be created in approved status. If they are not able to be approved, the transfer is not created or updated.
Transfer Type Specific Validation
Most of the validation defined above is relevant regardless of transfer type, except where noted. However, there are also some other validations done as part of this service processing that are specific to a type of transfer.
Administrative (AD)
- See Manual Requisition (MR)
Service Type
This type of transfer is expected only to be sent from AIP as an output of the replenishment process. As such, Merchandising assumes certain validations have been done by AIP in advance of receiving the transfer and slightly different validation is enforced. The following special validations apply for this transfer type using this service:
-
Must be created in Approved status
-
Can only be to stockholding locations
-
Supports transferring packs from stores
-
Allows the department number to be passed even when the system option is N
-
Item/location ranging to the to location will result in the Ranged flag being set to Yes as it is assumed this an intentional ranging.
-
Can be an intercompany transfer
Book (BT)
Book transfers processed through this service can be created for two virtual warehouses in the same physical warehouse only. This is usually used for inventory rebalancing between virtual locations. The following special validations apply for this transfer type using this service:
-
Can only be created in Input status
-
Can only be created for virtual warehouses in the same physical warehouse
-
Warehouses must be in the same legal entity
Confirmation (CF)
- See Manual Requisition (MR)
Externally Generated (EG)
Externally Generated transfers are assumed to be created in the store or warehouse. Further, it is assumed that once they get to Merchandising, the transfer is already in process at that location. As such, there are certain validations that are managed differently for this transfer type in this service:
-
Must be created in Approved status
-
Supports transferring packs from stores
-
Allows the department number to be passed even when the system option is N
-
Can be an intercompany transfer
-
Uses the physical warehouse number, not a virtual warehouse number, if warehouses are involved
Intercompany (IC)
An intercompany transfer is a type of business to business transaction that sells product from one legal entity and purchases it into another. Legal entities in Merchandising are determined based on the setting of the Intercompany Basis system option, which indicates whether the transfer entity or the set of books of a location should be used. This transfer type is used when either it is explicitly passed into the service or if the transfer type is NULL in the inbound message and the locations are in different legal entities. Other transfer types may also be intercompany, as well, but the below rules apply for those flagged as intercompany type explicitly:
-
The legal entity of the from and to locations must be different.
-
If an adjustment type or value is passed into the message, that will be used to calculate the ‘selling’ price between entities. Otherwise, the from location’s weighted average cost is used
Manual Requisition (MR)
This is the most basic type of transfer in Merchandising, so it is used as a default transfer type when either it is explicitly passed into the service or if the transfer type is NULL in the inbound message and the locations are in the same legal entity. The behavior for this transfer type is the same as that for AD and CF types of transfers, those could be used as different reasons for a transfer. For this transfer type the following validation rules are enforced:
- Locations must be in the same legal entity
Reallocation (RAC)
A reallocation transfer is assumed to be used to pull back inventory from stores or warehouses to a single warehouse for re-allocation to other stores or other warehouses. This is the type of transfer that is created when a mass-return transfer is created, for example. Because it has unique rules tied to it related to MRTs, some additional validations are followed:
-
Can only be created in Input status in this service
-
Locations must be in the same legal entity
Return to Vendor (RV)
A return to vendor type of transfer is similar to a reallocation type, in that it is assumed to be pulling inventory back to a warehouse from stores or other warehouses, but in this case, for the purpose of returning the merchandise to the supplier. This is the type of transfer that is created when a mass-return transfer is created, for example. Because it has some unique rules tied to it related to MRTs, some additional validations are followed:
-
Can only be created in Input status in this service
-
Locations must be in the same legal entity
SIM Generated (SIM)
SIM generated transfers are created only by the store orders process in SIM. This functionality is not available in SIOCS. Because of this, they have special rules applied, including the ability to create the transfer even though no item/store relationship exists for the originating location in Merchandising. The rules that apply for this type of transfer include:
-
Must be created in Approved status
-
Supports transferring packs from stores
-
Allows the department number to be passed even when the Merchandising system option is No
-
Can be an intercompany transfer
All Transfer Types
For all of the above transfer types, if all validation described above passes, then the transfer will be created. If the transfer is created in Approved status, then in addition to the transfer itself, other details may also be created based on the items and locations involved.
-
Inventory will be updated to reflect the reserved quantity at the from location and expected quantity at the to location.
-
Upcharges will be applied, if configured, for transfers that do not include a physical warehouse location. For transfers with a physical warehouse, the records for upcharges are added when the transfer is shipped.
-
An associated franchise order or return will be created if the transfer involves a franchise location.
Transfers with Finishing
Transfers with finishing are sometimes referred to as a two-legged transfer, as they generate two transfers in Merchandising. One from the originating store or warehouse to the finisher and one from the finisher back to a store or warehouse. This service supports the creation of a transfer with finishing only through an external finisher, a type of partner, and back to the originating location. Transfers to an internal finisher are not supported via this integration. To do this, when sending the transfer details in the message, you will indicate the external finisher as the to location. Then when the transfer is created, it will automatically generate the second leg.
When creating transfers in this way, it does not generate any work order activities to send to the finisher with the transfer. These will either need to be added manually in the Merchandising screens, or sent separately to the finisher.
Flex Attributes
If you have defined any custom flex attributes (CFAS) for transfers, then they can be integrated as part of this service. The node of the integration that supports this will accept the name of the attribute as it is defined in the group set level view and the value for the attribute. Flex attributes can only be added or updated to a transfer, they cannot be deleted. Additionally, for transfers with finishing, flex attributes can only be added to the first leg of the transfer.
Service Type
POST
ReST URL
MerchIntegrations/services/inventory/transfers/create
Input Payload Details
Table 5-369 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of transfers. |
Table 5-370 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferNo | Yes | Number (12) | Number that uniquely identifes the transfer. |
| fromLocationType | Yes | String (1) | The location type of the from location. Valid values are ‘S’ and ’W’. |
| fromLocation | Yes | Number (10) | The location number of the from location. |
| toLocationType | Yes | String (1) | The location type of the to location. Valid values are ‘S’, ‘W’ and ’E’ |
| toLocation | Yes | Number (10) | The location number of the to location. |
| deliveryDate | No | date | The earliest date the transfer can be delivered. When Inventory Planning is part of your implementation, this is required for all transfer types, except RAC, EG, and Store Inventory Operations transfers. If included in the message, this must be today or a future date. |
| expectedDcDate | No | date | The date that the transfer is expected to be shipped at the warehouse. If included in the message, this must be today or a future date. |
Table 5-370 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| department | No | Number (4) | The department number associated with the transfer. A system option determines whether or not the department is required for transfers. If the system option is set to require a department, then this must be included in the message. If the system option is set to not require the department, then the department must be null in this message unless the transfer type is SIM (Store Inventory Operations), AIP (Inventory Planning), or EG (Externally Generated). |
| routingCode | No | String (1) | If the freight code is Expedite (E), then this must have a value. Otherwise, it must be null. The descriptions for these three options are held in the Codes table under code TRRC and can be confgured as needed for your business. Examples are Federal Express (1), UPS (2) and mail (3). |
| freightCode | No | String (1) | A code indicating the freight status of the transfer (e. g. normal, expedite, etc. ). |
Table 5-370 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferType | No | String (6) | A code indicating the type of transfer (e. g. store requisition, book transfer, etc. ). The following types of transfers can be created in this service: Administrative (AD), Inventory Planning Generated (AIP), Book (BT), Confrmation (CF), Externally Generated (EG), Intercompany (IC), Manual Requisition (MR), Reallocation (RAC), Return to Vendor ,(RV) and Store Inventory Operations Generated (SIM). |
| details | No | Collection of Object | References a collection of transfer details. |
| status | No | String (1) | A code indicating the status of the transfer. Valid values are ‘I’ and ’A’. |
| createdBy | No | String (30) | The userid of the user who created the transfer. |
| comments | No | String (2000) | Comments associated with the transfer. |
| contextType | No | String (6) | This feld holds the reason code related to which a transfer is made. Valid values are found in the code type CNTX. Examples are Promotion (PROM), Customer Transfer (WED), Store Requisition (STORE) and Repairing (REPAIR). |
| contextValue | No | String (25) | This feld holds the value relating to the context type like Promotion number. |
Table 5-370 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
Table 5-371 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the item being transferred. |
| transferQuantity | Yes | Number (12,4) | The total quantity of the item reserved for this transfer at the from location. |
| supplierPackSize | No | Number (12,4) | The supplier pack size for this item/transfer. |
| invStatus | No | Number (2) | A code indicating the inventory status for this transfer detail. Valid values are found on the inv_status_types table. |
Table 5-371 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| adjustmentType | No | String (6) | This feld, along with the adjustment value, is used to calculate the transfer price for intercompany transfers. It will be ignored for all other transfers. If the adjustment value is provided, then the type must also be specifed. Valid values are: ‘IA’, ‘IP’, ‘DA’, ‘DP’, ‘S’. IA and IP can only be used if you have your system options set to allow the transfer price to exceed weighted average cost. |
| adjustmentValue | No | Number (20,4) | If the adjustment type is provided, then the value must also be specifed. This must always be a positive amount. |
Table 5-372 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"items": [
{
"transferNo": 12300056,
"fromLocationType": "S",
"fromLocation": 1521,
"toLocationType": "S",
"toLocation": 1511,
"deliveryDate": "2001-12-31",
"expectedDcDate": "2001-12-31",
"department": null,
"routingCode": null,
"freightCode": "N",
"transferType": "AD",
"details": [
{
"item": "104100022",
"transferQuantity": 3,
"supplierPackSize": 3,
"invStatus": 1,
"adjustmentType": "IA",
"adjustmentValue": 3.6
}
],
"status": "I",
"createdBy": "RMS01APP",
"comments": "transfer to loc 1511",
"contextType": "PROM",
"contextValue": "2255",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Delete Transfer Details
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service is used to delete line items from one or more existing transfers at a time in Merchandising.
If you are deleting a detail on the transfer, this service will validate that the transfer number is valid and that the transfer or transfer line was not already shipped or received, at least partially, or is not in process at the shipping warehouse or store. Validation will be done to ensure that the item exists on the transfer after transfer line level deletes have been performed. Deleting the last line on the transfer will result in the transfer being flagged for delete.
If the transfer is in a status other than input, deleting a line will also update inventory to release the reserved inventory at the from location and decrease expected quantity at the to location. As well, if the transfer involves any franchise stores, then any franchise order or return created with the transfer will also be cancelled.
Service Type
DELETE
ReST URL
MerchIntegrations/services/inventory/transfer/details/delete
Input Payload Details
Table 5-373 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | References a collection of transfers. |
| Object |
Table 5-374 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferNo | Yes | Number (12) | The transfer number where info is being deleted from. |
| details | No | Collection of | References collection of transfer |
| Object | details |
Table 5-375 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The item for which transfer info is being deleted. |
Sample Input Message
{
"items": [
{
"transferNo": 12300056,
"details": [
{
"item": "100100076"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Delete Transfers
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service is used to to delete one or more transfers from Merchandising.
When deleting a transfer, this API will validate that the transfer number is valid and that the transfer or transfer line has not already shipped or received already or is not undergoing any processing at the shipping warehouse or store. Transfers are not actually deleted via this API, rather they are updated to a deleted status and a secondary process does the actual removal. If you want to delete the entire transfer, then no detail level records should be included in the message.
Transfers can be deleted in any status, other than ones that are already in a closed or deleted status. If the transfer involves an external finisher, then both legs of the transfer will be marked for deletion. If the transfer is in a status other than Input, then moving it to a deleted status will also update the related inventory data to release the reserved inventory at the source location and decrease the expected quantity at the destination location. If the transfer involves any franchise stores, then the franchise order or return that was created with the transfer will also be cancelled.
Service Type
DELETE
ReST URL
MerchIntegrations/services/inventory/transfers/delete
Input Payload Details
Table 5-376 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of transfers. |
Table 5-377 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferNo | Yes | Number (12) | This is the transfer being deleted. |
Sample Input Message
{
"items": [
{
"transferNo": 12300001
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Update Transfer Details
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service is used to modify line items for one or more existing transfers at a time in Merchandising.
To add or update a line item - only the transfer number is required in the header record, the other details are ignored. If not included, then the message will be rejected. Adding a new item to the transfer will use similar validations when creating the transfer.
If modifying an existing transfer line item, the full transfer quantity should be sent with the update, not the difference from the original quantity. This will be compared to the previous transfer quantity to determine how to update the transfer. For example, if the transfer is in approved or submitted status, a reduction in quantity would update the cancelled quantity on the transfer. It will also be validated to ensure that the quantity change doesn’t result in the total transfer quantity being lower than what has already been shipped or what is expected to be picked based on updates to the selected or distro quantities on the transfer. For increases in transfer quantity, if the transfer is in submitted or approved status, then inventory will be validated based on the changed quantity (depending on system option settings) to validate that the additional units are available. The inventory status for the item cannot be modified.
For more information about transfer, see the Create Transfer service.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/transfer/details/update
Input Payload Details
Table 5-378 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | References a collection of transfers. |
| Object |
Table 5-379 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferNo | Yes | Number (12) | Number that uniquely identifes the transfer. |
| fromLocationType | Yes | String (1) | The location type of the from location. Valid values are ‘S’ and ‘W’. |
| fromLocation | Yes | Number (10) | The location number of the from location. |
| toLocationType | Yes | String (1) | The location type of the to location. Valid values are ‘S’, ‘W’ and ‘E’ |
| toLocation | Yes | Number (10) | The location number of the to location. |
| details | No | Collection of Object | References collection of transfer details |
Table 5-380 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the item being transferred. |
| transferQuantity | Yes | Number (12,4) | The total quantity of the item reserved for this transfer at the from location. |
| supplierPackSize | No | Number (12,4) | The supplier pack size for this item/ transfer. |
| invStatus | No | Number (2) | A code indicating the inventory status for this transfer detail. Valid values are found on the inv_status_types table. |
Table 5-380 (Cont.) Details - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| adjustmentType No | String (6) | This feld, along with the adjustment value, is used to calculate the transfer price for intercompany transfers. It will be ignored for all other transfers. If the adjustment value is provided, then the type must also be specifed. Valid values are: ‘IA’, ‘IP’, ‘DA’, ‘DP’, ‘S’. IA and IP can only be used if you have your system options set to allow the transfer price to exceed weighted average cost. |
| adjustmentValue No | Number (20,4) | If the adjustment type is provided, then the value must also be specifed. This must always be a positive amount. |
| Sample Input Message | ||
{"items": [{"transferNo": 12300056,"fromLocationType": "S","fromLocation": 1521,"toLocationType": "S","toLocation": 1511,"details": [{"item": "104100022","transferQuantity": 3,"supplierPackSize": 3,"invStatus": 1,"adjustmentType": "IA","adjustmentValue": 3.55}]}]} |
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Update Transfers
Functional Area
Inventory - Transfers and Allocations
Business Overview
This service is used to update transfers in Merchandising at the header level. The transfer number included in the message must already exist in Merchandising. All the required header level information needs to be included in the update, similar to that for creating a new transfer. Fields that can be updated at the header level using this service include:
-
Delivery Date - Must always be a date today or later.
-
Routing Code - If the freight code is updated to expedite (
E), then this must also have a value. If freight code is updated to something other than expedite, then this should be null. -
Freight Code
-
Status - Used to move from Input or Submitted to Approved only. Transfers cannot be moved back to Input status using this API.
-
Comments
-
Context Type
-
Context Value
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/transfers/update
Input Payload Details
Table 5-381 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of transfers. |
Table 5-382 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferNo | Yes | Number (12) | Number that uniquely identifes the transfer. |
| fromLocationType | Yes | String (1) | The location type of the from location. Valid values are ‘S’ and ’W’. |
| fromLocation | Yes | String (10) | The location number of the from location. |
| toLocationType | Yes | String (1) | The location type of the to location. Valid values are ‘S’, ‘W’ and ’E’ |
| toLocation | Yes | String (10) | The location number of the to location. |
| deliveryDate | No | date | The earliest date the transfer can be delivered. When Inventory Planning is part of your implementation, this is required for all transfer types, except RAC, EG, and SIM transfers. If included in the message, this must be today or a future date. |
| expectedDcDate | No | date | The date that the transfer is expected to be shipped at the warehouse. If included in the message, this must be today or a future date. |
Table 5-382 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| routingCode | No | String (1) | If the freight code is Expedite (E), then this must have a value. Otherwise, it must be null. The descriptions for these three options are held in the Codes table under code TRRC and can be confgured as needed for your business. Examples are Federal Express (1), UPS (2) and mail (3). |
| transferType | No | String (6) | A code indicating the type of transfer (e. g. store requisition, book transfer, etc. ). The following types of transfers can be created in this service: Administrative (AD), Inventory Planning Generated (AIP), Book (BT), Confrmation (CF), Externally Generated (EG), Intercompany (IC), Manual Requisition (MR), Reallocation (RAC), Return to Vendor ,(RV) and Store Inventory Operations Generated (SIM). |
| status | No | String (1) | A code indicating the status of the transfer. Valid values are ‘I’ and ’A’. |
| createdBy | No | String (30) | The userid of the user who created the transfer. |
| comments | No | String (2000) | Comments associated with the transfer. |
Table 5-382 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| contextType | No | String (6) | This feld holds the reason code related to which a transfer is made. Valid values are found in the code type CNTX. Examples are Promotion (PROM), Customer Transfer (WED), Store Requisition (STORE) and Repairing (REPAIR). |
| contextValue | No | String (25) | This feld holds the value relating to the context type like Promotion number. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
Table 5-383 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"items": [
{
"transferNo": 12300056,
"fromLocationType": "S",
"fromLocation": "1521",
"toLocationType": "S",
"toLocation": "1511",
"deliveryDate": "2001-12-31",
"expectedDcDate": "2001-12-31",
"routingCode": null,
"transferType": "AD",
"status": "A",
"createdBy": "RMS01APP",
"comments": "transfer to loc 1511",
"contextType": "PROM",
"contextValue": "2255",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Work Order Status Upload Service
The following services are included in this functional area:
- Update Work Orders Status
Update Work Orders Status
Functional Area
Inventory - Transfers and Allocations
Business Overview
For transfers with finishing, Merchandising subscribes to Work Order Status messages sent from internal finishers indicating that the work order activities are complete. This message is used for internal finishers located in the same physical warehouse as the final destination for the transfer, as there is no physical shipment of goods. Other finishing scenarios exist in which the finisher is not a virtual warehouse that shares a physical warehouse with the transfer’s final receiving location. In these instances, Work Order Status messages are not necessary, and Merchandising will disregard Work Order Status messages sent in these scenarios.
Work order status messages contain the items for which the activities have been completed along with the quantity that was completed. All items on transfers that pass through an internal finisher must have at least one work order activity associated with them. When Work Order status messages are received for a particular item/quantity, it is assumed that all activities on the work order associated with the item/quantity have been completed. If work order activities involve item transformation or repacking, the work order status messages are always created in terms of the resultant item or pack.
On processing the work order status update, a book transfer is executed between the internal finisher (which is held as a virtual warehouse) and the final receiving location (also a virtual warehouse). If the internal finisher belongs to the sending location’s transfer entity, intercompany out and intercompany in transactions are recorded. Quantities on hand, reserved quantities, and weighted average costs are adjusted to accurately reflect the status of the stock.
It is possible to receive multiple Work Order Status messages for a particular item/transfer. Work order completion of partial quantities addresses the following scenarios:
1. Work order activities could not be performed for the entire quantity of a particular item at one time.
2. A given quantity of the particular item was damaged while work order activities were performed.
Work Order Example
Assume that a quantity of 20 of item 100 (White XL T-shirt) are sent to an internal finisher at the receiving physical warehouse, where they will be dyed black, thereby transforming them into item 101 (Black XL T-shirt). If all finishing activities were successfully completed in this example, Merchandising could expect to receive a Work Order Status message containing item 101 with a quantity of 20.
Work Order Update Process
While consuming the Work Order Status message, Merchandising validates that the finisher and the transfer’s final receiving location are in the same physical warehouse. If not, processing is halted. If the message contains an item, work order complete processing will be called for that item. Otherwise, said processing will be called for all items on the transfer. If the
entire transfer is processed, the child transfer (that is, the second leg) will be set to Shipped status. Note that work orders are always associated with the second leg of multi-leg transfers. Whether processing is performed at the item or transfer level, transfer closing logic will be used to determine if the entire multi-leg transfer can be closed.
Service Type
PUT
ReST URL
MerchIntegrations/services/inventory/transfer/workOrdersStatus/update
Input Payload Details
Table 5-384 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of work |
| Object | orders. |
Table 5-385 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferNo | Yes | Number (12) | This feld contains the identifer of the transfer during which the work order activities will be performed. For 2-legged transfers, this is the transfer number of the 1st leg transfer. |
| parentTransferNo | No | Number (12) | The higher level transfer that this transfer is part of. |
| item | No | String (25) | The item on which the work order has been completed. If an item transformation occurred, this should be the resultant item. This should be populated if completedQty is provided. |
| location | Yes | Number (10) | This is the fnisher location. |
| completeDate | Yes | date | This is the workorder completion date. If this is not provided, the value will be defaulted to the current date. |
| completedQuantity | No | Number (12,4) | The quantity of the item on which work has been completed. This should be provided if item is provided. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"transferNo": 100000135001,
"parentTransferNo": 100000135000,
"item": "101300002",
"location": 15000,
"completeDate": "2001-12-31",
"completedQuantity": 1
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Work Order Download Service
The following services are included in this functional area:
-
Purchase Order Work Order Publish Services
-
Transfer Work Order Publish Services
Purchase Order Work Order Publish Services
Endpoints
MerchIntegrations/services/inventory/woin
MerchIntegrations/services/inventory/woin/{workOrderId}
Functional Area
Inventory – Work Orders
Business Overview
This service publishes work-order-in data to downstream consuming systems. The payload is keyed by the work order ID and publishes one header row together with its detail lines. Functionally, the JSON view builds the payload directly from WO_HEAD and WO_DETAIL.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: WO_HEAD, WO_DETAIL
Additional business tables: none
JSON cache table: MERCHAPI_EXT_WOIN
JSON generation view: V_MERCHAPI_EXT_WOIN_JSON
Builds the payload directly from WO_HEAD and WO_DETAIL.
Functionally, the payload is keyed by WO_HEAD.WO_ID and publishes one header row with an array of detail lines.
Refresh loads rows from V_MERCHAPI_EXT_WOIN_JSON into the cache, rebuild compares the current payload against the live cache by MD5 and republishes changed rows, and rows that no longer exist in WO_HEAD are marked deleted.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_MERCHAPI_EXT_WOIN_JSON. No additional filter criteria were identified beyond the cache-build logic.
Delete handling can mark a cache row deleted when the source WO_HEAD row no longer exists.
ICL (Integration Change Log) table: ICL_RMS_WOIN (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on WO_HEAD, WO_DETAIL.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_WOIN
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_WO_IN_ADHOC_PROCESS → MERCHAPI_EXT_WO_IN_ADHOC_JOB
Webhook configuration api name: inventory/woin
Special handling
Additional GET query parameters: orderNo.
Service Type
GET
ReST URL
MerchIntegrations/services/inventory/woin
MerchIntegrations/services/inventory/woin/{workOrderId}
Input Parameters for MerchIntegrations/services/inventory/woin
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| orderNo | No | Number | OrderNo |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-386 Input Parameter for “MerchIntegrations/services/inventory/woin/ {workOrderId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| workOrderId | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Input Parameters for MerchIntegrations/services/inventory/woin/{workOrderId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| workOrderId | Yes | Number | This is the unique identifer for work in process associated with an order. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output – WO In Head
Table 5-387 PageResultsItemsMerchApiWorkOrderIn - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-388 MerchApiWorkOrderIn - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for Work Order In details. |
| workOrderId | No | Number(10,0) | This feld contains the unique identifer for work in process associated with an order or transfer. |
| orderNo | No | Number(12,0) | This feld contains the order number associated with the work order. |
Table 5-388 (Cont.) MerchApiWorkOrderIn - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This column holds the record creation date. |
| details | No | Collection of Object | This List holds attributes for details of Work Order In record. |
| cacheTimestamp | No | dateTime | This feld specifes date and time when the Work Order In record was last maintained. |
| cacheCreateTimestam p | No | dateTime | This feld specifes date and time when the record was frst created for web service publication. |
Table 5-389 WorkOrderInDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| warehouse | No | Number(10,0) | This feld holds the physical warehouse where the work order will be done. |
| item | No | String (25) | This feld holds the item on which the work order will be done. |
| locationType | No | String (1) | This feld holds the location type of the fnal destination. |
| location | No | Number(10,0) | This feld holds the fnal destination for the item on the order. If the item is pre- distributed this location will be the store or warehouse on the allocation. If not, it will be the same warehouse as above. |
| sequenceNo | No | Number(4,0) | This feld holds the sequence number that is needed to ensure each record is unique, since the same work- in-progress code can be listed more than once on the same work order. |
Table 5-389 (Cont.) WorkOrderInDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| activityCode | No | String (6) | This feld holds the WIP code for the work to be done on the item. Valid values are in the codes table under the WWIP code type. |
| createDateTime | No | dateTime | This column holds the record creation date. |
Table 5-390 LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description href No String Service URL rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "workOrderId": 1, "orderNo": 545005, "createDateTime": "2001-12-31T23:59:59.000Z", "details": [ { "warehouse": 1, "item": "101300002", "locationType": "S", "location": 15000, "sequenceNo": 1, "activityCode ": "12122", "createDateTime": "2001-12-31T23:59:59.000Z" } ], "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output – WO In Detail
| Name | Data Type | Description |
|---|---|---|
| warehouse | Number | This feld holds physical warehouse where the work order will be done. |
| item | String | This feld holds item on which the work order will be done. |
| locationType | String | This feld holds location type of the fnal destination. |
| location | Number | This feld holds fnal destination for the item on the order. If the item is pre-distributed this location will be the store or warehouse on the allocation. If not, it will be the same warehouse as above. |
| sequenceNo | Number | This feld holds sequence number that is needed to ensure each record is unique, since the same work-in-progress code can be listed more than once on the same work order. |
| activityCode | String | This feld holds WIP code for the work to be done on the item. Valid values are in the codes table under the WWIP code type. |
| createDateTime | String | This column holds the record creation date. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON output:
"items": [
{
"action": "INSERT",
"workOrderId": 10007,
"orderNo": 10001,
"createDateTime": "2021-05-13T19:47:33.000Z",
"details": [
{
"warehouse": 5,
"item": "101550001",
"locationType": "W",
"location": 5,
"sequenceNo": 1,
"activityCode ": "QC",
"createDateTime": "2021-05-13T19:47:49.000Z"
}
],
"cacheTimestamp": "2021-06-21T05:42:18.934Z"
},
{
"action": "UPDATE",
"workOrderId": 15001,
"orderNo": 655005,
"createDateTime": "2021-08-05T03:17:27.000Z",
"details": [
{
"warehouse": 2,
"item": "100950020",
"locationType": "W",
"location": 2,
"sequenceNo": 2,
"activityCode ": "QC",
"createDateTime": "2021-08-05T03:20:54.000Z"
},
{
"warehouse": 2,
"item": "100950062",
"locationType": "W",
"location": 2,
"sequenceNo": 4,
"activityCode ": "KIT",
"createDateTime": "2021-08-05T12:08:03.000Z"
},
{
"warehouse": 2,
"item": "100950062",
"locationType": "W",
"location": 2,
"sequenceNo": 3,
"activityCode ": "TICKET",
"createDateTime": "2021-08-05T03:32:18.000Z"
},
{
"warehouse": 2,
"item": "100950062",
"locationType": "W",
"location": 2,
"sequenceNo": 2,
"activityCode ": "QC",
"createDateTime": "2021-08-05T03:20:54.000Z"
},
{
"warehouse": 2,
"item": "100950020",
"locationType": "W",
"location": 2,
"sequenceNo": 4,
"activityCode ": "KIT",
"createDateTime": "2021-08-05T12:08:03.000Z"
},
{
"warehouse": 2,
"item": "100950020",
"locationType": "W",
"location": 2,
"sequenceNo": 3,
"activityCode ": "TICKET",
"createDateTime": "2021-08-05T03:32:18.000Z"
}
],
"cacheTimestamp": "2021-08-05T12:08:56.163Z"
},
],
"hasMore": false,
"limit": 10000,
"count": 2,
"links": [
{
"href": "https://<hostname>:<port>/rgbu-rex-rgbu-dev1-mfcs19-1/
MerchIntegrations/services/inventory/woin?
limit=10000&since=1970-01-01T00:00:00.001Z&before=2022-03-26T02:28:02.971902+0
0:00",
"rel": "self"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_WOIN | Yes | No | Yes | Yes |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_EXT_WOIN | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_WOIN _JSON | Yes | No | No | No |
Transfer Work Order Publish Services
Endpoints
MerchIntegrations/services/inventory/woout
MerchIntegrations/services/inventory/woout/{workOrderId}
Functional Area
Inventory – Work Orders
Business Overview
This service publishes work-order-out data to downstream consuming systems. It publishes transfer work orders together with the related transfer and work-order detail built for outbound fulfillment. Functionally, the view only publishes transfer work orders whose source transfer location resolves to either a warehouse or an external finisher partner, and refresh and rebuild only load transfers whose TSFHEAD.APPROVAL_DATE is not null.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: TSF_WO_DETAIL, TSF_WO_HEAD, TSFDETAIL, TSF_XFORM_DETAIL, TSF_PACKING_DETAIL, TSFHEAD
Additional business tables: TSF_XFORM, TSF_PACKING, WH, PARTNER
JSON cache table: MERCHAPI_EXT_WOOUT
JSON generation view: V_MERCHAPI_EXT_WOOUT_JSON
The payload is assembled from transfer work-order data in TSF_WO_DETAIL, TSF_WO_HEAD, TSFDETAIL, TSF_XFORM_DETAIL, TSF_XFORM, TSF_PACKING_DETAIL, TSF_PACKING, TSFHEAD, WH, and PARTNER.
The view only publishes transfer work orders whose source transfer location resolves to either a warehouse or an external finisher partner, and the refresh/rebuild logic only loads transfers whose TSFHEAD.APPROVAL_DATE is not null.
Insert and update events republish the JSON payload as a merge, while direct delete events only mark the cache row deleted when a live cache row still exists.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_WOOUT_JSON and apply refresh and rebuild only load rows where TSFHEAD.APPROVAL_DATE is not null.
ICL (Integration Change Log) table: ICL_RMS_WOOUT (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on TSF_WO_DETAIL, TSF_WO_HEAD, TSFDETAIL, TSF_XFORM_DETAIL, TSF_PACKING_DETAIL, TSFHEAD.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_WOOUT
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_WO_OUT_ADHOC_PROCESS → MERCHAPI_EXT_WO_OUT_ADHOC_JOB
Webhook configuration api name: inventory/woout
Special handling
Additional GET query parameters: tsfNo.
Service Type
GET
ReST URL
MerchIntegrations/services/inventory/woout
MerchIntegrations/services/inventory/woout/{workOrderId}
Input Parameters for MerchIntegrations/services/inventory/woout
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| tsfNo | No | Number | TransferNo |
| offsetkey | No | String | Offset key |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-391 Input Parameter for “MerchIntegrations/services/inventory/woout/ {workOrderId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| workOrderId | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Input Parameters for MerchIntegrations/services/inventory/woout/{workOrderId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| workOrderId | Yes | Number | This is the unique identifer for work in process associated with an order or transfer. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output – WO Out Head
Table 5-392 PageResultsItemsMerchApiWorkOrderOut - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
Table 5-392 (Cont.) PageResultsItemsMerchApiWorkOrderOut - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-393 MerchApiWorkOrderOut - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for Work Order Out details. |
| workOrderId | No | Number(15,0) | This feld contains the unique identifer for work in process associated with an order or transfer. |
| distroNo | No | Number(12,0) | This feld contains the frst leg transfer number of the 2- legged transfer. |
| parentDistroNo | No | Number(12,0) | This feld contains the second leg transfer number of the 2- legged transfer. |
| fnisherLocationId | No | Number(10,0) | This feld contains the destination location for the transfer. |
| inventoryType | No | String (6) | This feld contains the code to indicate whether the inventory on the transfer is available. |
| createDateTime | No | dateTime | This column holds the record creation date. |
| updateDateTime | No | dateTime | This column holds the record updated date. |
| activityDetails | No | Collection of Object | This List holds attributes for details of Work Order Out record. |
| transformationDetails | No | Collection of Object | This List holds attributes for details of Work Order transformation details record. |
| packingDetails | No | Collection of Object | This List holds attributes for details of Work Order packing details record. |
Table 5-393 (Cont.) MerchApiWorkOrderOut - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| cacheTimestamp | No | dateTime | This feld specifes date and time when the Work Order Out record was last maintained. |
| cacheCreateTimestam p | No | dateTime | This feld specifes date and time when the record was frst created for web service publication. |
Table 5-394 WorkOrderOutDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | This feld contains the item associated with the fnishing activity. |
| activityId | No | Number(10,0) | This feld contains a code number indicating the activity that will be performed on the item. |
| activityUnitCost | No | Number(20,4) | This feld contains the per unit cost of the fnishing activity. |
| comments | No | String (2000) | This feld contains any comments regarding this activity. |
| invStatus | No | Number(2,0) | This feld contains the inventory status of the transfer detail. |
| createDateTime | No | dateTime | This column holds the record creation date. |
| updateDateTime | No | dateTime | This column holds the record updated date. |
Table 5-395 TransformationDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromItem | No | String (25) | This feld contains the original item on the transfer. |
| toItem | No | String (25) | This feld contains the item which results from the fnishing activity. |
| createDateTime | No | dateTime | This column holds the record creation date. |
Table 5-395 (Cont.) TransformationDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| updateDateTime | No | dateTime | This column holds the record updated date. |
Table 5-396 PackingDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | This feld contains the item resulting from the packing process. |
| packingSetNo | No | Number(10,0) | This feld contains packing set number from the packing process. |
| recordType | No | String (1) | This feld determines if the item in the ITEM feld is being used to create a pack (F - From) an item or a result of the pack creation process (R - Result). |
| quantity | No | Number(12,4) | This feld contains the quantity of the item used to create the pack or as a result of the packing process. |
| createDateTime | No | dateTime | This column holds the record creation date. |
| updateDateTime | No | dateTime | This column holds the record updated date. |
Table 5-397 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"workOrderId": 1,
"distroNo": 100000135001,
"parentDistroNo": 100000135000,
"finisherLocationId": 1,
"inventoryType": "A",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"activityDetails": [
{
"item": "101300002",
"activityId": 12122,
"activityUnitCost": 10,
"comments": null,
"invStatus": 1,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"transformationDetails": [
{
"fromItem": null,
"toItem": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"packingDetails": [
{
"item": null,
"packingSetNo": 1,
"recordType": null,
"quantity": 2,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output – WO Activity Details
| Name | Data Type | Description |
|---|---|---|
| item | String | Unique identifer for the item. |
| activityId | Number | This feld contains a code number indicating the activity that will be performed on the item. |
| activityUnitCost | Number | This feld contains the per unit cost of the fnishing activity. |
| comments | String | This feld contains any comments regarding this activity |
| invStatus | String | This feld contains the inventory status of the transfer detail. |
| createDateTime | String | This column holds the record creation date. |
| updateDateTime | String | This column holds the record updated date. |
Output – WO Transformation Details
| Name | Data Type | Description |
|---|---|---|
| fromItem | String | This feld contains the original item on the transfer. |
| toItem | String | This feld contains the item which results from the fnishing activity. |
| createDateTime | String | This column holds the record creation date. |
| updateDateTime | String | This column holds the record updated date. |
Output – WO Packing Details
| Name | Data Type | Description |
|---|---|---|
| item | String | This feld contains the item resulting from the packing process |
| packingSetNo | Number | This feld contains packing set number from the packing process. |
| recordType | String | This feld determines if the item in the ITEM feld is being used to create a pack (F - From) an item or a result of the pack creation process (R - Result). |
| quantity | Number | his feld contains the quantity of the item used to create the pack or as a result of the packing process. |
| createDateTime | String | This column holds the record creation date. |
| updateDateTime | String | This column holds the record updated date. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| Elements | Description |
|---|---|
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON output:
"items": [
{
"workOrderId": 1,
"distroNo": 100000135001,
"parentDistroNo": 100000135000,
"finisherLocationId": 15000,
"inventoryType": "A",
"createDateTime": "2020-10-31T16:00:00.000Z",
"updateDatetime": "2021-06-13T09:44:00.000Z",
"activityDetails": [{
"item": "101200001",
"activityId": 2,
"activityUnitCost": 0.3,
"comments": "2 pc 1 kit",
"invStatus": null,
"createDatetime": "2021-06-11T03:32:34.000Z",
"updateDateTime": "2021-06-11T03:32:34.000Z"
}, {
"item": "101300002",
"activityId": 3,
"activityUnitCost": 0.3,
"comments": null,
"invStatus": null,
"createDatetime": "2021-06-11T03:57:54.000Z",
"updateDateTime": "2021-06-11T03:57:54.000Z"
}, {
"item": "101800040",
"activityId": 2,
"activityUnitCost": 0.3,
"comments": null,
"invStatus": null,
"createDatetime": "2021-06-11T03:35:58.000Z",
"updateDateTime": "2021-06-11T03:35:58.000Z"
}],
"transformationDetails": [{
"fromItem": "OMNITESTITEM",
"toItem": "100000323",
"createDateTime": "2021-06-11T03:13:17.000Z",
"updateDateTime": "2021-06-11T03:13:17.000Z"
}],
"packingDetails": [{
"item": "101800040",
"packingSetNo": 1,
"recordType": "F",
"quantity": 10,
"createDateTime": "2021-06-11T03:10:13.000Z",
"updateDateTime": "2021-06-11T03:10:13.000Z"
}, {
"item": "101800040",
"packingSetNo": 1,
"recordType": "R",
"quantity": 10,
"createDateTime": "2021-06-11T03:10:13.000Z",
"updateDateTime": "2021-06-11T03:10:13.000Z"
}]
},
],
"hasMore": false,
"limit": 10000,
"count": 1,
"links": [
{
"href": "https://rex.retail.us-phoenix-1.ocs.oc-test.com/rgbu-rex-rgbu-
dev1-mfcs19-1/MerchIntegrations/services/inventory/woin?
limit=10000&since=1970-01-01T00:00:00.001Z&before=2022-03-26T02:28:02.971902+0
0:00",
"rel": "self"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_WOOUT | Yes | No | Yes | Yes |
| MERCHAPI_EXT_WOOUT | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_WOOUT_JSON | Yes | No | No | No |
Items
The following services are included in this functional area:
-
Item Definition
-
Item AI Services
-
Item Attribute Extraction Services
- Get Item Attributes Base
-
-
-
Get Item Attributes Customized
-
- Update Item Attributes Customized
-
– Item Download Service * Get Item Details * Get Item Details for All or Provided Items * Get Item Details for Provided Item * Get Item Location Details * Get Item VAT Details * Get Item VAT Details by Item Number
-
– Item ELC Upload Service * Create Item Conditional Tariff Treatments * Create Item Expenses * Create Item HTS * Create Item HTS Assessments * Delete Item Conditional Tariff Treatments * Delete Item Expenses * Delete Item HTS * Delete Item HTS Assessments * Update Item Expenses * Update Item HTS * Update Item HTS Assessments
-
– Item Location Upload Service * Create Item Locations * Manage Item Location Status Update Requests * Update Item Locations
-
– Item Number Reservation Upload Service * Generate and Reserve Item Numbers
-
– Item Placeholder Upload Service * Create Placeholder Items
-
– Item Sourcing Upload Service * Create Item Supplier Countries * Create Item Supplier Countries of Manufacture * Create Item Supplier Country Dimensions * Create Item Supplier Country Locations * Create Item Supplier Translations * Create Item Suppliers * Delete Item Supplier Countries * Delete Item Supplier Countries of Manufacture
-
Delete Item Supplier Country Dimensions
-
- Delete Item Supplier Country Locations * Delete Item Supplier Translations
-
Delete Item Suppliers
-
Update Item Supplier Countries
-
Update Item Supplier Countries of Manufacture
-
Update Item Supplier Country Dimensions
-
Update Item Supplier Country Locations
-
- Update Item Supplier Translations * Update Item Suppliers
-
-
Item Taxes Upload Service * Create Item Taxes
- Delete Item Taxes
-
Item Up Charge Download Service
- Get Item Up Charges for Future Date
-
Item Upload Service * Create Item Description Translations * Create Item Image Translations * Create Item Images
-
Create Item Seasons
-
-
Create Item Tickets * Create Item UDA Free Form Translations * Create Item UDAs * Create Item Up Charges * Create Items * Create Required Documents * Delete Item Description Translations * Delete Item Image Translations * Delete Item Images * Delete Item Seasons * Delete Item Tickets * Delete Item UDA Free Form Translations * Delete Item UDAs * Delete Item Up Charges * Delete Items * Delete Required Documents * Update Item Description Translations * Update Item Image Translations
-
Update Item Images
-
Update Item Tickets
-
Update Item UDA Free Form Translations
-
Update Item UDAs
-
Update Item Up Charge Details
-
Update Items
-
-
Related Items Upload Service
-
Create Related Items
-
Create Related Item Translations
-
Delete Related Items
-
Delete Related Item Translations
-
Update Related Items
-
Update Related Item Translations
-
-
-
Item Foundation
-
Brand Download Service
- Get Brands
-
Brand Upload Service
- Manage Brands
-
Differentiator Download Service
-
Get Differentiator Details
-
Get Differentiator Details for Provided Differentiator
-
Get Differentiator Details for Single Differentiator
-
-
Differentiator Group Download Service * Get Differentiator Groups
- Get Differentiators for Provided Group
-
Differentiator Group Upload Service
-
Create Differentiator Group Details
-
- Create Differentiator Groups * Delete Differentiator Group Details * Delete Differentiator Groups * Update Differentiator Group Details * Update Differentiator Groups
-
– Differentiator Type Download Service * Get Differentiator Type Details for Provided Type
-
Get Differentiator Types
-
– Differentiator Upload Service * Create Differentiators * Delete Differentiators
-
Update Differentiators
-
-
Seasons and Phases Download Service
- Get Seasons and Phases Service
-
User Defined Attribute (UDA) Download Service
-
REST Endpoint for UDA details
-
REST Endpoint to Fetch UDA by UDA ID
-
Item AI Services
The following services are included in this functional area:
- Item Attribute Extraction Services
Item Attribute Extraction Services
The following services are included in this functional area:
-
Get Item Attributes Base
-
Get Item Attributes Customized
-
Update Item Attributes Customized
Get Item Attributes Base
Endpoints
/RmsReSTServices/services/private/ai/item/attributes/base
Functional Area
Items Attributes Extraction
Business Overview
Fetches the default (out-of-the-box) set of item attributes that ODA can extract. Use this to see all pre-configured attributes.
Service Type
GET
ReST URL
/RmsReSTServices/services/private/ai/item/attributes/base
Output
| Name | Data Type | Description |
|---|---|---|
| Array of String | Each key in the JSON response is a product category name (e.g., APPAREL, ELECTRONICS). | |
| The value is an array of | ||
| extractable attribute names | ||
| (Strings) for that category. |
| Name | Data Type | Description |
|---|---|---|
| attribute | String | Each element within the array is the name of an attribute extractable for the given category (e.g., color, brand, price) |
Elements in JSON Output
| Elements | Description |
|---|---|
| CATEGORY_NAME | Product category name (e.g., “APPAREL”, “ELECTRONICS”) |
| Attribute | Extractable attribute for the category (e.g., “color”, “price”) |
JSON Schema Overview
{
"CATEGORY_NAME": [
"attribute1",
"attribute2",
"attribute3"
// ...more attributes
],
// ...more categories
}
Example JSON output
{
"APPAREL": [
"productType",
"material",
"color",
"size",
"fit",
"pattern",
"sleeveLength",
"neckStyle",
"gender",
"occasion",
"price"
],
"BAGS": [
"productType",
"material",
"color",
"capacity",
"closureType",
"style",
"price"
],
"COSMETICS": [
"productType",
"brand",
"shade",
"form",
"skinType",
"scent",
"size",
"price"
],
"ELECTRONICS": [
"productType",
"brand",
"model",
"color",
"memory",
"features",
"price"
],
"FOOTWEAR": [
"productType",
"material",
"color",
"size",
"closureType",
"soleMaterial",
"heelType",
"usage",
"price"
],
"FRESH PRODUCE": [
"productType",
"brand",
"weight",
"units",
"packaging",
"expiryDate",
"price"
],
"FURNITURE": [
"productType",
"material",
"color",
"dimensions",
"style",
"roomType",
"price"
],
"GROCERY": [
"productType",
"brand",
"flavor",
"weight",
"packaging",
"expiryDate",
"price"
],
"JEWELRY": [
"productType",
"material",
"stoneType",
"cutShape",
"color",
"sizeDimensions",
"price"
],
"PET SUPPLIES": [
"productType",
"brand",
"packaging",
"weight",
"flavor",
"petCategory",
"expiryDate",
"price"
],
"PHARMA": [
"productType",
"brand",
"flavor",
"packaging",
"expiryDate",
"price"
]
}
Get Item Attributes Customized
Endpoints
/RmsReSTServices/services/private/ai/item/attributes
Functional Area
Items Attributes Extraction
Business Overview
Retrieves only those item attributes that have been customized for extraction. If no customizations have been made, the response will be empty. Use this endpoint to check which product categories and attributes have customized extraction setups in your system.
Service Type
GET
ReST URL
/RmsReSTServices/services/private/ai/item/attributes
Output
| Name | Data Type | Description |
|---|---|---|
| Array of String | Each key in the JSON response is a product category name (e.g., APPAREL, ELECTRONICS). The value is an array of extractable attribute names (Strings) for that category. | |
| attribute | String | Each element within the array is the name of an attribute extractable for the given category (e.g., color, brand, price) |
Elements in JSON Output
| Elements | Description |
|---|---|
| CATEGORY_NAME | Product category name (e.g., “APPAREL”, “ELECTRONICS”) |
| Attribute | Extractable attribute for the category (e.g., “color”, “price”) |
JSON Schema Overview
{
"CATEGORY_NAME": [
"attribute1",
"attribute2",
"attribute3"
// ...more attributes
],
// ...more categories
}
Example JSON output
{
"APPAREL": [
"productType",
"material",
"color",
"size",
"fit",
"pattern",
"sleeveLength",
"neckStyle",
"gender",
"occasion",
"price"
],
"BAGS": [
"productType",
"material",
"color",
"capacity",
"closureType",
"style",
"price"
],
"COSMETICS": [
"productType",
"brand",
"shade",
"form",
"skinType",
"scent",
"size",
"price"
],
"ELECTRONICS": [
"productType",
"brand",
"model",
"color",
"memory",
"features",
"price"
],
"FOOTWEAR": [
"productType",
"material",
"color",
"size",
"closureType",
"soleMaterial",
"heelType",
"usage",
"price"
],
"FRESH PRODUCE": [
"productType",
"brand",
"weight",
"units",
"packaging",
"expiryDate",
"price"
],
"FURNITURE": [
"productType",
"material",
"color",
"dimensions",
"style",
"roomType",
"price"
],
"GROCERY": [
"productType",
"brand",
"flavor",
"weight",
"packaging",
"expiryDate",
"price"
],
"JEWELRY": [
"productType",
"material",
"stoneType",
"cutShape",
"color",
"sizeDimensions",
"price"
],
"PET SUPPLIES": [
"productType",
"brand",
"packaging",
"weight",
"flavor",
"petCategory",
"expiryDate",
"price"
],
"PHARMA": [
"productType",
"brand",
"flavor",
"packaging",
"expiryDate",
"price"
]
}
Update Item Attributes Customized
Endpoints
/RmsReSTServices/services/private/ai/item/attributes
Functional Area
Items Attributes Extraction
Business Overview
Allows you to add or remove attributes to be extracted through the Oracle Digital Assistant (ODA).
Service Type
POST
ReST URL
/RmsReSTServices/services/private/ai/item/attributes
Input
| Name | Data Type | Description |
|---|---|---|
| Array of String | Each key in the JSON response is a product category name (e.g., APPAREL, ELECTRONICS). The value is an array of extractable attribute names (Strings) for that category. | |
| attribute | String | Each element within the array is the name of an attribute extractable for the given category (e.g., color, brand, price) |
Output
| Name | Data Type | Description |
|---|---|---|
| status | String | Indicates the result of the data |
| override action. The value will confrm successful completion | ||
if updates were processed without error. |
Elements in JSON Input
| Elements | Description |
|---|---|
| CATEGORY_NAME | Product category name (e.g., “APPAREL”, “ELECTRONICS”) |
| Attribute | Extractable attribute for the category (e.g., “color”, “price”) |
Input JSON Schema Overview
{
"CATEGORY_NAME": [
"attribute1",
"attribute2",
"attribute3"
// ...more attributes
],
// ...more categories
}
Example JSON input
{
"APPAREL": [
"productType",
"material",
"color",
"size",
"fit",
"pattern",
"sleeveLength",
"neckStyle",
"gender",
"occasion",
"price"
],
"BAGS": [
"productType",
"material",
"color",
"capacity",
"closureType",
"style",
"price"
],
"COSMETICS": [
"productType",
"brand",
"shade",
"form",
"skinType",
"scent",
"size",
"price"
],
"ELECTRONICS": [
"productType",
"brand",
"model",
"color",
"memory",
"features",
"price"
],
"FOOTWEAR": [
"productType",
"material",
"color",
"size",
"closureType",
"soleMaterial",
"heelType",
"usage",
"price"
],
"FRESH PRODUCE": [
"productType",
"brand",
"weight",
"units",
"packaging",
"expiryDate",
"price"
],
"FURNITURE": [
"productType",
"material",
"color",
"dimensions",
"style",
"roomType",
"price"
],
"GROCERY": [
"productType",
"brand",
"flavor",
"weight",
"packaging",
"expiryDate",
"price"
],
"JEWELRY": [
"productType",
"material",
"stoneType",
"cutShape",
"color",
"sizeDimensions",
"price"
],
"PET SUPPLIES": [
"productType",
"brand",
"packaging",
"weight",
"flavor",
"petCategory",
"expiryDate",
"price"
],
"PHARMA": [
"productType",
"brand",
"flavor",
"packaging",
"expiryDate",
"price"
]
}
Elements in JSON Output
| Elements | Description |
|---|---|
| status | Indicates the result of the customization |
| operation. Returns a message confrming | |
| success or providing details in case of failure. |
Output JSON Schema Overview
{
"status": "string"
}
Example JSON Output
{
"status": "Data overrides done successfully"
}
Item Definition
The following services are included in this functional area:
-
Item Download Service
-
Get Item Attributes Base
-
Get Item Attributes Customized
-
Get Item Details
-
Get Item Details for All or Provided Items
-
Get Item Details for Provided Item
-
Get Item Location Details
-
Get Item VAT Details
-
Get Item VAT Details by Item Number
-
-
Item ELC Upload Service
-
Create Item Conditional Tariff Treatments
-
Create Item Expenses
-
Create Item HTS
-
Create Item HTS Assessments
-
Delete Item Conditional Tariff Treatments
-
Delete Item Expenses
-
Delete Item HTS
-
Delete Item HTS Assessments
-
Update Item Expenses
-
Update Item HTS
-
Update Item HTS Assessments
-
-
Item Location Upload Service
-
Create Item Locations
-
Manage Item Location Status Update Requests
-
Update Item Locations
-
-
Item Number Reservation Upload Service
- Generate and Reserve Item Numbers
-
Item Placeholder Upload Service
- Create Placeholder Items
-
Item Sourcing Upload Service
-
Create Item Supplier Countries
-
Create Item Supplier Countries of Manufacture
-
– Create Item Supplier Country Dimensions
-
Create Item Supplier Country Locations
-
Create Item Supplier Translations
-
Create Item Suppliers
-
Delete Item Supplier Countries
-
Delete Item Supplier Countries of Manufacture
-
– Delete Item Supplier Country Dimensions
-
Delete Item Supplier Country Locations
-
Delete Item Supplier Translations
-
Delete Item Suppliers
-
– Update Item Supplier Countries
-
Update Item Supplier Countries of Manufacture
-
– Update Item Supplier Country Dimensions
-
-
Update Item Supplier Country Locations
-
– Update Item Supplier Translations
-
– Update Item Suppliers
-
• Item Taxes Upload Service – Create Item Taxes – Delete Item Taxes
-
Item Up Charge Download Service – Get Item Up Charges for Future Date
-
• Item Upload Service – Create Item Description Translations
-
– Create Item Image Translations
-
– Create Item Images
-
Create Item Seasons
-
Create Item Tickets
-
Create Item UDA Free Form Translations
-
Create Item UDAs
-
Create Item Up Charges
-
Create Items
-
Create Required Documents
-
Delete Item Description Translations
-
Delete Item Image Translations
-
Delete Item Images
-
Delete Item Seasons
-
Delete Item Tickets
-
Delete Item UDA Free Form Translations
-
Delete Item UDAs
-
Delete Item Up Charges
-
Delete Items
-
Delete Required Documents
-
Update Item Description Translations
-
Update Item Image Translations
-
Update Item Images
-
Update Item Tickets
-
Update Item UDA Free Form Translations
-
Update Item UDAs
-
Update Item Up Charge Details
-
Update Items
-
-
Related Items Upload Service
-
Create Related Items
-
Create Related Item Translations
-
Delete Related Items
-
Delete Related Item Translations
-
Update Related Items
-
Update Related Item Translations
-
Item Download Service
The following services are included in this functional area:
-
Get Item Attributes Base
-
Get Item Attributes Customized
-
Get Item Details
-
Get Item Details for All or Provided Items
-
Get Item Details for Provided Item
-
Get Item Location Details
-
Get Item VAT Details
-
Get Item VAT Details by Item Number
Get Item Details
This section describes the Item Detail service.
Business Overview
Item Detail service allows user to retrieve Item information for a selected item.
Service Type
Get
ReST URL
Item/itemDetail?item={itemNumber}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Item | Yes | Item number |
Output
RestItemRecRDO
| Parameter Name | Data Type |
|---|---|
| itemGrandparent | String |
| itemParent | String |
| item | String |
| itemDesc | String |
| shortDesc | String |
| packInd | String |
| status | String |
| itemLevel | BigDecimal |
| tranLevel | BigDecimal |
| dept | BigDecimal |
| classAttribute | BigDecimal |
| subclass | BigDecimal |
| diff1 | String |
| diff2 | String |
| diff3 | String |
| diff4 | String |
| primaryRefItemInd | String |
| originalRetail | BigDecimal |
| sellableInd | String |
| orderableInd | String |
| Parameter Name | Data Type |
|---|---|
| inventoryInd | String |
| packitemBreakout | List |
| itemSupplier | List |
| itemSupplierCountry | List |
| vatItem | List |
| longDesc | String |
RestPackitemBreakoutRecRDO
| Parameter Name | Data Type |
|---|---|
| item | String |
| seqNo | BigDecimal |
| packItemQty | BigDecimal |
RestItemSupplierRecRDO
| Parameter Name | Data Type |
|---|---|
| supplier | BigDecimal |
| vpn | String |
| primarySuppInd | String |
| directShipInd | String |
RestItemSupplierCountryRecRDO
| Parameter Name | Data Type |
|---|---|
| originCountryId | String |
| primaryCountryInd | String |
| unitCost | BigDecimal |
| suppPackSize | BigDecimal |
| innerPackSize | BigDecimal |
| leadTime | BigDecimal |
| pickupLeadTime | BigDecimal |
RestVatItemRecRDO
| Parameter Name | Data Type |
|---|---|
| vatRegion | BigDecimal |
| vatType | String |
| vatCode | String |
| vatRate | BigDecimal |
| activeDate | Timestamp |
JSON Structure
{
"itemGrandparent": null,
"itemParent": null,
"item": null,
"itemDesc": null,
"shortDesc": null,
"packInd": null,
"status": null,
"itemLevel": null,
"tranLevel": null,
"dept": null,
"classAttribute": null,
"subclass": null,
"diff1": null,
"diff2": null,
"diff3": null,
"diff4": null,
"primaryRefItemInd": null,
"originalRetail": null,
"sellableInd": null,
"orderableInd": null,
"inventoryInd": null,
"packitemBreakout": [],
"itemSupplier": [
{
"primarySuppInd": null,
"itemSupplierCountry": [
{
"unitCost": null,
"leadTime": null,
"suppPackSize": null,
"originCountryId": null,
"primaryCountryInd": null,
"pickupLeadTime": null,
"innerPackSize": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"supplier": null,
"vpn": null,
"directShipInd": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"vatItem": [
{
"vatRegion": null,
"activeDate": null,
"vatType": null,
"vatCode": null,
"vatRate": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"longDesc": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_ITEM_MASTER | Yes | No | No | No |
| PACKITEM_BREAKOUT | Yes | No | No | No |
| ITEM_SUPPLIER | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| VAT_ITEM | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Get Item Details for All or Provided Items
Endpoints
MerchIntegrations/services/foundation/item
MerchIntegrations/services/foundation/item/{itemId}
Functional Area
Items - Item Definition
Business Overview
This service publishes item master data for transaction-level items and higher merchandise hierarchy nodes to downstream consuming systems. The payload combines core item attributes with translations, supplier and sourcing details, UDA values, images, tickets, related items, compliance and import data, and custom flex attributes. End-to-end publication is limited to items that qualify through the refresh and delta flow: refresh seeds items in approved or deleted status, item-master inserts are not queued until the item is approved, and item-master updates in worksheet or submitted status are suppressed. Below-transaction-level reference or UPC items are not published as standalone records; their changes refresh the parent item’s referenceItem node.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: ITEM_MASTER, ITEM_MASTER_TL, ITEM_SUPPLIER, ITEM_SUPP_UOM, ITEM_SUPP_COUNTRY, ITEM_SUPP_COUNTRY_DIM, ITEM_SUPP_MANU_COUNTRY, ITEM_TICKET, UDA_ITEM_DATE, UDA_ITEM_LOV, UDA_ITEM_FF, ITEM_IMAGE, ITEM_SEASONS, ITEM_HTS, ITEM_EXP_HEAD, ITEM_EXP_DETAIL, RELATED_ITEM_HEAD, RELATED_ITEM_DETAIL, REQ_DOC, ITEM_IMPORT_ATTR
Additional business tables: ITEM_MASTER_CFA_EXT, ITEM_SUPPLIER_CFA_EXT, ITEM_SUPP_COUNTRY_CFA_EXT, DEPS, GROUPS, DIVISION, CLASS, SUBCLASS, BRAND, DIFF_IDS, DIFF_GROUP_HEAD, SYSTEM_OPTIONS, SYSTEM_CONFIG_OPTIONS, CODE_DETAIL
JSON cache table: MERCHAPI_EXT_ITEM
JSON generation view: V_MERCHAPI_EXT_ITEM_JSON
Is keyed by ITEM_MASTER rows with ITEM_LEVEL ⇐ TRAN_LEVEL, so the published entity is the transaction-level item or a higher hierarchy node.
The payload combines core item attributes with translations, supplier and sourcing data, UDAs, images, tickets, related items, HTS and expense data, import attributes, custom flex attributes, and supporting hierarchy and lookup values.
Below-transaction-level reference or UPC items are not published as standalone payloads; their data is rolled into the parent item’s referenceItem node.
Initial Seeding and post enablement rebuild/repair
Initial seeding selects ITEM_MASTER rows where STATUS IN (‘A’, ‘D’) and ITEM_LEVEL ⇐ TRAN_LEVEL, then builds the published JSON through V_MERCHAPI_EXT_ITEM_JSON.
Rebuild marks cache rows deleted when the item no longer exists in ITEM_MASTER.
ICL (Integration Change Log) table: ICL_RMS_ITEM_MASTER, ICL_RMS_ITEM_SUPPLIER, ICL_RMS_ITEM_SUPP_UOM, ICL_RMS_ITEM_SUPP_CTRY, ICL_RMS_ITEM_SUPP_CTRY_DIM, ICL_RMS_ITEM_SUPP_MANU_CTRY, ICL_RMS_ITEM_TICKET, ICL_RMS_UDA_ITEM_DATE, ICL_RMS_UDA_ITEM_LOV, ICL_RMS_UDA_ITEM_FF, ICL_RMS_ITEM_IMAGE, ICL_RMS_ITEM_SEASONS, ICL_RMS_ITEM_HTS, ICL_RMS_ITEM_EXP, ICL_RMS_RELATED_ITEM, ICL_RMS_REQ_DOC, ICL_RMS_ITEM_IMPORT_ATTR (ICL consumer name = MERCHAPI)
Item-master inserts are staged only when the new item is approved, approval transitions are staged as insert-style publishes, and item-master updates in worksheet or submitted status are suppressed.
ITEM_MASTER_TL changes are queued only for items with ITEM_LEVEL ⇐ TRAN_LEVEL, and below-transaction-level item changes are rolled up to ITEM_PARENT so the parent payload is refreshed.
Item Approval Handling
Approval of an item also results in publish of foundation/omnichannel/item/image, foundation/ omnichannel/item/relateditem, foundation/item/location, foundation/item/vat, and foundation/ taxLocationItem. The item approval flow writes the existing ITEM_IMAGE, RELATED_ITEM_HEAD/DETAIL, ITEM_LOC, and VAT_ITEM source rows for that item into those APIs’ ICL tables so dependent approved-item data is queued together with the item.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_ITEM
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_ITEM_ADHOC_PROCESS - > MERCHAPI_EXT_ITEM_ADHOC_JOB
Webhook configuration api name: foundation/item
Special handling
Additional GET query parameters: itemLevel, tranLevel, deptId, classId, subclassId, status, itemType, inventoryInd, supplier, referenceItem.
The filters itemLevel, tranLevel, deptId, classId, subclassId, status, and itemType are not backed by dedicated cache-table indexes. At high volume, use them only as additional criteria on top of a small-window delta fetch and not for full downloads.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime characteristics and should be evaluated separately. The available configuration for this service should therefore be reviewed and validated against the customer production data profile, including expected volume, message size, and access pattern, with the key performance-related configuration for this service covering the following:
Multi-threading and commit control
This service supports multi-threaded execution for initial seeding, while delta processing remains a single threaded process. Initial-seeding thread count is controlled through API_REFRESH_OVERRIDE_NO_OF_THREADS, and initial-seeding commit sizing is controlled through API_REFRESH_OVERRIDE_COMMIT_MAX_COUNTER.
For initial seeding, thread and commit settings should be chosen together based on expected row volume, average message size, and the complex SQL query required to build the item message from ITEM_MASTER together with supplier, UDA, image, ticket, related-item, HTS, expense, import, and hierarchy data. Common starting points for large-volume seeding are 8, 16, or 32 threads. Values of 48 or 64 threads should be considered only after testing and with awareness of competing workload in the environment. The delivered refresh override is currently 4 threads.
Refresh commit sizing should be reviewed together with the thread setting. The delivered refresh override commit setting is currently 10000 and that should be used if the thread value is low. If running with higher thread value, the typical value can range from about 100 to 1,000 rows.
Dropping indexes and constraints during seeding
This option applies only to initial seeding, including truncate-and-load execution. Even with refresh-override threading, larger parallel insert volumes can increase index maintenance overhead and slow the load.
To reduce that overhead, DROP_INDEX_ON_REFRESH can be enabled so indexes and constraints are dropped before seeding and rebuilt after the load completes.
This can improve data-load throughput, but the overall refresh plan should also account for the additional time needed for index rebuild after the seeding step finishes. GATHER_STATS_ON_REFRESH should normally remain enabled unless testing shows a need to change it.
REST fetch considerations
Item payloads can be comparatively large, so REST page size should be selected based on average message size so that the average response remains below about 10 MB per call. Common page-limit values for this service should be 500 or 1,000, and very small limits, especially below 100, should generally be avoided.
For full downloads, do not provide the since query parameter so the database can favor the primary-key access path. For delta downloads, use a small time window, typically a few minutes and at most a few hours, so the eligible row set on the LAST_UPDATE_DATETIME index remains small.
Wider delta windows, especially multi-day windows that can arise during outages or data recovery, generally do not perform well. For such scenarios, keeping BUILD_HISTOGRAM enabled allows the service to support recovery through smaller, more selective polling windows using the optimalBefore query parameter.
In this catch-up pattern, for requests up to 30 days in the past, the client provides optimalBefore and leaves before empty. The client then uses the returned before timestamp to continue polling incrementally until the backlog is cleared, and then resumes the normal shortwindow delta pattern. Hourly histogram processing groups LAST_UPDATE_DATETIME values into buckets of 10,000 rows in MERCHAPI_TIMESTAMP_HISTOGRAM using the shared HISTOGRAM_ROW_COUNT configuration.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/item
MerchIntegrations/services/foundation/item/{itemId}
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| itemLevel | No | String | Item Level - 1, 2, or 3 |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| tranLevel | No | String | Transaction Level- 1, 2, or 3 |
| deptId | No | String (4) | Department Id |
| classId | No | String (4) | Class Id |
| subclassId | No | String (4) | Sub Class Id |
| status | No | String | Status |
| itemType | No | String | Item Type |
| inventoryInd | No | String | Inventoried |
| supplier | No | String | Supplier |
| referenceItem | No | String | Reference Item |
| offsetkey | No | String | Offset key (Item) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-398 Input Parameter for “MerchIntegrations/services/foundation/item/{itemId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| itemId | Yes | String | Item Id |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-399 PageResultsItemsMerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-400 MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for Item details |
| longtDescription | No | String | |
| item | No | String (25) | This feld specifes Unique alphanumeric value that identifes the item. |
| itemNumberType | No | String (6) | This feld holds the type of item number. Valid values are defned by code type UPCT. |
| status | No | String (1) | This feld specifes status of the item. |
| itemLevel | No | Number(1,0) | This feld specifes Number indicating which of the three levels the item resides. The item level determines if the item stands alone or if it is part of a family of related items. The item level also determines how the item may be used throughout the system. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| tranLevel | No | Number(1,0) | This feld specifes Number indicating which of the three levels transactions occur for the item’s group. The transaction level is the level at which the item’s inventory is tracked in the system. The transaction level item will be counted, transferred, shipped, etc. The transaction level may be at the current item or up to 2 levels above or below the current item. Only one level of the hierarchy of an item family may contain transaction level items. |
| itemDescription | No | String (250) | This feld specifes long description of the item. This description is used through out the system to help online users identify the item. For items that have parents, this description will default to the parents description plus any differentiators. For items without parents this description will default to null. |
| shortDescription | No | String (120) | This feld specifes shortened description of the item. This description is the default for downloading to the POS. For items that have parents, this description will default to the parent’s short description. For items without parents, this description will default to null. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemDescriptionUpper case | No | String (250) | This feld specifes all upper case description of the item (same as upper(item_desc)). This feld is not displayed in the on- line item maintenance dialog, but is used in item list of value search processing through out the system. |
| itemDescriptionSecon dary | No | String (250) | This feld specifes secondary descriptions of the item. This feld can only be populated when system_options.second ary_desc_ind = Y. |
| longDescription | No | String (2000) | This feld specifes long description of the item. This is a more descriptive writeup about the item targeted largely for platforms like Ecommerce platforms, Marketplaces, Order Management Systems etc. |
| itemParent | No | String (25) | This feld specifes alphanumeric value that uniquely identifes the item/ group at the level above the item. |
| itemGrandparent | No | String (25) | This feld specifes alphanumeric value that uniquely identifes the item/ group at the level above the item. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| sellableInd | No | String (1) | This feld indicates if pack item may be sold as a unit. If it is ‘Y’ then the pack will have its own unique unit retail. If it is ‘N’ then the pack’s unit retail is the sum of each individual item’s total retail within the pack. This feld will only be available if the item is a pack item. Value values are: Y = Yes, this pack may be sold as a unit; N = No, this pack man not be sold as a unit. |
| orderableInd | No | String (1) | This feld indicates if pack item is orderable. If it is ‘Y’ then the suppliers of the pack must supply all components in the pack. If it is ‘N’ then the components may have different suppliers. This feld will only be available if the item is a pack item. Valid values are: Y = Yes, this pack may be ordered, N = No, this pack may not be ordered. |
| inventoryInd | No | String (1) | This feld specifes inventory Indicator. |
| packInd | No | String (1) | This feld indicates if the item is a pack. A pack item is a collection of items that may be either ordered or sold as a unit. Packs require details (i.e. component items and qtys, etc.) that other items do not. This feld is required by the database. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| simplePackInd | No | String (1) | This feld indicates if pack item is a simple pack or not. This feld will only be available if the item is a pack item. A simple pack is an item whose components are all the same item (i.e. a six pack of cola, etc). Valid values are:Y = Yes, this item is a simple pack; N = No if this is not a simple pack. |
| containsInnerInd | No | String (1) | This feld indicates if pack item contains inner packs. Vendor packs will never contain inner packs and this feld will be defaulted to ‘N’. This feld will only be available if the item is a pack item. Valid values are Y = Yes, this pack contains inner packs; N = No, this pack does not contain inner packs. |
| dept | No | Number(4,0) | This feld specifes number identifying the department to which the item is attached. The item’s department will be the same as that of its parent (and, by transitivity, to that of its grandparent). Valid values for this feld are located on the deps table. |
| deptName | No | String (120) | This feld contains the name of the department. |
| class | No | Number | |
| className | No | String (120) | This feld contains the name of the class. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| uniqueClassId | No | Number(10,0) | This feld uniquely identify the class which the item belongs to.Class is not unique ID the merchandise hierarchy.The combination of Dept/ Class is unique, but requires use of a composite key.The composite key is generally used in user interfaces.The unique ID can be used in back end processing or in systems that can not have a composite key in the merchandise hierarchy. |
| subclass | No | Number(4,0) | This feld specifes number identifying the subclass to which the item is attached. The item’s subclass will be the same as that of its parent (and, by transitivity, to that of its grandparent). Valid values for this feld are located on the subclass table. |
| subclassName | No | String (120) | This feld contains the name of the subclass. |
| uniqueSubclassId | No | Number(10,0) | This feld uniquely identify the subclass which the item belongs to.Sublass is not unique ID the merchandise hierarchy.The combination of Dept/ Class/Subclass is unique, but requires use of a composite key.The composite key is generally used in user interfaces.The unique ID can be used in back end processing or in systems that can not have a composite key in the merchandise hierarchy. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| unitRetail | No | Number(20,4) | This feld holds the unit retail in the standard unit of measure for the item/ zone combination. This feld is stored in the local currency. |
| variableUpcFormatId | No | String (1) | This feld will hold the format ID that corresponds to the item’s variable UPC. This value is only used for items with variable UPCs. |
| variableWeightUpcPref ix | No | Number(2,0) | This feld holds the prefx for variable weight UPCs. The prefx determines the format of the eventual UPC and will be used to decode variable weight UPCs that are uploaded from the POS. It is the clients responsibility to download this value to their POS system. |
| diff1 | No | String (10) | This feld contains diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group (i.e. Men’s pant sizes) or a value (6 oz). For an item that is not a parent, this feld may contain a value (34X34, Red, etc.). Valid values are found on the diff_group and diff_id tables. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diff1Type | No | String (6) | This feld will hold a value of all possible differential types. (for example, ‘S’ - size, ‘C’ - color, ‘F’ - favor, ‘E’ - scent, ‘P’ - pattern). Valid values are stored on the code_detail table with the code_type ‘DIFF’ and on the diff_type table. |
| diff2 | No | String (10) | This feld contains diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group (i.e. Men’s pant sizes) or a value (6 oz). For an item that is not a parent, this feld may contain a value (34X34, Red, etc.). Valid values are found on the diff_group and diff_id tables. |
| diff2Type | No | String (6) | This feld will hold a value of all possible differential types. (for example, ‘S’ - size, ‘C’ - color, ‘F’ - favor, ‘E’ - scent, ‘P’ - pattern). Valid values are stored on the code_detail table with the code_type ‘DIFF’ and on the diff_type table. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diff3 | No | String (10) | This feld contains diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group (i.e. Men’s pant sizes) or a value (6 oz). For an item that is not a parent, this feld may contain a value (34X34, Red, etc.). Valid values are found on the diff_group and diff_id tables. |
| diff3Type | No | String (6) | This feld will hold a value of all possible differential types. (for example, ‘S’ - size, ‘C’ - color, ‘F’ - favor, ‘E’ - scent, ‘P’ - pattern). Valid values are stored on the code_detail table with the code_type ‘DIFF’ and on the diff_type table. |
| diff4 | No | String (10) | This feld contains diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group (i.e. Men’s pant sizes) or a value (6 oz). For an item that is not a parent, this feld may contain a value (34X34, Red, etc.). Valid values are found on the diff_group and diff_id tables. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diff4Type | No | String (6) | This feld will hold a value of all possible differential types. (for example, ‘S’ - size, ‘C’ - color, ‘F’ - favor, ‘E’ - scent, ‘P’ - pattern). Valid values are stored on the code_detail table with the code_type ‘DIFF’ and on the diff_type table. |
| costZoneGroupId | No | Number(4,0) | This feld contains cost zone group associated with the item. This feld is only required when elc_ind (landed cost indicator) is set to ’Y’ on the system_options table. |
| standardUom | No | String (4) | This feld contains unit of measure in which stock of the item is tracked at a corporate level. |
| uomConversionFactor | No | Number(20,10) | This feld contains Conversion factor between an ‘Each’ and the standard_uom when the standard_uom is not in the quantity class (e.g. if standard_uom = lb and 1 lb = 10 eaches, this factor will be 10). This factor will be used to convert sales and stock data when an item is retailed in eaches but does not have eaches as its standard unit of measure. |
| packageSize | No | Number(12,4) | This feld holds the size of the product printed on any packaging (i.e. 24 ounces). This feld is used for reporting purposes, as well as by Retek Price Mangement to determine same sized and different sized items. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| packageUom | No | String (4) | This feld holds the unit of measure associated with the package size. This feld is used for reporting purposes and by Retek Price Management to determine same sized and different sized items. |
| merchandiseInd | No | String (1) | This feld indicates if the item is a merchandise item (Y, N). |
| storeOrderMultiple | No | String (1) | This feld indicates Merchandise shipped from the warehouses to the stores must be specifed in this unit type. Valid values are:C = Cases; I = Inner; E = Eaches. |
| forecastInd | No | String (1) | This feld indicates if this item will be interfaced to an external forecasting system (Y, N). |
| manufacturerRecomm endedRetail | No | Number(20,4) | This feld contains manufacturer’s recommended retail price for the item. Used for informational purposes only. This feld is stored in the primary currency. |
| manufacturerRetailCu rrencyCode | No | String (3) | The feld indicates the currency code of the Manufacturer’s retail price. |
| originalRetail | No | Number(20,4) | The feld indicated the original retail price of the item per unit. This feld is stored in the primary currency. |
| originalRetailCurrency Code | No | String (3) | The feld indicates the currency code of the original retail price. |
| retailLabelType | No | String (6) | This feld indicates any special label type associated with an item. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| retailLabelTypeDescri ption | No | String (250) | This feld holds the description of the retail label type. |
| retailLabelValue | No | Number(20,4) | This feld represents the value associated with the retail label type. |
| handlingTemperature | No | String (6) | This feld holds the temperature information associated with the item. |
| handlingTemperature Description | No | String (250) | This feld holds the description of the handling temperature. |
| handlingSensitivity | No | String (6) | This feld holds the sensitivity information associated with the item. |
| handlingSensitivityDes cription | No | String (250) | This feld holds the description of the handling sensitivity. |
| catchWeightInd | No | String (1) | This feld indicates whether the item should be weighed when it arrives at a location. |
| catchWeightType | No | String (1) | The feld will hold catch weight type for a simple pack catch weight item. The value is based on the component items order_type and sale_type: 2 - order_type = Variable Weight, sale_type = Loose Weight 4 - order_type = Variable Weight, sale_type = Variable Weight Each. |
| catchWeightUom | No | String (4) | The feld indicates the UOM for Catchweight Items. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderType | No | String (6) | The feld determines how catch weight items are ordered. Valid values are: F - fxed weight V - Variable weight Valid values are held on the CODE_DETAIL table with a code type = ORDT. |
| saleType | No | String (6) | The feld indicates the method of how catch weight items are sold in store locations. Valid values are: V - variable weight each L - Loose weight. Valid values are held on the CODE_DETAIL table with a code type = STPE. |
| wasteType | No | String (6) | The feld indicates identifes the wastage type as either sales or spoilage wastage. Sales wastage occurs during processes that make an item saleable (i.e. fat is trimmed off at customer request). Spoilage wastage occurs during the products shelf life (i.e. evaporation causes the product to weigh less after a period of time). Valid values are: SP - spoilage; and SL - Sales. |
| wasteTypeDescription | No | String (250) | The feld contains the Waste Type description corresponding to the Waste_Type value in item_master. |
| averageWastePercenta ge | No | Number(12,4) | The feld indicates average percent of wastage for the item over its shelf life. Used in infating the retail price for wastage items. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| defaultWastePercentag e | No | Number(12,4) | The feld indicates default daily wastage percent for spoilage type wastage items. This value will default to all item locations and represents the average amount of wastage that occurs on a daily basis. |
| constantDimensionInd | No | String (1) | The feld indicates that the dimensions of the product are always the same, regardless of the supplier. If this feld is Y, the dimensions for all suppliers will be defaulted to the primary supplier/ primary country dimensions. Editing of dimensions for the item will only be allowed for the primary supplier/ primary country. |
| packType | No | String (1) | The feld Indicates if pack item is a vendor pack or a buyer pack. A vendor pack is a pack that the vendor or supplier recognizes and sells to the retailer. If the pack item is a vendor pack, communication with the supplier will use the vendor pack number. A buyer pack is a pack that a buyer created for internal ease of use. If the pack item is a buyer pack communication with the supplier will explode the pack out to its component items. This feld will only be used if the item is a pack item. If the pack item is not orderable this feld must be null. Valid values are: V = Vendor; B = Buyer. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderAsType | No | String (1) | This feld indicates if pack item is receivable at the component level or at the pack level (for a buyer pack only). This feld is required if pack item is an orderable buyer pack. This feld must be NULL if the pack is sellable only or a vendor pack. This feld will only be available if the item is a pack item. Valid Values are: E = Eaches (component level) P = Pack (buyer pack only).. |
| comments | No | String (2000) | The feld holds any comments associated with the item. |
| itemServiceLevel | No | String (6) | The feld Holds a value that restricts the type of shipment methods that RCOM can select for an item. |
| giftWrapInd | No | String (1) | This feld will contain a value of ‘Y’ if the item is eligible to be gift wrapped. |
| shipAloneInd | No | String (1) | This feld will contain a value of Y if the item should be shipped to the customer in a separate package. |
| brandName | No | String (30) | This feld contains the brand associated to an item. |
| brandDescription | No | String (120) | This feld contains the description of the brand associated with the item. |
| perishableInd | No | String (1) | The feld is not used by RMS. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemTransformInd | No | String (1) | The feld show that an item is associated with an item transformation. The item will be either the sellable item or orderable item in the transformation process. |
| depositItemType | No | String (6) | The feld contains deposit item component type. A NULL value in this feld indicates that this item is not part of a deposit item relationship. The possible values are - E - Contents A - Container Z - Crate T - Returned Item (Empty bottle) P - Complex pack (with deposit items) The Returned item is fagged only to enable these items to be mapped to a separate GL account if required. |
| containerItem | No | String (25) | The feld holds the container item number for a contents item. This feld is only populated and required if the DEPOSIT_ITEM_TYPE = E. |
| depositInPricePerUom | No | String (6) | This feld indicates if the deposit amount is included in the price per UOM calculation for a contents item ticket. This value is only required if the DEPOSIT_ITEM_TYPE = E. Valid values are I - Include deposit amount E - Exclude deposit amount. |
| storePackInventoryInd | No | String (1) | This feld indicates whether downstream systems should track pack inventory at the pack level. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| sohInquiryAtPackInd | No | String (1) | The feld indicates to the Store Inventory System if a notional simple pack item’s inventory should be displayed in packs. |
| purchaseType | No | String (1) | The feld indicates if an item is a normal, consignment or concession item - ‘N’ for normal, ‘S’ for consignment, ‘C’ for concession. |
| productClassifcation | No | String (6) | The feld contains item combinability codes (with code type ‘PCLA’) which provide a way to defne which items can be combined (packed or boxed) together. |
| productClassifcationD escription | No | String (250) | This feld will hold the description of the product classifcation. |
| itemAggregateInd | No | String (1) | This feld holds indicator to aggregate inventory and sales for the item. Currently, this indicator is used by allocation and MFP to aggregate inventory for items. For staple items this indictor should be N. |
| diff1AggregateInd | No | String (1) | This feld holds indicator for the corresponding diff. Indicator to aggregate inventory and sales for an item at Parent/ Diff level (e.g. Style/ Color or Style/Size . |
| diff2AggregateInd | No | String (1) | This feld holds indicator for the corresponding diff. Indicator to aggregate inventory and sales for an item at Parent/ Diff level (e.g. Style/ Color or Style/Size. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diff3AggregateInd | No | String (1) | This feld holds indicator for the corresponding diff. Indicator to aggregate inventory and sales for an item at Parent/ Diff level (e.g. Style/ Color or Style/Size. |
| diff4AggregateInd | No | String (1) | This feld holds indicator for the corresponding diff. Indicator to aggregate inventory and sales for an item at Parent/ Diff level (e.g. Style/ Color or Style/Size. |
| diff1Level | No | String (6) | This feld will contain either ID or GROUP, based on whether the diff_1 is a group diff or a diff id. |
| diff1Description | No | String (120) | This feld will hold the description of differentiator. |
| diff2Level | No | String (6) | This feld will contain either ID or GROUP, based on whether the diff_1 is a group diff or a diff id. |
| diff2Description | No | String (120) | This feld will hold the description of differentiator. |
| diff3Level | No | String (6) | This feld will contain either ID or GROUP, based on whether the diff_1 is a group diff or a diff id. |
| diff3Description | No | String (120) | This feld will hold the description of differentiator. |
| diff4Level | No | String (6) | This feld will contain either ID or GROUP, based on whether the diff_1 is a group diff or a diff id. |
| diff4Description | No | String (120) | This feld will hold the description of differentiator. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryImageUrl | No | String (375) | This feld will hold the primary item image URL. It is only included for the ItemCre and ItemFulRep message types. Updates to the primary image for an item are published in the Item Image node. |
| transferAllocUpCharge SourceType | No | String (6) | This feld impacts how up charges default to transfers and allocations when an item is added. When set to ‘D’, department- level up charges are applied if item-level up charges are not defned for the item/ from-location/to- location combination. When set to ‘I’, only item-level up charges are applied; department-level up charges are not inherited. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the item. |
| itemTranslation | No | Collection of Object | This List holds translation attributes for the item. |
| itemSupplier | No | Collection of Object | This List holds supplier’s attributes for the item. |
| itemUda | No | Object | This record holds uda attributes for the item. |
| itemImage | No | Collection of Object | This List holds image attributes for the item. |
| itemSeason | No | Collection of Object | This List holds season attributes for the item. |
| referenceItem | No | Collection of Object | This List holds referenc item’s attributes for the item. |
Table 5-400 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemBOM | No | Collection of Object | This List holds pack attributes for the item. |
| itemTicket | No | Collection of Object | This List holds ticket attributes for the item. |
| relatedItem | No | Collection of Object | This List holds related item’s attributes for the item. |
| hts | No | Collection of Object | This List holds hts attributes for the item. |
| expense | No | Collection of Object | This List holds expense attributes for the item. |
| requiredDocuments | No | Collection of Object | This List holds the required documents of the item. |
| itemImportAttributes | No | Collection of Object | This List holds the import specifc attributes associated with a given item. |
| cacheTimestamp | No | dateTime | This feld specifes date and time when item record was last maintained. |
| cacheCreateTimestam p | No | dateTime | This feld specifes date and time when the record was frst created for web serivce publication. |
Table 5-401 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
Table 5-401 (Cont.) CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-402 ItemTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| languageCode | No | Number(6,0) | This feld contains the language in which the translated text is maintained |
| languageName | No | String (120) | This feld contains description of language code in which the translated text is maintained |
| isoCode | No | String (6) | This feld will hold the ISO code associated with the given language. |
| itemDescription | No | String (250) | This feld will hold the ISO code associated with the given language. |
| itemDescriptionSecon dary | No | String (250) | This feld holds long description of the item. This description is used through out the system to help online users identify the item. For items that have parents,this description will default to the parents description plus any differentiators. For items without parents, this description will default to null |
Table 5-402 (Cont.) ItemTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| shortDescription | No | String (120) | This feld holds shortened description of the item. This description is the default for downloading to the POS. For items that have parents, this description will default to the parents short description. For items without parents, this description will default to null |
| longDescription | No | String (2000) | This feld specifes long description of the item. This is a more descriptive writeup about the item targeted largely for platforms like Ecommerce platforms, Marketplaces, Order Management Systems etc. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-403 ItemSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | No | Number(10,0) | This feld specifes unique identifer for the supplier. |
| primarySupplierInd | No | String (1) | This feld indicates whether this supplier is the primary supplier for the item. An item can have one and only one primary supplier. |
| vpn | No | String (30) | This feld contains the Vendor Product Number for the Item/ Supplier. |
| supplierLabel | No | String (15) | This feld contains the supplier label. It will only be populated if item is a parent item. |
Table 5-403 (Cont.) ItemSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| consignmentRate | No | Number(12,4) | This feld contains the consignment rate for this item for the supplier. |
| supplierDiff1 | No | String (120) | This feld contains the frst supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff2 | No | String (120) | This feld contains the frst supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff3 | No | String (120) | This feld contains the frst supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff4 | No | String (120) | This feld contains the frst supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| palletName | No | String (6) | This feld specifes code referencing the name used to refer to the pallet. |
| caseName | No | String (6) | This feld specifes code referencing the name used to refer to the case. |
| innerName | No | String (6) | This feld specifes code referencing the name used to refer to the inner. |
| supplierDiscontinueDa te | No | date | This feld specifes the date when the supplier discontinues an item. |
Table 5-403 (Cont.) ItemSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| directShipInd | No | String (1) | This feld indicates that any item associated with this supplier is eligible for a direct shipment from the supplier to the customer. |
| primaryCaseSize | No | String (6) | This feld indicates the primary case size for the item supplier when an orderable item is confgured for informal case types. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the item’s supplier record. |
| itemSupplierCountry | No | Collection of Object | This List holds custom fex attributes for the item supplier’s country record. |
| itemSupplierCountryO fManufacture | No | Collection of Object | This List holds custom fex attributes for the item supplier’s manufacture record. |
| itemSupplierUom | No | Collection of Object | This List holds custom fex attributes for the item’s supplier UOM record. |
| translation | No | Collection of Object | List of translations for Item Supplier |
Table 5-404 ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | No | String (3) | This feld specifes country where the item was manufactured or signifcantly altered. |
| primarySupplierInd | No | String (1) | This feld indicates whether this supplier is the primary supplier for the item. Each item can have one and only one primary supplier. |
Table 5-404 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryCountryInd | No | String (1) | This feld indicates whether this country is the primary country for the item/supplier. Each item/supplier combination can have one and only one primary country. |
| unitCost | No | Number(20,4) | This feld contains the current corporate unit cost for the item from the supplier /origin country. This feld is stored in the Supplier’s currency.. |
| leadTime | No | Number(4,0) | This feld contains the number of days that will elapse between the date an order is written and the delivery to the store or warehouse from the supplier. |
| pickupLeadTime | No | Number(4,0) | This feld Contains the time that will be taken to get the item from the supplier to the initial receiving location. |
| supplierPackSize | No | Number(12,4) | This feld contains the quantity that orders must be placed in multiples of for the supplier for the item. |
| innerPackSize | No | Number(12,4) | This feld contains the break pack size for this item from the supplier. |
| roundLevel | No | String (6) | This feld is used to determine how order quantities will be rounded to case, layer and pallet. |
| minimumOrderQuanti ty | No | Number(12,4) | This feld contains the minimum quantity that can be ordered at once from the supplier for the item. |
Table 5-404 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| maximumOrderQuant ity | No | Number(12,4) | This feld contains the maximum quantity that can be ordered at once from the supplier for the item. |
| packingMethod | No | String (6) | This feld indicates whether the packing method for the item in the container is fat or hanging. |
| defaultUop | No | String (6) | This feld contains the default unit of purchase for the item/ supplier/country. Valid values include ‘C’ (Case) and ‘P’ (Pallet) |
| ti | No | Number(12,4) | This feld contains number of shipping units (cases) that make up one tier of the pallet. Multiply TI x HI to get total number of units (cases) in a Pallet. |
| hi | No | Number(12,4) | This feld contains number of tiers that make up a complete pallet. Multiply TI x HI to get total number of units (cases) in a Pallet. |
| costUom | No | String (4) | This feld contains cost UOM is held to allow costs to be managed in a separate UOM to the standard UOM. |
| toleranceType | No | String (6) | The unit of tolerance for catch weight simple packs. Valid values are: ‘A’ - actual ’P’ - percent. |
| maximumTolerance | No | Number(12,4) | The maximum tolerance value for the catch weight simple pack. |
| minimumTolerance | No | Number(12,4) | The minimum tolerance value for the catch weight simple pack. |
Table 5-404 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| roundToInnerPercenta ge | No | Number(12,4) | This feld will hold the Inner Rounding Threshold value. During rounding, this value is used to determine whether to round partial Inner quantities up or down. If the Inner-fraction in question is less than the Threshold proportion, it is rounded down; if not, it is rounded up. |
| roundToCasePercentag e | No | Number(12,4) | This feld will hold the Case Rounding Threshold value. During rounding, this value is used to determine whether to round partial Case quantities up or down. If the Case-fraction in question is less than the Threshold proportion, it is rounded down; if not, it is rounded up. |
| roundToLayerPercent age | No | Number(12,4) | This feld will hold the Layer Rounding Threshold value. During rounding, this value is used to determine whether to round partial Layer quantities up or down. If the Layer-fraction in question is less than the Threshold proportion, it is rounded down; if not, it is rounded up. |
Table 5-404 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| roundToPalletPercenta ge | No | Number(12,4) | This feld will hold the Pallet Rounding Threshold value. During rounding, this value is used to determine whether to round partial Pallet quantities up or down. If the Pallet -fraction in question is less than the Threshold proportion, it is rounded down; if not, it is rounded up. |
| supplierHierarchyTyp e1 | No | String (6) | This feld identifes partner type of supplier hierarchy level 1. This feld will always have the partner type S1 which indicates manufacturer. |
| supplierHierarchyLev el1 | No | String (10) | This feld contains highest level of supplier hierarchy which is there to indicate a partner, such as a manufacturer, in the supply chain that gives rebates to the retailer. |
| supplierHierarchyTyp e2 | No | String (6) | This feld identifes partner type of supplier hierarchy level 2. This feld will always have the partner type S2 which indicates distributor. |
| supplierHierarchyLev el2 | No | String (10) | This feld conatins second highest level of supplier hierarchy which is there to indicate a partner, such as a distributor, in the supply chain that gives rebates to the retailer.. |
| supplierHierarchyTyp e3 | No | String (6) | This feld identifes partner type of supplier hierarchy level 3. This feld will always have the partner type S3 which indicates wholesaler. |
Table 5-404 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplierHierarchyLev el3 | No | String (10) | Third highest level of supplier hierarchy which is there to indicate a partner, such as a wholesaler, in the supply chain that gives rebates to the retailer. |
| negotiatedItemCost | No | Number(20,4) | This feld will hold the supplier negotiated item cost for the primary delivery country of the item. Once a location is associated with the item, the primary locations negotiated item cost will be stored in this feld. |
| extendedBaseCost | No | Number(20,4) | This feld will hold the extended base cost for the primary delivery country of the item. Once a location is associated with the item, the primary locations extended base cost will be stored in this feld. Extended base cost is the cost inclusive of all the taxes that affect the WAC. In case of GTAX, Extended Base Cost = Base Cost + Non- recoverable taxes. In case of VAT, Extended Base Cost = Base Cost. |
Table 5-404 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inclusiveCost | No | Number(20,4) | This feld will hold the inclusive cost for the primary delivery country of the item. Once a location is associated with the item, the primary locations inclusive cost will be stored in this feld. This cost will have both the recoverable and non- recoverable taxes included. In case of GTAX, Inclusive Cost = Base Cost + Non- recoverable taxes + Recoverable Taxes. In case of VAT, Inclusive Cost = Base Cost + VAT. |
| baseCost | No | Number(20,4) | This feld will hold the tax exclusive cost of the item. |
| purchaseType | No | Number(1,0) | This feld contains a code to indicate whether the item is normal merchandise (i.e. owned by the retailer), consignment stock or a concession item. Valid values are 0 - Owned, 1 - Consignment, 2 - Concession. |
| calculationBasis | No | String (1) | This feld indicates if the cost for the consignment/ concession item will be managed either based on cost per unit or as a percentage of retail. Valid values are C - Cost per Unit, P - Purchase Rate. |
| purchaseRate | No | Number(12,4) | This feld contains the percentage of the retail price which will determine the cost paid to the supplier for a consignment or concession item. |
Table 5-404 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| pricingControl | No | String (1) | This feld contains the pricing control of the item which will determine the item price is controlled by Retailer or Supplier. Valid value are R - Managed by Retailer, S - Managed by Supplier, NULL - For Owned Items |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the item supplier’s country record. |
| itemSupplierCountryD imension | No | Collection of Object | This List holds dimension attributes for the item supplier’s country record. |
Table 5-405 ItemSupplierCountryDimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dimensionObject | No | String (6) | This feld Specifc object whose dimensions are specifed in this record (e.g. case, pallet, each). Valid values for this feld are in the code type DIMO on the codes tables. |
| dimensionObjectDescr iption | No | String (250) | This feld conatins description of the dimesnion object. |
| presentationMethod | No | String (6) | This feld describes the packaging (if any) being taken into consideration in the specifed dimensions. Valid values for this feld are in the code type PCKT on the codes tables. |
Table 5-405 (Cont.) ItemSupplierCountryDimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| presentationMethodDe scription | No | String (250) | This feld conatins description of the presentation method. |
| length | No | Number(12,4) | This feld conatins length of dim_object measured in units specifed in terms of the LWH Unit of Measure. |
| width | No | Number(12,4) | This feld conatins width of dim_object measured in units specifed in terms of the LWH Unit of Measure. |
| height | No | Number(12,4) | This feld conatins height of dim_object measured in units specifed in terms of the LWH Unit of Measure. |
| lwhUom | No | String (4) | This feld conatins measurement for length, width, and height. |
| weight | No | Number(12,4) | This feld conatins weight of dim_object measured in units specifed in terms of the Weight Unit of Measure. |
| netWeight | No | Number(12,4) | This feld conatins net weight of the dim_object (weight without packaging) measured in units specifed in terms of the Weight Unit of Measure. |
| weightUom | No | String (4) | This feld conatins unit of measurement for Weight and Net Weight. |
| liquidVolume | No | Number(12,4) | This feld conatins unit of measurement for vloume. |
Table 5-405 (Cont.) ItemSupplierCountryDimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| liquidVolumeUom | No | String (4) | This feld conatins unit of measurement for liquid volume. Liquid volumes are only convertible to other liquid volumes. |
| statisticalCase | No | Number(12,4) | This feld conatins statistical value of the dim_object’s dimensions to be used for loading purposes. |
| tareWeight | No | Number(12,4) | This feld conatins amount of weight to be subtracted for packaging materials. Used to calculate the true net weight of the dim_object. |
| tareType | No | String (6) | This feld indicates whether the tare weight for the dim_object is wet or dry. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-406 ItemSupplierCountryOfManufacture - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| countryId | No | String (3) | This feld holds country ID of manufacturer. |
| primaryInd | No | String (1) | This feld indicates primary country of manufacturer indicator. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-407 ItemSupplierUom - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| uom | No | String (4) | This feld holds unit of measure that the item is being measured in. |
| value | No | Number(20,4) | This feld holds value of measure. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-408 ItemSupplierTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| languageCode | No | Number(6,0) | The code identifying the language. |
| languageName | No | String (120) | The display name of the language. |
| isoCode | No | String (6) | The ISO code of the language. |
| supplierDiff1 | No | String (120) | This feld contains the frst supplier differentiator and/or description. |
| supplierDiff2 | No | String (120) | This feld contains the second supplier differentiator and/or description. |
| supplierDiff3 | No | String (120) | This feld contains the third supplier differentiator and/or description. |
| supplierDiff4 | No | String (120) | This feld contains the fourth supplier differentiator and/or description. |
| supplierLabel | No | String (15) | The translated supplier label for the item. |
| createDateTime | No | dateTime | The creation date/time of the translation record. |
| updateDateTime | No | dateTime | The last update date/ time of the translation record. |
Table 5-409 ItemUda - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaLov | No | Collection of Object | This List attributes for the item’s uda list of values. |
| udaFreeform | No | Collection of Object | This List holds attributes for the item’s uda free form . |
| udaDate | No | Collection of Object | This List holds attributes for the item’s uda date. |
Table 5-410 UdaLov - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | No | Number(5,0) | This feld contains a number identifying the user-defned attribute. |
| udaDescription | No | String (120) | This feld contains description of user- defned attribute. |
| udaValue | No | Number(5,0) | This feld contains the unique identifed of the Attribute Group being added or delete to the item list. |
| udaValueDescription | No | String (250) | This feld contains the value of the Attribute Group. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-411 UdaFreeForm - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | No | Number(5,0) | This feld contains a number identifying the user-defned attribute. |
| udaDescription | No | String (120) | This feld contains description of user- defned attribute. |
| udaText | No | String (250) | This feld contains the text value of the user- defned attribute for the item. |
Table 5-411 (Cont.) UdaFreeForm - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| translation | No | Collection of Object | List of translations for UDA free form text. |
Table 5-412 UdaFreeFormTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| languageCode | No | Number(6,0) | The code identifying the language. |
| languageName | No | String (120) | The display name of the language. |
| isoCode | No | String (6) | The ISO code of the language. |
| udaTextDesc | No | String (250) | The translated UDA text. |
| createDateTime | No | dateTime | The creation date/time of the translation record. |
| updateDateTime | No | dateTime | The last update date/ time of the translation record. |
Table 5-413 UdaDate - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | No | Number(5,0) | This feld contains a number identifying the user-defned attribute. |
| udaDescription | No | String (120) | This feld contains description of user- defned attribute. |
| udaDate | No | date | This feld contains the effective date for the UDA id. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-414 ItemImage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| imageName | No | String (120) | This feld specifes name of the image. |
| imageAddress | No | String (255) | This feld specifes path where the image fle is stored. |
| imageType | No | String (6) | This feld contains the type of the image of the item. Valid values are defned as member of IITD code type. |
| primaryImageInd | No | String (1) | This feld specifes display sequence order of images associated to the item per priority. |
| displayPriority | No | Number(4,0) | This feld specifes display sequence order of images associated to the item per priority. |
| imageDescription | No | String (40) | This feld contains the description associated with the image of the item. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| translation | No | Collection of Object | List of translations for Item Image |
Table 5-415 ItemImageTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| languageCode | No | Number(6,0) | The code identifying the language. |
| languageName | No | String (120) | The display name of the language. |
| isoCode | No | String (6) | The ISO code of the language. |
| imageDescription | No | String (40) | This feld contains the translated description associated with the image of the item. |
| createDateTime | No | dateTime | The creation date/time of the translation record. |
Table 5-415 (Cont.) ItemImageTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| updateDateTime | No | dateTime | The last update date/ time of the translation record. |
Table 5-416 ItemSeason - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| seasonId | No | Number(3,0) | The season identifer. |
| phaseId | No | Number(3,0) | The phase identifer. |
| sequenceNo | No | Number(4,0) | This feld contains a sequence number that combined with the item number will make each record unique. |
| diffId | No | String (10) | This feld will hold a value for group/ differentiator combination records only. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-417 ReferenceItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| referenceItem | No | String (25) | This feld holds Unique identifer for the item. |
| primaryInd | No | String (1) | This feld Indicates if the sub-transaction level item is designated as the primary sub- transaction level item. For transaction level items and above, the value in this feld will be ‘N’. |
| formatId | No | String (1) | This feld will hold the format id that corresponds to the item’s variable UPC. This value is only used for items with variable UPCs. |
Table 5-417 (Cont.) ReferenceItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| prefx | No | Number(2,0) | This feld holds the prefx for variable weight UPCs. The prefx determines the format of the eventual UPC and will be used to decode variable weight UPCs that are uploaded from the POS. |
| itemNoType | No | String (6) | This feld holds code specifying what type the item is. Valid values for this feld are in the code type UPCT on the code_head and code_detail tables. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-418 ItemBom - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentItem | No | String (25) | This feld specifes unique identifer for the component item. |
| packQuantity | No | Number(12,4) | This feld specifes contains the quantity of each item in the pack item. |
Table 5-419 ItemTicket - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| ticketOverPercentage | No | Number | |
| printOnPcInd | No | String | |
| ticketTypeId | No | String (4) | This feld uniquely identifes the ticket type which is associated with the item. |
| ticketTypeDescription | No | String (120) | This feld contains a description of the ticket or label type. |
Table 5-419 (Cont.) ItemTicket - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| shelfEdgeLabelInd | No | String (1) | This feld contains a description of the ticket or label type. |
| poPrintType | No | String (1) | This feld indicates when the ticket type for the given item should be printed by default, upon the approval or receipt of the purchase order. Valid values are: A and R. |
| printOnPriceChangeIn d | No | String (1) | This feld indicates whether or not this type of ticket should be printed for this item when a permanent price change goes into effect. Valid values in this feld are:Y - Yes N - No. |
| ticketOverPrintPercent age | No | Number(12,4) | This feld contains a percent which indicates the amount of tickets which should be printed for a given event. If the event causing tickets to be printed is approving or receiving a purchase order, then this feld indicates the quantity of tickets which should be printed greater than the quantity of the purchase order. If the event causing the tickets to be printed is a permanent price change, this feld would indicate the quantity of tickets which should be printed greater than the stock on hand. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-419 (Cont.) ItemTicket - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| details | No | Collection of Object | This List holds attributes for the item ticket details. |
Table 5-420 ItemTicketDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| ticketItemId | No | String (4) | This feld contains a character string which uniquely identifes an attribute which will appear on a ticket or label such as retail price or price per unit of measure. |
| ticketItemIdDescriptio n | No | String (250) | This feld contains the description of the ticket_item_id. |
| udaId | No | Number(5,0) | This feld contains a number which uniquely defnes a user-defned attribute which is to be printed on this ticket type. |
| sequenceNo | No | Number(4,0) | This feld contains sequence number of item’s ticket record. |
Table 5-421 RelatedItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relationshipId | No | Number(20,0) | A system generated numeric feld that uniquely identifes the relationship record in related_item_head table. |
| relationshipName | No | String (255) | This feld holds user entered name of the relationshipe. |
| relationshipType | No | String (6) | This feld holds user entered name of the relationshipe. |
| mandatoryInd | No | String (1) | Indicates whether the relationship is mandatory or not. Valid values: ‘Y’ (yes), ‘N’ (no). |
Table 5-421 (Cont.) RelatedItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| translation | No | Collection of Object | This List holds translation attributes for the relationship. |
| details | No | Collection of Object | This List holds attributes for the related item details. |
Table 5-422 RelatedItemTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| languageCode | No | Number(6,0) | This feld contains the language in which the translated text is maintained |
| languageName | No | String (120) | This feld contains description of language code in which the translated text is maintained |
| isoCode | No | String (6) | This feld will hold the ISO code associated with the given language. |
| relationshipName | No | String (255) | This feld holds the translated value of the relationship name |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-423 RelatedItemDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relatedItem | No | String (25) | Item for which related items are defned. Valid transaction level/ sellable item. Multiple items can be defned for a relationship. |
Table 5-423 (Cont.) RelatedItemDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| priority | No | Number(4,0) | This feld indicates relationship priority. Applicable only for relationship type Substitute. |
| startDate | No | date | The related item can be used on transactions starting this date. |
| endDate | No | date | This feld related item can be used on transactions until this date. A value of null means that it is always effective. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime able 5-424 ItemH | No ts - Object. See lis | dateTime t of elements for detail | This feld holds the date when the record was last updated. |
| Element Name | Required | Data Type | Description |
| hts | No | String (25) | The unique identifer for the Harmonized Tariff Schedule code. |
| importCountry | No | String (3) | The unique identifer for the country that the item will be imported into. |
| originCountry | No | String (3) | The country where the item was manufactured or signifcantly altered. |
| effectFrom | No | date | The date from which the Item/HTS relationship is valid. This feld is used to maintain historical information related to the Item/HTS relationship. |
Table 5-424 ItemHts - Object. See list of elements for detail
Table 5-424 (Cont.) ItemHts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| effectTo | No | date | The date until when the Item/HTS relationship is valid. This feld is used to maintain historical information related to the item/HTS relationship. |
| clearingZoneId | No | String (5) | The concept of ’clearing zone’ represents a country’s zone-level point of entry of goods (for example, zones within the country where the goods are clearing customs). No locations or cost zones are associated to a clearing zone. This feld holds the Clearing Zone ID for the effective HTS code. Clearing zones are defned by import country. |
| status | No | String (1) | Used to indicate the status of the Item/HTS relationship. Valid values are (W)orksheet and (A)pproved. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| assessments | No | Collection of Object | References a collection of assessments associated to the item HTS. |
Table 5-425 ItemHtsAssess - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentId | No | String (10) | The code representing the specifc assessment component. |
Table 5-425 (Cont.) ItemHtsAssess - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| computationValueBase | No | String (10) | The Computation Value Base representing the base value for calculating the assessment. |
| componentRate | No | Number(20,4) | The rate to be charged against the calculation base. This feld will hold a percentage value if the Calculation Basis of the Component is Value or a monetary amount if the Calculation Basis is Specifc. |
| perCount | No | Number(12,4) | A count indicating the amount of the Per Count Unit of Measure to which the rate applies. This column is only used for specifc (per-unit) assessments. |
| perCountUom | No | String (4) | The unit of measure in which the Per Count is specifed. This column is only used from specifc (per-unit) assessments. |
| estimatedAssessmentV alue | No | Number(26,10) | Contains the calculated value of the Component. |
| componentCurrency | No | String (3) | This feld contains component currency. |
Table 5-425 (Cont.) ItemHtsAssess - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nominationFlag1 | No | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
| inDuty | No | String (1) | If Import Management is enabled in Merchandising (i. e. system_options. import_ind = Y), the inDuty fag is used to indicate if the value of the cost component should be included in total duty. |
Table 5-425 (Cont.) ItemHtsAssess - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nominationFlag3 | No | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense | No | String (1) | The inExpense fag is used to indicate if the value of the cost component should be included in total expenses. |
Table 5-425 (Cont.) ItemHtsAssess - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inAlc | No | String (1) | The inALC fag is used for cost components where the retailer does not expect to receive an actual value for the charge via an obligation or customs entry. The inALC fag allows the value of the cost component to be included in ALC via direct nomination and indicates to the system that the estimated value on the order should be used as the actual value as well because no other actual will be provided. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-426 ItemExpense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | No | Number(10,0) | The unique identifer for the supplier. |
| countryOfSourcing | No | String (3) | The country where the item was manufactured or signifcantly altered. |
| ladingPort | No | String (5) | The fnal destination lading port of the item if the Expense Type is Country. |
| dischargePort | No | String (5) | The port where the item will enter the importing country. |
| costZoneGroupId | No | Number(4,0) | This feld holds the items Zone Group, it is stored here for performance reasons. |
| costZoneId | No | Number(10,0) | The fnal destination zone of the item if the Expense Type is Zone. |
Table 5-426 (Cont.) ItemExpense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| baseExpenseInd | No | String (1) | This feld indicates whether or not this Set of Expenses is also the base Set of Expenses. |
| componentId | No | String (10) | The code representing the specifc expense component. |
| computationValueBase | No | String (10) | The Computation Value Base representing the base value for calculating the expense. |
| componentRate | No | Number(20,4) | The rate to be charged against the calculation base. This feld will hold a percentage value if the Calculation basis of the Component is Value or a monetary amount if the Calculation Basis is Specifc. |
| perCount | No | Number(12,4) | A count indicating the amount of the Per Count Unit of Measure to which the rate applies. This column is only used for specifc (per-unit) expenses. |
| perCountUom | No | String (4) | The unit of measure in which the Per Count is specifed. This column is only used from specifc (per-unit) expenses. |
| estimatedExpenseValu e | No | Number(26,10) | This feld contains the calculated value of the Component. |
| componentCurrency | No | String (3) | This feld contains the currency the expense is to be entered in. If the Calculation Basis is V (Value), then the comp_currency will be NULL. |
Table 5-426 (Cont.) ItemExpense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nominationFlag1 | No | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
| inDuty | No | String (1) | If Import Management is enabled in Merchandising (i. e. system_options. import_ind = Y), the inDuty fag is used to indicate if the value of the cost component should be included in total duty. |
Table 5-426 (Cont.) ItemExpense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nominationFlag3 | No | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense | No | String (1) | The inExpense fag is used to indicate if the value of the cost component should be included in total expenses. |
Table 5-426 (Cont.) ItemExpense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inAlc | No | String (1) | The inALC fag is used for cost components where the retailer does not expect to receive an actual value for the charge via an obligation or customs entry. The inALC fag allows the value of the cost component to be included in ALC via direct nomination and indicates to the system that the estimated value on the order should be used as the actual value as well because no other actual will be provided. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the |
| able 5-427 Requir Element Name | edDocuments - Obje Required | ct. See list of element Data Type | date when the record was last updated. s for detail Description |
| documentId able 5-428 ItemIm Element Name | No portAttr - Object. Se Required | Number(6,0) e list of elements for d Data Type | This feld contains documents of the items. etail Description |
| importDescription | No | String (2000) | This feld contains |
| description of the item used for importing purposes.. | |||
| commodity | No | String (6) | This feld contains the code used to classify the item by their type of merchandise. |
| tooling | No | Number(20,4) | This feld contains the cost associated with a given Tooling/Assist charge. |
Table 5-427 RequiredDocuments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| documentId | No | Number(6,0) | This feld contains documents of the items. |
Table 5-428 ItemImportAttr - Object. See list of elements for detail
Table 5-428 (Cont.) ItemImportAttr - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| frstOrderIndicator | No | String (1) | This feld contains indicator to determine if duty is to be paid on the total value of the tooling expense the frst time the item is shipped |
| amortizeBase | No | Number(12,4) | This feld contains the number of units over which the tooling/ assist cost will be amortized. |
| openBalance | No | Number(12,4) | This feld contains the open balance of the number of units yet to be received over which the tooling costs will be amortized. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
Table 5-429 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"longtDescription": "String",
"item": "100100076",
"itemNumberType": "MANL",
"status": "A",
"itemLevel": 1,
"tranLevel": 1,
"itemDescription": "Regular Item 100100076",
"shortDescription": "100100076 Item",
"itemDescriptionUppercase": "100100076 ITEM REGULAR",
"itemDescriptionSecondary": "100100076 Item Regular",
"longDescription": null,
"itemParent": null,
"itemGrandparent": null,
"sellableInd": "Y",
"orderableInd": "Y",
"inventoryInd": "Y",
"packInd": "Y",
"simplePackInd": "N",
"containsInnerInd": "N",
"dept": 3041,
"deptName": null,
"class": 1.0,
"className": null,
"uniqueClassId": 1,
"subclass": 1,
"subclassName": null,
"uniqueSubclassId": 1,
"unitRetail": 1.0,
"variableUpcFormatId": null,
"variableWeightUpcPrefix": 1,
"diff1": null,
"diff1Type": null,
"diff2": null,
"diff2Type": null,
"diff3": null,
"diff3Type": null,
"diff4": null,
"diff4Type": null,
"costZoneGroupId": 1000,
"standardUom": "EA",
"uomConversionFactor": 3,
"packageSize": 1.0,
"packageUom": null,
"merchandiseInd": "Y",
"storeOrderMultiple": "E",
"forecastInd": null,
"manufacturerRecommendedRetail": 12.99,
"manufacturerRetailCurrencyCode": "USD",
"originalRetail": 12.99,
"originalRetailCurrencyCode": "USD",
"retailLabelType": null,
"retailLabelTypeDescription": null,
"retailLabelValue": 1.0,
"handlingTemperature": null,
"handlingTemperatureDescription": null,
"handlingSensitivity": null,
"handlingSensitivityDescription": null,
"catchWeightInd": "Y",
"catchWeightType": null,
"catchWeightUom": "EA",
"orderType": null,
"saleType": null,
"wasteType": null,
"wasteTypeDescription": null,
"averageWastePercentage": 1.0,
"defaultWastePercentage": 1.0,
"constantDimensionInd": "Y",
"packType": null,
"orderAsType": null,
"comments": null,
"itemServiceLevel": null,
"giftWrapInd": "Y",
"shipAloneInd": "Y",
"brandName": null,
"brandDescription": null,
"perishableInd": "Y",
"itemTransformInd": "N",
"depositItemType": null,
"containerItem": null,
"depositInPricePerUom": null,
"storePackInventoryInd": "Y",
"sohInquiryAtPackInd": "Y",
"purchaseType": null,
"productClassification": null,
"productClassificationDescription": null,
"itemAggregateInd": "Y",
"diff1AggregateInd": "Y",
"diff2AggregateInd": "Y",
"diff3AggregateInd": "Y",
"diff4AggregateInd": "Y",
"diff1Level": null,
"diff1Description": null,
"diff2Level": null,
"diff2Description": null,
"diff3Level": null,
"diff3Description": null,
"diff4Level": null,
"diff4Description": null,
"primaryImageUrl": null,
"transferAllocUpChargeSourceType": "D",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"itemTranslation": [
{
"languageCode": 2,
"languageName": null,
"isoCode": "en-US",
"itemDescription": "itemDesc",
"itemDescriptionSecondary": "itemDescSecondary",
"shortDescription": "shortDesc",
"longDescription": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"itemSupplier": [
{
"supplier": 2400,
"primarySupplierInd": "Y",
"vpn": null,
"supplierLabel": null,
"consignmentRate": 3,
"supplierDiff1": null,
"supplierDiff2": null,
"supplierDiff3": null,
"supplierDiff4": null,
"palletName": "PAL",
"caseName": "CS",
"innerName": "INR",
"supplierDiscontinueDate": "2001-12-31",
"directShipInd": "Y",
"primaryCaseSize": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"itemSupplierCountry": [
{
"originCountry": null,
"primarySupplierInd": null,
"primaryCountryInd": "Y",
"unitCost": 9.65,
"leadTime": 1,
"pickupLeadTime": 1,
"supplierPackSize": 1,
"innerPackSize": 1,
"roundLevel": "C",
"minimumOrderQuantity": 1.0,
"maximumOrderQuantity": 1,
"packingMethod": "HANG",
"defaultUop": null,
"ti": 1,
"hi": 1,
"costUom": "EA",
"toleranceType": null,
"maximumTolerance": 1.0,
"minimumTolerance": 1.0,
"roundToInnerPercentage": 50,
"roundToCasePercentage": 50,
"roundToLayerPercentage": 50,
"roundToPalletPercentage": 50,
"supplierHierarchyType1": null,
"supplierHierarchyLevel1": null,
"supplierHierarchyType2": null,
"supplierHierarchyLevel2": null,
"supplierHierarchyType3": null,
"supplierHierarchyLevel3": null,
"negotiatedItemCost": 1.0,
"extendedBaseCost": 1.0,
"inclusiveCost": 1.0,
"baseCost": 1.0,
"purchaseType": 0,
"calculationBasis": null,
"purchaseRate": 1.0,
"pricingControl": "R",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"itemSupplierCountryDimension": [
{
"dimensionObject": null,
"dimensionObjectDescription": null,
"presentationMethod": null,
"presentationMethodDescription": null,
"length": 1.0,
"width": 1.0,
"height": 1.0,
"lwhUom": null,
"weight": 1.0,
"netWeight": 1.0,
"weightUom": null,
"liquidVolume": 1.0,
"liquidVolumeUom": null,
"statisticalCase": 1.0,
"tareWeight": 1.0,
"tareType": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"itemSupplierCountryOfManufacture": [
{
"countryId": "BR",
"primaryInd": "N",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"itemSupplierUom": [
{
"uom": null,
"value": 1.0,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"translation": [
{
"languageCode": 2,
"languageName": null,
"isoCode": "en-US",
"supplierDiff1": null,
"supplierDiff2": null,
"supplierDiff3": null,
"supplierDiff4": null,
"supplierLabel": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"itemUda": {
"udaLov": [
{
"udaId": 1,
"udaDescription": null,
"udaValue": 1,
"udaValueDescription": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"udaFreeform": [
{
"udaId": 1,
"udaDescription": null,
"udaText": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"translation": [
{
"languageCode": 2,
"languageName": null,
"isoCode": "en-US",
"udaTextDesc": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"udaDate": [
{
"udaId": 1,
"udaDescription": null,
"udaDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
},
"itemImage": [
{
"imageName": "imageName1",
"imageAddress": "http://www.oracle.com/",
"imageType": "T",
"primaryImageInd": "Y",
"displayPriority": 1,
"imageDescription": "imageDesc1",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"translation": [
{
"languageCode": 2,
"languageName": null,
"isoCode": "en-US",
"imageDescription": "Item Image",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"itemSeason": [
{
"seasonId": 1,
"phaseId": 1,
"sequenceNo": 1,
"diffId": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"referenceItem": [
{
"referenceItem": null,
"primaryInd": "N",
"formatId": null,
"prefix": 1,
"itemNoType": "MANL",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"itemBOM": [
{
"componentItem": null,
"packQuantity": 1.0
}
],
"itemTicket": [
{
"ticketOverPercentage": 1.0,
"printOnPcInd": "String",
"ticketTypeId": null,
"ticketTypeDescription": null,
"shelfEdgeLabelInd": null,
"poPrintType": null,
"printOnPriceChangeInd": "Y",
"ticketOverPrintPercentage": 3,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"details": [
{
"ticketItemId": null,
"ticketItemIdDescription": null,
"udaId": 1,
"sequenceNo": 1
}
]
}
],
"relatedItem": [
{
"relationshipId": 1,
"relationshipName": null,
"relationshipType": null,
"mandatoryInd": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"translation": [
{
"languageCode": 2,
"languageName": null,
"isoCode": "en-US",
"relationshipName": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"details": [
{
"relatedItem": null,
"priority": 1,
"startDate": "2001-12-31",
"endDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"hts": [
{
"hts": null,
"importCountry": "US",
"originCountry": "US",
"effectFrom": "2001-12-31",
"effectTo": "2001-12-31",
"clearingZoneId": null,
"status": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"assessments": [
{
"componentId": null,
"computationValueBase": null,
"componentRate": 1.0,
"perCount": 1.0,
"perCountUom": null,
"estimatedAssessmentValue": 1.0,
"componentCurrency": null,
"nominationFlag1": null,
"inDuty": null,
"nominationFlag3": null,
"inExpense": null,
"inAlc": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"expense": [
{
"supplier": 2400,
"countryOfSourcing": "US",
"ladingPort": "7",
"dischargePort": "480",
"costZoneGroupId": 1,
"costZoneId": 1,
"baseExpenseInd": "N",
"componentId": "AGCOMM",
"computationValueBase": "TDTYUS",
"componentRate": 3.55,
"perCount": 3,
"perCountUom": "EA",
"estimatedExpenseValue": 1.0,
"componentCurrency": "USD",
"nominationFlag1": null,
"inDuty": null,
"nominationFlag3": null,
"inExpense": null,
"inAlc": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"requiredDocuments": [
{
"documentId": 1
}
],
"itemImportAttributes": [
{
"importDescription": "import desc",
"commodity": "A123",
"tooling": 12,
"firstOrderIndicator": "Y",
"amortizeBase": 12.4568,
"openBalance": 12.4568,
"createDateTime": "2001-12-31T23:59:59.000Z"
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| ITEM_MASTER_CFA_EXT | Yes | No | No | No |
| ITEM_SUPPLIER_CFA_EXT | Yes | No | No | No |
| ITEM_SUPP_COUNTRY_CFA_EXT | Yes | No | No | No |
| ITEM_SUPP_COUNTRY_LOC_CFA_EXT | Yes | No | No | No |
| MERCHAPI_EXT_ITEM | Yes | Yes | Yes | Yes |
| V_MERCHAPI_EXT_ITEM_JSON | Yes | No | No | No |
| ICL_RMS_ITEM_MASTER | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_SUPPLIER | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_SUPP_UOM | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_SUPP_CTRY | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_SUPP_CTRY_DIM | Yes | No | Yes | Yes |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ICL_RMS_ITEM_SUPP_MANU_CTRY | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_TICKET | Yes | No | Yes | Yes |
| ICL_RMS_UDA_ITEM_DATE | Yes | No | Yes | Yes |
| ICL_RMS_UDA_ITEM_LOV | Yes | No | Yes | Yes |
| ICL_RMS_UDA_ITEM_FF | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_IMAGE | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_SEASONS | Yes | No | Yes | Yes |
| ICL_RMS_RELATED_ITEM | No | Yes | No | No |
| ICL_RMS_ITEM_HTS | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_EXP | Yes | No | Yes | Yes |
Get Item Details for Provided Item
Endpoints
MerchIntegrations/services/foundation/item
MerchIntegrations/services/foundation/item/{itemId}
Functional Area
Items - Item Definition
Business Overview
This service publishes item master data for transaction-level items and higher merchandise hierarchy nodes to downstream consuming systems. The payload combines core item attributes with translations, supplier and sourcing details, UDA values, images, tickets, related items, compliance and import data, and custom flex attributes. End-to-end publication is limited to items that qualify through the refresh and delta flow: refresh seeds items in approved or deleted status, item-master inserts are not queued until the item is approved, and item-master updates in worksheet or submitted status are suppressed. Below-transaction-level reference or UPC items are not published as standalone records; their changes refresh the parent item’s referenceItem node.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: ITEM_MASTER, ITEM_MASTER_TL, ITEM_SUPPLIER, ITEM_SUPP_UOM, ITEM_SUPP_COUNTRY, ITEM_SUPP_COUNTRY_DIM, ITEM_SUPP_MANU_COUNTRY, ITEM_TICKET, UDA_ITEM_DATE, UDA_ITEM_LOV, UDA_ITEM_FF, ITEM_IMAGE, ITEM_SEASONS, ITEM_HTS, ITEM_EXP_HEAD, ITEM_EXP_DETAIL, RELATED_ITEM_HEAD, RELATED_ITEM_DETAIL, REQ_DOC, ITEM_IMPORT_ATTR
Additional business tables: ITEM_MASTER_CFA_EXT, ITEM_SUPPLIER_CFA_EXT, ITEM_SUPP_COUNTRY_CFA_EXT, DEPS, GROUPS, DIVISION, CLASS, SUBCLASS,
BRAND, DIFF_IDS, DIFF_GROUP_HEAD, SYSTEM_OPTIONS, SYSTEM_CONFIG_OPTIONS, CODE_DETAIL
JSON cache table: MERCHAPI_EXT_ITEM
JSON generation view: V_MERCHAPI_EXT_ITEM_JSON
Is keyed by ITEM_MASTER rows with ITEM_LEVEL ⇐ TRAN_LEVEL, so the published entity is the transaction-level item or a higher hierarchy node.
The payload combines core item attributes with translations, supplier and sourcing data, UDAs, images, tickets, related items, HTS and expense data, import attributes, custom flex attributes, and supporting hierarchy and lookup values.
Below-transaction-level reference or UPC items are not published as standalone payloads; their data is rolled into the parent item’s referenceItem node.
Initial Seeding and post enablement rebuild/repair
Initial seeding selects ITEM_MASTER rows where STATUS IN (‘A’, ‘D’) and ITEM_LEVEL ⇐ TRAN_LEVEL, then builds the published JSON through V_MERCHAPI_EXT_ITEM_JSON.
Rebuild marks cache rows deleted when the item no longer exists in ITEM_MASTER.
ICL (Integration Change Log) table: ICL_RMS_ITEM_MASTER, ICL_RMS_ITEM_SUPPLIER, ICL_RMS_ITEM_SUPP_UOM, ICL_RMS_ITEM_SUPP_CTRY, ICL_RMS_ITEM_SUPP_CTRY_DIM, ICL_RMS_ITEM_SUPP_MANU_CTRY, ICL_RMS_ITEM_TICKET, ICL_RMS_UDA_ITEM_DATE, ICL_RMS_UDA_ITEM_LOV, ICL_RMS_UDA_ITEM_FF, ICL_RMS_ITEM_IMAGE, ICL_RMS_ITEM_SEASONS, ICL_RMS_ITEM_HTS, ICL_RMS_ITEM_EXP, ICL_RMS_RELATED_ITEM, ICL_RMS_REQ_DOC, ICL_RMS_ITEM_IMPORT_ATTR (ICL consumer name = MERCHAPI)
Item-master inserts are staged only when the new item is approved, approval transitions are staged as insert-style publishes, and item-master updates in worksheet or submitted status are suppressed.
ITEM_MASTER_TL changes are queued only for items with ITEM_LEVEL ⇐ TRAN_LEVEL, and below-transaction-level item changes are rolled up to ITEM_PARENT so the parent payload is refreshed.
Item Approval Handling
Approval of an item also results in publish of foundation/omnichannel/item/image, foundation/ omnichannel/item/relateditem, foundation/item/location, foundation/item/vat, and foundation/ taxLocationItem. The item approval flow writes the existing ITEM_IMAGE, RELATED_ITEM_HEAD/DETAIL, ITEM_LOC, and VAT_ITEM source rows for that item into those APIs’ ICL tables so dependent approved-item data is queued together with the item.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_ITEM
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_ITEM_ADHOC_PROCESS - > MERCHAPI_EXT_ITEM_ADHOC_JOB
Webhook configuration api name: foundation/item
Special handling
Additional GET query parameters: itemLevel, tranLevel, deptId, classId, subclassId, status, itemType, inventoryInd, supplier, referenceItem.
The filters itemLevel, tranLevel, deptId, classId, subclassId, status, and itemType are not backed by dedicated cache-table indexes. At high volume, use them only as additional criteria on top of a small-window delta fetch and not for full downloads.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime characteristics and should be evaluated separately. The available configuration for this service should therefore be reviewed and validated against the customer production data profile, including expected volume, message size, and access pattern, with the key performance-related configuration for this service covering the following:
Multi-threading and commit control
This service supports multi-threaded execution for initial seeding, while delta processing remains a single threaded process. Initial-seeding thread count is controlled through API_REFRESH_OVERRIDE_NO_OF_THREADS, and initial-seeding commit sizing is controlled through API_REFRESH_OVERRIDE_COMMIT_MAX_COUNTER.
For initial seeding, thread and commit settings should be chosen together based on expected row volume, average message size, and the complex SQL query required to build the item message from ITEM_MASTER together with supplier, UDA, image, ticket, related-item, HTS, expense, import, and hierarchy data. Common starting points for large-volume seeding are 8, 16, or 32 threads. Values of 48 or 64 threads should be considered only after testing and with awareness of competing workload in the environment. The delivered refresh override is currently 4 threads.
Refresh commit sizing should be reviewed together with the thread setting. The delivered refresh override commit setting is currently 10000 and that should be used if the thread value is low. If running with higher thread value, the typical value can range from about 100 to 1,000 rows.
Dropping indexes and constraints during seeding
This option applies only to initial seeding, including truncate-and-load execution. Even with refresh-override threading, larger parallel insert volumes can increase index maintenance overhead and slow the load.
To reduce that overhead, DROP_INDEX_ON_REFRESH can be enabled so indexes and constraints are dropped before seeding and rebuilt after the load completes.
This can improve data-load throughput, but the overall refresh plan should also account for the additional time needed for index rebuild after the seeding step finishes. GATHER_STATS_ON_REFRESH should normally remain enabled unless testing shows a need to change it.
REST fetch considerations
Item payloads can be comparatively large, so REST page size should be selected based on average message size so that the average response remains below about 10 MB per call. Common page-limit values for this service should be 500 or 1,000, and very small limits, especially below 100, should generally be avoided.
For full downloads, do not provide the since query parameter so the database can favor the primary-key access path. For delta downloads, use a small time window, typically a few minutes and at most a few hours, so the eligible row set on the LAST_UPDATE_DATETIME index remains small.
Wider delta windows, especially multi-day windows that can arise during outages or data recovery, generally do not perform well. For such scenarios, keeping BUILD_HISTOGRAM enabled allows the service to support recovery through smaller, more selective polling windows using the optimalBefore query parameter.
In this catch-up pattern, for requests up to 30 days in the past, the client provides optimalBefore and leaves before empty. The client then uses the returned before timestamp to continue polling incrementally until the backlog is cleared, and then resumes the normal shortwindow delta pattern. Hourly histogram processing groups LAST_UPDATE_DATETIME values into buckets of 10,000 rows in MERCHAPI_TIMESTAMP_HISTOGRAM using the shared HISTOGRAM_ROW_COUNT configuration.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/item
MerchIntegrations/services/foundation/item/{itemId}
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| itemLevel | No | String | Item Level - 1, 2, or 3 |
| tranLevel | No | String | Transaction Level- 1, 2, or 3 |
| deptId | No | String (4) | Department Id |
| classId | No | String (4) | Class Id |
| subclassId | No | String (4) | Sub Class Id |
| status | No | String | Status |
| itemType | No | String | Item Type |
| inventoryInd | No | String | Inventoried |
| supplier | No | String | Supplier |
| referenceItem | No | String | Reference Item |
| offsetkey | No | String | Offset key (Item) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-430 Input Parameter for “MerchIntegrations/services/foundation/item/{itemId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| itemId | Yes | String | Item Id |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-431 PageResultsItemsMerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
Table 5-431 (Cont.) PageResultsItemsMerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-432 MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for Item details |
| longtDescription | No | String | |
| item | No | String (25) | This feld specifes Unique alphanumeric value that identifes the item. |
| itemNumberType | No | String (6) | This feld holds the type of item number. Valid values are defned by code type UPCT. |
| status | No | String (1) | This feld specifes status of the item. |
| itemLevel | No | Number(1,0) | This feld specifes Number indicating which of the three levels the item resides. The item level determines if the item stands alone or if it is part of a family of related items. The item level also determines how the item may be used throughout the system. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| tranLevel | No | Number(1,0) | This feld specifes Number indicating which of the three levels transactions occur for the item’s group. The transaction level is the level at which the item’s inventory is tracked in the system. The transaction level item will be counted, transferred, shipped, etc. The transaction level may be at the current item or up to 2 levels above or below the current item. Only one level of the hierarchy of an item family may contain transaction level items. |
| itemDescription | No | String (250) | This feld specifes long description of the item. This description is used through out the system to help online users identify the item. For items that have parents, this description will default to the parents description plus any differentiators. For items without parents this description will default to null. |
| shortDescription | No | String (120) | This feld specifes shortened description of the item. This description is the default for downloading to the POS. For items that have parents, this description will default to the parent’s short description. For items without parents, this description will default to null. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemDescriptionUpper case | No | String (250) | This feld specifes all upper case description of the item (same as upper(item_desc)). This feld is not displayed in the on- line item maintenance dialog, but is used in item list of value search processing through out the system. |
| itemDescriptionSecon dary | No | String (250) | This feld specifes secondary descriptions of the item. This feld can only be populated when system_options.second ary_desc_ind = Y. |
| longDescription | No | String (2000) | This feld specifes long description of the item. This is a more descriptive writeup about the item targeted largely for platforms like Ecommerce platforms, Marketplaces, Order Management Systems etc. |
| itemParent | No | String (25) | This feld specifes alphanumeric value that uniquely identifes the item/ group at the level above the item. |
| itemGrandparent | No | String (25) | This feld specifes alphanumeric value that uniquely identifes the item/ group at the level above the item. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| sellableInd | No | String (1) | This feld indicates if pack item may be sold as a unit. If it is ‘Y’ then the pack will have its own unique unit retail. If it is ‘N’ then the pack’s unit retail is the sum of each individual item’s total retail within the pack. This feld will only be available if the item is a pack item. Value values are: Y = Yes, this pack may be sold as a unit; N = No, this pack man not be sold as a unit. |
| orderableInd | No | String (1) | This feld indicates if pack item is orderable. If it is ‘Y’ then the suppliers of the pack must supply all components in the pack. If it is ‘N’ then the components may have different suppliers. This feld will only be available if the item is a pack item. Valid values are: Y = Yes, this pack may be ordered, N = No, this pack may not be ordered. |
| inventoryInd | No | String (1) | This feld specifes inventory Indicator. |
| packInd | No | String (1) | This feld indicates if the item is a pack. A pack item is a collection of items that may be either ordered or sold as a unit. Packs require details (i.e. component items and qtys, etc.) that other items do not. This feld is required by the database. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| simplePackInd | No | String (1) | This feld indicates if pack item is a simple pack or not. This feld will only be available if the item is a pack item. A simple pack is an item whose components are all the same item (i.e. a six pack of cola, etc). Valid values are:Y = Yes, this item is a simple pack; N = No if this is not a simple pack. |
| containsInnerInd | No | String (1) | This feld indicates if pack item contains inner packs. Vendor packs will never contain inner packs and this feld will be defaulted to ‘N’. This feld will only be available if the item is a pack item. Valid values are Y = Yes, this pack contains inner packs; N = No, this pack does not contain inner packs. |
| dept | No | Number(4,0) | This feld specifes number identifying the department to which the item is attached. The item’s department will be the same as that of its parent (and, by transitivity, to that of its grandparent). Valid values for this feld are located on the deps table. |
| deptName | No | String (120) | This feld contains the name of the department. |
| class | No | Number | |
| className | No | String (120) | This feld contains the name of the class. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| uniqueClassId | No | Number(10,0) | This feld uniquely identify the class which the item belongs to.Class is not unique ID the merchandise hierarchy.The combination of Dept/ Class is unique, but requires use of a composite key.The composite key is generally used in user interfaces.The unique ID can be used in back end processing or in systems that can not have a composite key in the merchandise hierarchy. |
| subclass | No | Number(4,0) | This feld specifes number identifying the subclass to which the item is attached. The item’s subclass will be the same as that of its parent (and, by transitivity, to that of its grandparent). Valid values for this feld are located on the subclass table. |
| subclassName | No | String (120) | This feld contains the name of the subclass. |
| uniqueSubclassId | No | Number(10,0) | This feld uniquely identify the subclass which the item belongs to.Sublass is not unique ID the merchandise hierarchy.The combination of Dept/ Class/Subclass is unique, but requires use of a composite key.The composite key is generally used in user interfaces.The unique ID can be used in back end processing or in systems that can not have a composite key in the merchandise hierarchy. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| unitRetail | No | Number(20,4) | This feld holds the unit retail in the standard unit of measure for the item/ zone combination. This feld is stored in the local currency. |
| variableUpcFormatId | No | String (1) | This feld will hold the format ID that corresponds to the item’s variable UPC. This value is only used for items with variable UPCs. |
| variableWeightUpcPref ix | No | Number(2,0) | This feld holds the prefx for variable weight UPCs. The prefx determines the format of the eventual UPC and will be used to decode variable weight UPCs that are uploaded from the POS. It is the clients responsibility to download this value to their POS system. |
| diff1 | No | String (10) | This feld contains diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group (i.e. Men’s pant sizes) or a value (6 oz). For an item that is not a parent, this feld may contain a value (34X34, Red, etc.). Valid values are found on the diff_group and diff_id tables. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diff1Type | No | String (6) | This feld will hold a value of all possible differential types. (for example, ‘S’ - size, ‘C’ - color, ‘F’ - favor, ‘E’ - scent, ‘P’ - pattern). Valid values are stored on the code_detail table with the code_type ‘DIFF’ and on the diff_type table. |
| diff2 | No | String (10) | This feld contains diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group (i.e. Men’s pant sizes) or a value (6 oz). For an item that is not a parent, this feld may contain a value (34X34, Red, etc.). Valid values are found on the diff_group and diff_id tables. |
| diff2Type | No | String (6) | This feld will hold a value of all possible differential types. (for example, ‘S’ - size, ‘C’ - color, ‘F’ - favor, ‘E’ - scent, ‘P’ - pattern). Valid values are stored on the code_detail table with the code_type ‘DIFF’ and on the diff_type table. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diff3 | No | String (10) | This feld contains diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group (i.e. Men’s pant sizes) or a value (6 oz). For an item that is not a parent, this feld may contain a value (34X34, Red, etc.). Valid values are found on the diff_group and diff_id tables. |
| diff3Type | No | String (6) | This feld will hold a value of all possible differential types. (for example, ‘S’ - size, ‘C’ - color, ‘F’ - favor, ‘E’ - scent, ‘P’ - pattern). Valid values are stored on the code_detail table with the code_type ‘DIFF’ and on the diff_type table. |
| diff4 | No | String (10) | This feld contains diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group (i.e. Men’s pant sizes) or a value (6 oz). For an item that is not a parent, this feld may contain a value (34X34, Red, etc.). Valid values are found on the diff_group and diff_id tables. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diff4Type | No | String (6) | This feld will hold a value of all possible differential types. (for example, ‘S’ - size, ‘C’ - color, ‘F’ - favor, ‘E’ - scent, ‘P’ - pattern). Valid values are stored on the code_detail table with the code_type ‘DIFF’ and on the diff_type table. |
| costZoneGroupId | No | Number(4,0) | This feld contains cost zone group associated with the item. This feld is only required when elc_ind (landed cost indicator) is set to ’Y’ on the system_options table. |
| standardUom | No | String (4) | This feld contains unit of measure in which stock of the item is tracked at a corporate level. |
| uomConversionFactor | No | Number(20,10) | This feld contains Conversion factor between an ‘Each’ and the standard_uom when the standard_uom is not in the quantity class (e.g. if standard_uom = lb and 1 lb = 10 eaches, this factor will be 10). This factor will be used to convert sales and stock data when an item is retailed in eaches but does not have eaches as its standard unit of measure. |
| packageSize | No | Number(12,4) | This feld holds the size of the product printed on any packaging (i.e. 24 ounces). This feld is used for reporting purposes, as well as by Retek Price Mangement to determine same sized and different sized items. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| packageUom | No | String (4) | This feld holds the unit of measure associated with the package size. This feld is used for reporting purposes and by Retek Price Management to determine same sized and different sized items. |
| merchandiseInd | No | String (1) | This feld indicates if the item is a merchandise item (Y, N). |
| storeOrderMultiple | No | String (1) | This feld indicates Merchandise shipped from the warehouses to the stores must be specifed in this unit type. Valid values are:C = Cases; I = Inner; E = Eaches. |
| forecastInd | No | String (1) | This feld indicates if this item will be interfaced to an external forecasting system (Y, N). |
| manufacturerRecomm endedRetail | No | Number(20,4) | This feld contains manufacturer’s recommended retail price for the item. Used for informational purposes only. This feld is stored in the primary currency. |
| manufacturerRetailCu rrencyCode | No | String (3) | The feld indicates the currency code of the Manufacturer’s retail price. |
| originalRetail | No | Number(20,4) | The feld indicated the original retail price of the item per unit. This feld is stored in the primary currency. |
| originalRetailCurrency Code | No | String (3) | The feld indicates the currency code of the original retail price. |
| retailLabelType | No | String (6) | This feld indicates any special label type associated with an item. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| retailLabelTypeDescri ption | No | String (250) | This feld holds the description of the retail label type. |
| retailLabelValue | No | Number(20,4) | This feld represents the value associated with the retail label type. |
| handlingTemperature | No | String (6) | This feld holds the temperature information associated with the item. |
| handlingTemperature Description | No | String (250) | This feld holds the description of the handling temperature. |
| handlingSensitivity | No | String (6) | This feld holds the sensitivity information associated with the item. |
| handlingSensitivityDes cription | No | String (250) | This feld holds the description of the handling sensitivity. |
| catchWeightInd | No | String (1) | This feld indicates whether the item should be weighed when it arrives at a location. |
| catchWeightType | No | String (1) | The feld will hold catch weight type for a simple pack catch weight item. The value is based on the component items order_type and sale_type: 2 - order_type = Variable Weight, sale_type = Loose Weight 4 - order_type = Variable Weight, sale_type = Variable Weight Each. |
| catchWeightUom | No | String (4) | The feld indicates the UOM for Catchweight Items. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderType | No | String (6) | The feld determines how catch weight items are ordered. Valid values are: F - fxed weight V - Variable weight Valid values are held on the CODE_DETAIL table with a code type = ORDT. |
| saleType | No | String (6) | The feld indicates the method of how catch weight items are sold in store locations. Valid values are: V - variable weight each L - Loose weight. Valid values are held on the CODE_DETAIL table with a code type = STPE. |
| wasteType | No | String (6) | The feld indicates identifes the wastage type as either sales or spoilage wastage. Sales wastage occurs during processes that make an item saleable (i.e. fat is trimmed off at customer request). Spoilage wastage occurs during the products shelf life (i.e. evaporation causes the product to weigh less after a period of time). Valid values are: SP - spoilage; and SL - Sales. |
| wasteTypeDescription | No | String (250) | The feld contains the Waste Type description corresponding to the Waste_Type value in item_master. |
| averageWastePercenta ge | No | Number(12,4) | The feld indicates average percent of wastage for the item over its shelf life. Used in infating the retail price for wastage items. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| defaultWastePercentag e | No | Number(12,4) | The feld indicates default daily wastage percent for spoilage type wastage items. This value will default to all item locations and represents the average amount of wastage that occurs on a daily basis. |
| constantDimensionInd | No | String (1) | The feld indicates that the dimensions of the product are always the same, regardless of the supplier. If this feld is Y, the dimensions for all suppliers will be defaulted to the primary supplier/ primary country dimensions. Editing of dimensions for the item will only be allowed for the primary supplier/ primary country. |
| packType | No | String (1) | The feld Indicates if pack item is a vendor pack or a buyer pack. A vendor pack is a pack that the vendor or supplier recognizes and sells to the retailer. If the pack item is a vendor pack, communication with the supplier will use the vendor pack number. A buyer pack is a pack that a buyer created for internal ease of use. If the pack item is a buyer pack communication with the supplier will explode the pack out to its component items. This feld will only be used if the item is a pack item. If the pack item is not orderable this feld must be null. Valid values are: V = Vendor; B = Buyer. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderAsType | No | String (1) | This feld indicates if pack item is receivable at the component level or at the pack level (for a buyer pack only). This feld is required if pack item is an orderable buyer pack. This feld must be NULL if the pack is sellable only or a vendor pack. This feld will only be available if the item is a pack item. Valid Values are: E = Eaches (component level) P = Pack (buyer pack only).. |
| comments | No | String (2000) | The feld holds any comments associated with the item. |
| itemServiceLevel | No | String (6) | The feld Holds a value that restricts the type of shipment methods that RCOM can select for an item. |
| giftWrapInd | No | String (1) | This feld will contain a value of ‘Y’ if the item is eligible to be gift wrapped. |
| shipAloneInd | No | String (1) | This feld will contain a value of Y if the item should be shipped to the customer in a separate package. |
| brandName | No | String (30) | This feld contains the brand associated to an item. |
| brandDescription | No | String (120) | This feld contains the description of the brand associated with the item. |
| perishableInd | No | String (1) | The feld is not used by RMS. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemTransformInd | No | String (1) | The feld show that an item is associated with an item transformation. The item will be either the sellable item or orderable item in the transformation process. |
| depositItemType | No | String (6) | The feld contains deposit item component type. A NULL value in this feld indicates that this item is not part of a deposit item relationship. The possible values are - E - Contents A - Container Z - Crate T - Returned Item (Empty bottle) P - Complex pack (with deposit items) The Returned item is fagged only to enable these items to be mapped to a separate GL account if required. |
| containerItem | No | String (25) | The feld holds the container item number for a contents item. This feld is only populated and required if the DEPOSIT_ITEM_TYPE = E. |
| depositInPricePerUom | No | String (6) | This feld indicates if the deposit amount is included in the price per UOM calculation for a contents item ticket. This value is only required if the DEPOSIT_ITEM_TYPE = E. Valid values are I - Include deposit amount E - Exclude deposit amount. |
| storePackInventoryInd | No | String (1) | This feld indicates whether downstream systems should track pack inventory at the pack level. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| sohInquiryAtPackInd | No | String (1) | The feld indicates to the Store Inventory System if a notional simple pack item’s inventory should be displayed in packs. |
| purchaseType | No | String (1) | The feld indicates if an item is a normal, consignment or concession item - ‘N’ for normal, ‘S’ for consignment, ‘C’ for concession. |
| productClassifcation | No | String (6) | The feld contains item combinability codes (with code type ‘PCLA’) which provide a way to defne which items can be combined (packed or boxed) together. |
| productClassifcationD escription | No | String (250) | This feld will hold the description of the product classifcation. |
| itemAggregateInd | No | String (1) | This feld holds indicator to aggregate inventory and sales for the item. Currently, this indicator is used by allocation and MFP to aggregate inventory for items. For staple items this indictor should be N. |
| diff1AggregateInd | No | String (1) | This feld holds indicator for the corresponding diff. Indicator to aggregate inventory and sales for an item at Parent/ Diff level (e.g. Style/ Color or Style/Size . |
| diff2AggregateInd | No | String (1) | This feld holds indicator for the corresponding diff. Indicator to aggregate inventory and sales for an item at Parent/ Diff level (e.g. Style/ Color or Style/Size. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diff3AggregateInd | No | String (1) | This feld holds indicator for the corresponding diff. Indicator to aggregate inventory and sales for an item at Parent/ Diff level (e.g. Style/ Color or Style/Size. |
| diff4AggregateInd | No | String (1) | This feld holds indicator for the corresponding diff. Indicator to aggregate inventory and sales for an item at Parent/ Diff level (e.g. Style/ Color or Style/Size. |
| diff1Level | No | String (6) | This feld will contain either ID or GROUP, based on whether the diff_1 is a group diff or a diff id. |
| diff1Description | No | String (120) | This feld will hold the description of differentiator. |
| diff2Level | No | String (6) | This feld will contain either ID or GROUP, based on whether the diff_1 is a group diff or a diff id. |
| diff2Description | No | String (120) | This feld will hold the description of differentiator. |
| diff3Level | No | String (6) | This feld will contain either ID or GROUP, based on whether the diff_1 is a group diff or a diff id. |
| diff3Description | No | String (120) | This feld will hold the description of differentiator. |
| diff4Level | No | String (6) | This feld will contain either ID or GROUP, based on whether the diff_1 is a group diff or a diff id. |
| diff4Description | No | String (120) | This feld will hold the description of differentiator. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryImageUrl | No | String (375) | This feld will hold the primary item image URL. It is only included for the ItemCre and ItemFulRep message types. Updates to the primary image for an item are published in the Item Image node. |
| transferAllocUpCharge SourceType | No | String (6) | This feld impacts how up charges default to transfers and allocations when an item is added. When set to ‘D’, department- level up charges are applied if item-level up charges are not defned for the item/ from-location/to- location combination. When set to ‘I’, only item-level up charges are applied; department-level up charges are not inherited. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the item. |
| itemTranslation | No | Collection of Object | This List holds translation attributes for the item. |
| itemSupplier | No | Collection of Object | This List holds supplier’s attributes for the item. |
| itemUda | No | Object | This record holds uda attributes for the item. |
| itemImage | No | Collection of Object | This List holds image attributes for the item. |
| itemSeason | No | Collection of Object | This List holds season attributes for the item. |
| referenceItem | No | Collection of Object | This List holds referenc item’s attributes for the item. |
Table 5-432 (Cont.) MerchApiExtItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemBOM | No | Collection of Object | This List holds pack attributes for the item. |
| itemTicket | No | Collection of Object | This List holds ticket attributes for the item. |
| relatedItem | No | Collection of Object | This List holds related item’s attributes for the item. |
| hts | No | Collection of Object | This List holds hts attributes for the item. |
| expense | No | Collection of Object | This List holds expense attributes for the item. |
| requiredDocuments | No | Collection of Object | This List holds the required documents of the item. |
| itemImportAttributes | No | Collection of Object | This List holds the import specifc attributes associated with a given item. |
| cacheTimestamp | No | dateTime | This feld specifes date and time when item record was last maintained. |
| cacheCreateTimestam p | No | dateTime | This feld specifes date and time when the record was frst created for web serivce publication. |
Table 5-433 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
Table 5-433 (Cont.) CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-434 ItemTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| languageCode | No | Number(6,0) | This feld contains the language in which the translated text is maintained |
| languageName | No | String (120) | This feld contains description of language code in which the translated text is maintained |
| isoCode | No | String (6) | This feld will hold the ISO code associated with the given language. |
| itemDescription | No | String (250) | This feld will hold the ISO code associated with the given language. |
| itemDescriptionSecon dary | No | String (250) | This feld holds long description of the item. This description is used through out the system to help online users identify the item. For items that have parents,this description will default to the parents description plus any differentiators. For items without parents, this description will default to null |
Table 5-434 (Cont.) ItemTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| shortDescription | No | String (120) | This feld holds shortened description of the item. This description is the default for downloading to the POS. For items that have parents, this description will default to the parents short description. For items without parents, this description will default to null |
| longDescription | No | String (2000) | This feld specifes long description of the item. This is a more descriptive writeup about the item targeted largely for platforms like Ecommerce platforms, Marketplaces, Order Management Systems etc. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-435 ItemSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | No | Number(10,0) | This feld specifes unique identifer for the supplier. |
| primarySupplierInd | No | String (1) | This feld indicates whether this supplier is the primary supplier for the item. An item can have one and only one primary supplier. |
| vpn | No | String (30) | This feld contains the Vendor Product Number for the Item/ Supplier. |
| supplierLabel | No | String (15) | This feld contains the supplier label. It will only be populated if item is a parent item. |
Table 5-435 (Cont.) ItemSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| consignmentRate | No | Number(12,4) | This feld contains the consignment rate for this item for the supplier. |
| supplierDiff1 | No | String (120) | This feld contains the frst supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff2 | No | String (120) | This feld contains the frst supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff3 | No | String (120) | This feld contains the frst supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff4 | No | String (120) | This feld contains the frst supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| palletName | No | String (6) | This feld specifes code referencing the name used to refer to the pallet. |
| caseName | No | String (6) | This feld specifes code referencing the name used to refer to the case. |
| innerName | No | String (6) | This feld specifes code referencing the name used to refer to the inner. |
| supplierDiscontinueDa te | No | date | This feld specifes the date when the supplier discontinues an item. |
Table 5-435 (Cont.) ItemSupplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| directShipInd | No | String (1) | This feld indicates that any item associated with this supplier is eligible for a direct shipment from the supplier to the customer. |
| primaryCaseSize | No | String (6) | This feld indicates the primary case size for the item supplier when an orderable item is confgured for informal case types. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the item’s supplier record. |
| itemSupplierCountry | No | Collection of Object | This List holds custom fex attributes for the item supplier’s country record. |
| itemSupplierCountryO fManufacture | No | Collection of Object | This List holds custom fex attributes for the item supplier’s manufacture record. |
| itemSupplierUom | No | Collection of Object | This List holds custom fex attributes for the item’s supplier UOM record. |
| translation | No | Collection of Object | List of translations for Item Supplier |
Table 5-436 ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | No | String (3) | This feld specifes country where the item was manufactured or signifcantly altered. |
| primarySupplierInd | No | String (1) | This feld indicates whether this supplier is the primary supplier for the item. Each item can have one and only one primary supplier. |
Table 5-436 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryCountryInd | No | String (1) | This feld indicates whether this country is the primary country for the item/supplier. Each item/supplier combination can have one and only one primary country. |
| unitCost | No | Number(20,4) | This feld contains the current corporate unit cost for the item from the supplier /origin country. This feld is stored in the Supplier’s currency.. |
| leadTime | No | Number(4,0) | This feld contains the number of days that will elapse between the date an order is written and the delivery to the store or warehouse from the supplier. |
| pickupLeadTime | No | Number(4,0) | This feld Contains the time that will be taken to get the item from the supplier to the initial receiving location. |
| supplierPackSize | No | Number(12,4) | This feld contains the quantity that orders must be placed in multiples of for the supplier for the item. |
| innerPackSize | No | Number(12,4) | This feld contains the break pack size for this item from the supplier. |
| roundLevel | No | String (6) | This feld is used to determine how order quantities will be rounded to case, layer and pallet. |
| minimumOrderQuanti ty | No | Number(12,4) | This feld contains the minimum quantity that can be ordered at once from the supplier for the item. |
Table 5-436 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| maximumOrderQuant ity | No | Number(12,4) | This feld contains the maximum quantity that can be ordered at once from the supplier for the item. |
| packingMethod | No | String (6) | This feld indicates whether the packing method for the item in the container is fat or hanging. |
| defaultUop | No | String (6) | This feld contains the default unit of purchase for the item/ supplier/country. Valid values include ‘C’ (Case) and ‘P’ (Pallet) |
| ti | No | Number(12,4) | This feld contains number of shipping units (cases) that make up one tier of the pallet. Multiply TI x HI to get total number of units (cases) in a Pallet. |
| hi | No | Number(12,4) | This feld contains number of tiers that make up a complete pallet. Multiply TI x HI to get total number of units (cases) in a Pallet. |
| costUom | No | String (4) | This feld contains cost UOM is held to allow costs to be managed in a separate UOM to the standard UOM. |
| toleranceType | No | String (6) | The unit of tolerance for catch weight simple packs. Valid values are: ‘A’ - actual ’P’ - percent. |
| maximumTolerance | No | Number(12,4) | The maximum tolerance value for the catch weight simple pack. |
| minimumTolerance | No | Number(12,4) | The minimum tolerance value for the catch weight simple pack. |
Table 5-436 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| roundToInnerPercenta ge | No | Number(12,4) | This feld will hold the Inner Rounding Threshold value. During rounding, this value is used to determine whether to round partial Inner quantities up or down. If the Inner-fraction in question is less than the Threshold proportion, it is rounded down; if not, it is rounded up. |
| roundToCasePercentag e | No | Number(12,4) | This feld will hold the Case Rounding Threshold value. During rounding, this value is used to determine whether to round partial Case quantities up or down. If the Case-fraction in question is less than the Threshold proportion, it is rounded down; if not, it is rounded up. |
| roundToLayerPercent age | No | Number(12,4) | This feld will hold the Layer Rounding Threshold value. During rounding, this value is used to determine whether to round partial Layer quantities up or down. If the Layer-fraction in question is less than the Threshold proportion, it is rounded down; if not, it is rounded up. |
Table 5-436 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| roundToPalletPercenta ge | No | Number(12,4) | This feld will hold the Pallet Rounding Threshold value. During rounding, this value is used to determine whether to round partial Pallet quantities up or down. If the Pallet -fraction in question is less than the Threshold proportion, it is rounded down; if not, it is rounded up. |
| supplierHierarchyTyp e1 | No | String (6) | This feld identifes partner type of supplier hierarchy level 1. This feld will always have the partner type S1 which indicates manufacturer. |
| supplierHierarchyLev el1 | No | String (10) | This feld contains highest level of supplier hierarchy which is there to indicate a partner, such as a manufacturer, in the supply chain that gives rebates to the retailer. |
| supplierHierarchyTyp e2 | No | String (6) | This feld identifes partner type of supplier hierarchy level 2. This feld will always have the partner type S2 which indicates distributor. |
| supplierHierarchyLev el2 | No | String (10) | This feld conatins second highest level of supplier hierarchy which is there to indicate a partner, such as a distributor, in the supply chain that gives rebates to the retailer.. |
| supplierHierarchyTyp e3 | No | String (6) | This feld identifes partner type of supplier hierarchy level 3. This feld will always have the partner type S3 which indicates wholesaler. |
Table 5-436 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplierHierarchyLev el3 | No | String (10) | Third highest level of supplier hierarchy which is there to indicate a partner, such as a wholesaler, in the supply chain that gives rebates to the retailer. |
| negotiatedItemCost | No | Number(20,4) | This feld will hold the supplier negotiated item cost for the primary delivery country of the item. Once a location is associated with the item, the primary locations negotiated item cost will be stored in this feld. |
| extendedBaseCost | No | Number(20,4) | This feld will hold the extended base cost for the primary delivery country of the item. Once a location is associated with the item, the primary locations extended base cost will be stored in this feld. Extended base cost is the cost inclusive of all the taxes that affect the WAC. In case of GTAX, Extended Base Cost = Base Cost + Non- recoverable taxes. In case of VAT, Extended Base Cost = Base Cost. |
Table 5-436 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inclusiveCost | No | Number(20,4) | This feld will hold the inclusive cost for the primary delivery country of the item. Once a location is associated with the item, the primary locations inclusive cost will be stored in this feld. This cost will have both the recoverable and non- recoverable taxes included. In case of GTAX, Inclusive Cost = Base Cost + Non- recoverable taxes + Recoverable Taxes. In case of VAT, Inclusive Cost = Base Cost + VAT. |
| baseCost | No | Number(20,4) | This feld will hold the tax exclusive cost of the item. |
| purchaseType | No | Number(1,0) | This feld contains a code to indicate whether the item is normal merchandise (i.e. owned by the retailer), consignment stock or a concession item. Valid values are 0 - Owned, 1 - Consignment, 2 - Concession. |
| calculationBasis | No | String (1) | This feld indicates if the cost for the consignment/ concession item will be managed either based on cost per unit or as a percentage of retail. Valid values are C - Cost per Unit, P - Purchase Rate. |
| purchaseRate | No | Number(12,4) | This feld contains the percentage of the retail price which will determine the cost paid to the supplier for a consignment or concession item. |
Table 5-436 (Cont.) ItemSupplierCountry - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| pricingControl | No | String (1) | This feld contains the pricing control of the item which will determine the item price is controlled by Retailer or Supplier. Valid value are R - Managed by Retailer, S - Managed by Supplier, NULL - For Owned Items |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the item supplier’s country record. |
| itemSupplierCountryD imension | No | Collection of Object | This List holds dimension attributes for the item supplier’s country record. |
Table 5-437 ItemSupplierCountryDimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dimensionObject | No | String (6) | This feld Specifc object whose dimensions are specifed in this record (e.g. case, pallet, each). Valid values for this feld are in the code type DIMO on the codes tables. |
| dimensionObjectDescr iption | No | String (250) | This feld conatins description of the dimesnion object. |
| presentationMethod | No | String (6) | This feld describes the packaging (if any) being taken into consideration in the specifed dimensions. Valid values for this feld are in the code type PCKT on the codes tables. |
Table 5-437 (Cont.) ItemSupplierCountryDimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| presentationMethodDe scription | No | String (250) | This feld conatins description of the presentation method. |
| length | No | Number(12,4) | This feld conatins length of dim_object measured in units specifed in terms of the LWH Unit of Measure. |
| width | No | Number(12,4) | This feld conatins width of dim_object measured in units specifed in terms of the LWH Unit of Measure. |
| height | No | Number(12,4) | This feld conatins height of dim_object measured in units specifed in terms of the LWH Unit of Measure. |
| lwhUom | No | String (4) | This feld conatins measurement for length, width, and height. |
| weight | No | Number(12,4) | This feld conatins weight of dim_object measured in units specifed in terms of the Weight Unit of Measure. |
| netWeight | No | Number(12,4) | This feld conatins net weight of the dim_object (weight without packaging) measured in units specifed in terms of the Weight Unit of Measure. |
| weightUom | No | String (4) | This feld conatins unit of measurement for Weight and Net Weight. |
| liquidVolume | No | Number(12,4) | This feld conatins unit of measurement for vloume. |
Table 5-437 (Cont.) ItemSupplierCountryDimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| liquidVolumeUom | No | String (4) | This feld conatins unit of measurement for liquid volume. Liquid volumes are only convertible to other liquid volumes. |
| statisticalCase | No | Number(12,4) | This feld conatins statistical value of the dim_object’s dimensions to be used for loading purposes. |
| tareWeight | No | Number(12,4) | This feld conatins amount of weight to be subtracted for packaging materials. Used to calculate the true net weight of the dim_object. |
| tareType | No | String (6) | This feld indicates whether the tare weight for the dim_object is wet or dry. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-438 ItemSupplierCountryOfManufacture - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| countryId | No | String (3) | This feld holds country ID of manufacturer. |
| primaryInd | No | String (1) | This feld indicates primary country of manufacturer indicator. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-439 ItemSupplierUom - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| uom | No | String (4) | This feld holds unit of measure that the item is being measured in. |
| value | No | Number(20,4) | This feld holds value of measure. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-440 ItemSupplierTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| languageCode | No | Number(6,0) | The code identifying the language. |
| languageName | No | String (120) | The display name of the language. |
| isoCode | No | String (6) | The ISO code of the language. |
| supplierDiff1 | No | String (120) | This feld contains the frst supplier differentiator and/or description. |
| supplierDiff2 | No | String (120) | This feld contains the second supplier differentiator and/or description. |
| supplierDiff3 | No | String (120) | This feld contains the third supplier differentiator and/or description. |
| supplierDiff4 | No | String (120) | This feld contains the fourth supplier differentiator and/or description. |
| supplierLabel | No | String (15) | The translated supplier label for the item. |
| createDateTime | No | dateTime | The creation date/time of the translation record. |
| updateDateTime | No | dateTime | The last update date/ time of the translation record. |
Table 5-441 ItemUda - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaLov | No | Collection of Object | This List attributes for the item’s uda list of values. |
| udaFreeform | No | Collection of Object | This List holds attributes for the item’s uda free form . |
| udaDate | No | Collection of Object | This List holds attributes for the item’s uda date. |
Table 5-442 UdaLov - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | No | Number(5,0) | This feld contains a number identifying the user-defned attribute. |
| udaDescription | No | String (120) | This feld contains description of user- defned attribute. |
| udaValue | No | Number(5,0) | This feld contains the unique identifed of the Attribute Group being added or delete to the item list. |
| udaValueDescription | No | String (250) | This feld contains the value of the Attribute Group. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-443 UdaFreeForm - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | No | Number(5,0) | This feld contains a number identifying the user-defned attribute. |
| udaDescription | No | String (120) | This feld contains description of user- defned attribute. |
| udaText | No | String (250) | This feld contains the text value of the user- defned attribute for the item. |
Table 5-443 (Cont.) UdaFreeForm - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| translation | No | Collection of Object | List of translations for UDA free form text. |
Table 5-444 UdaFreeFormTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| languageCode | No | Number(6,0) | The code identifying the language. |
| languageName | No | String (120) | The display name of the language. |
| isoCode | No | String (6) | The ISO code of the language. |
| udaTextDesc | No | String (250) | The translated UDA text. |
| createDateTime | No | dateTime | The creation date/time of the translation record. |
| updateDateTime | No | dateTime | The last update date/ time of the translation record. |
Table 5-445 UdaDate - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | No | Number(5,0) | This feld contains a number identifying the user-defned attribute. |
| udaDescription | No | String (120) | This feld contains description of user- defned attribute. |
| udaDate | No | date | This feld contains the effective date for the UDA id. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-446 ItemImage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| imageName | No | String (120) | This feld specifes name of the image. |
| imageAddress | No | String (255) | This feld specifes path where the image fle is stored. |
| imageType | No | String (6) | This feld contains the type of the image of the item. Valid values are defned as member of IITD code type. |
| primaryImageInd | No | String (1) | This feld specifes display sequence order of images associated to the item per priority. |
| displayPriority | No | Number(4,0) | This feld specifes display sequence order of images associated to the item per priority. |
| imageDescription | No | String (40) | This feld contains the description associated with the image of the item. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| translation | No | Collection of Object | List of translations for Item Image |
Table 5-447 ItemImageTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| languageCode | No | Number(6,0) | The code identifying the language. |
| languageName | No | String (120) | The display name of the language. |
| isoCode | No | String (6) | The ISO code of the language. |
| imageDescription | No | String (40) | This feld contains the translated description associated with the image of the item. |
| createDateTime | No | dateTime | The creation date/time of the translation record. |
Table 5-447 (Cont.) ItemImageTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| updateDateTime | No | dateTime | The last update date/ time of the translation record. |
Table 5-448 ItemSeason - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| seasonId | No | Number(3,0) | The season identifer. |
| phaseId | No | Number(3,0) | The phase identifer. |
| sequenceNo | No | Number(4,0) | This feld contains a sequence number that combined with the item number will make each record unique. |
| diffId | No | String (10) | This feld will hold a value for group/ differentiator combination records only. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-449 ReferenceItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| referenceItem | No | String (25) | This feld holds Unique identifer for the item. |
| primaryInd | No | String (1) | This feld Indicates if the sub-transaction level item is designated as the primary sub- transaction level item. For transaction level items and above, the value in this feld will be ‘N’. |
| formatId | No | String (1) | This feld will hold the format id that corresponds to the item’s variable UPC. This value is only used for items with variable UPCs. |
Table 5-449 (Cont.) ReferenceItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| prefx | No | Number(2,0) | This feld holds the prefx for variable weight UPCs. The prefx determines the format of the eventual UPC and will be used to decode variable weight UPCs that are uploaded from the POS. |
| itemNoType | No | String (6) | This feld holds code specifying what type the item is. Valid values for this feld are in the code type UPCT on the code_head and code_detail tables. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the |
| able 5-450 ItemBo Element Name | m - Object. See lis Required | t of elements for detail Data Type | date when the record was last updated. Description |
| componentItem packQuantity able 5-451 ItemTick Element Name | No No et - Object. See l Required | String (25) Number(12,4) ist of elements for detail Data Type | This feld specifes unique identifer for the component item. This feld specifes contains the quantity of each item in the pack item. Description |
| ticketOverPercentage | No | Number | |
| printOnPcInd | No | String | |
| ticketTypeId | No | String (4) | This feld uniquely identifes the ticket type which is associated with the item. |
| ticketTypeDescription | No | String (120) | This feld contains a description of the ticket or label type. |
Table 5-450 ItemBom - Object. See list of elements for detail
Table 5-451 ItemTicket - Object. See list of elements for detail
Table 5-451 (Cont.) ItemTicket - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| shelfEdgeLabelInd | No | String (1) | This feld contains a description of the ticket or label type. |
| poPrintType | No | String (1) | This feld indicates when the ticket type for the given item should be printed by default, upon the approval or receipt of the purchase order. Valid values are: A and R. |
| printOnPriceChangeIn d | No | String (1) | This feld indicates whether or not this type of ticket should be printed for this item when a permanent price change goes into effect. Valid values in this feld are:Y - Yes N - No. |
| ticketOverPrintPercent age | No | Number(12,4) | This feld contains a percent which indicates the amount of tickets which should be printed for a given event. If the event causing tickets to be printed is approving or receiving a purchase order, then this feld indicates the quantity of tickets which should be printed greater than the quantity of the purchase order. If the event causing the tickets to be printed is a permanent price change, this feld would indicate the quantity of tickets which should be printed greater than the stock on hand. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-451 (Cont.) ItemTicket - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| details | No | Collection of Object | This List holds attributes for the item ticket details. |
Table 5-452 ItemTicketDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| ticketItemId | No | String (4) | This feld contains a character string which uniquely identifes an attribute which will appear on a ticket or label such as retail price or price per unit of measure. |
| ticketItemIdDescriptio n | No | String (250) | This feld contains the description of the ticket_item_id. |
| udaId | No | Number(5,0) | This feld contains a number which uniquely defnes a user-defned attribute which is to be printed on this ticket type. |
| sequenceNo | No | Number(4,0) | This feld contains sequence number of item’s ticket record. |
Table 5-453 RelatedItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relationshipId | No | Number(20,0) | A system generated numeric feld that uniquely identifes the relationship record in related_item_head table. |
| relationshipName | No | String (255) | This feld holds user entered name of the relationshipe. |
| relationshipType | No | String (6) | This feld holds user entered name of the relationshipe. |
| mandatoryInd | No | String (1) | Indicates whether the relationship is mandatory or not. Valid values: ‘Y’ (yes), ‘N’ (no). |
Table 5-453 (Cont.) RelatedItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| translation | No | Collection of Object | This List holds translation attributes for the relationship. |
| details | No | Collection of Object | This List holds attributes for the related item details. |
Table 5-454 RelatedItemTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| languageCode | No | Number(6,0) | This feld contains the language in which the translated text is maintained |
| languageName | No | String (120) | This feld contains description of language code in which the translated text is maintained |
| isoCode | No | String (6) | This feld will hold the ISO code associated with the given language. |
| relationshipName | No | String (255) | This feld holds the translated value of the relationship name |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-455 RelatedItemDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relatedItem | No | String (25) | Item for which related items are defned. Valid transaction level/ sellable item. Multiple items can be defned for a relationship. |
Table 5-455 (Cont.) RelatedItemDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| priority | No | Number(4,0) | This feld indicates relationship priority. Applicable only for relationship type Substitute. |
| startDate | No | date | The related item can be used on transactions starting this date. |
| endDate | No | date | This feld related item can be used on transactions until this date. A value of null means that it is always effective. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime able 5-456 ItemH | No ts - Object. See lis | dateTime t of elements for detail | This feld holds the date when the record was last updated. |
| Element Name | Required | Data Type | Description |
| hts | No | String (25) | The unique identifer for the Harmonized Tariff Schedule code. |
| importCountry | No | String (3) | The unique identifer for the country that the item will be imported into. |
| originCountry | No | String (3) | The country where the item was manufactured or signifcantly altered. |
| effectFrom | No | date | The date from which the Item/HTS relationship is valid. This feld is used to maintain historical information related to the Item/HTS relationship. |
Table 5-456 ItemHts - Object. See list of elements for detail
Table 5-456 (Cont.) ItemHts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| effectTo | No | date | The date until when the Item/HTS relationship is valid. This feld is used to maintain historical information related to the item/HTS relationship. |
| clearingZoneId | No | String (5) | The concept of ’clearing zone’ represents a country’s zone-level point of entry of goods (for example, zones within the country where the goods are clearing customs). No locations or cost zones are associated to a clearing zone. This feld holds the Clearing Zone ID for the effective HTS code. Clearing zones are defned by import country. |
| status | No | String (1) | Used to indicate the status of the Item/HTS relationship. Valid values are (W)orksheet and (A)pproved. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
| assessments | No | Collection of Object | References a collection of assessments associated to the item HTS. |
Table 5-457 ItemHtsAssess - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentId | No | String (10) | The code representing the specifc assessment component. |
Table 5-457 (Cont.) ItemHtsAssess - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| computationValueBase | No | String (10) | The Computation Value Base representing the base value for calculating the assessment. |
| componentRate | No | Number(20,4) | The rate to be charged against the calculation base. This feld will hold a percentage value if the Calculation Basis of the Component is Value or a monetary amount if the Calculation Basis is Specifc. |
| perCount | No | Number(12,4) | A count indicating the amount of the Per Count Unit of Measure to which the rate applies. This column is only used for specifc (per-unit) assessments. |
| perCountUom | No | String (4) | The unit of measure in which the Per Count is specifed. This column is only used from specifc (per-unit) assessments. |
| estimatedAssessmentV alue | No | Number(26,10) | Contains the calculated value of the Component. |
| componentCurrency | No | String (3) | This feld contains component currency. |
Table 5-457 (Cont.) ItemHtsAssess - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nominationFlag1 | No | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
| inDuty | No | String (1) | If Import Management is enabled in Merchandising (i. e. system_options. import_ind = Y), the inDuty fag is used to indicate if the value of the cost component should be included in total duty. |
Table 5-457 (Cont.) ItemHtsAssess - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nominationFlag3 | No | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense | No | String (1) | The inExpense fag is used to indicate if the value of the cost component should be included in total expenses. |
Table 5-457 (Cont.) ItemHtsAssess - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inAlc | No | String (1) | The inALC fag is used for cost components where the retailer does not expect to receive an actual value for the charge via an obligation or customs entry. The inALC fag allows the value of the cost component to be included in ALC via direct nomination and indicates to the system that the estimated value on the order should be used as the actual value as well because no other actual will be provided. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the date when the record was last updated. |
Table 5-458 ItemExpense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | No | Number(10,0) | The unique identifer for the supplier. |
| countryOfSourcing | No | String (3) | The country where the item was manufactured or signifcantly altered. |
| ladingPort | No | String (5) | The fnal destination lading port of the item if the Expense Type is Country. |
| dischargePort | No | String (5) | The port where the item will enter the importing country. |
| costZoneGroupId | No | Number(4,0) | This feld holds the items Zone Group, it is stored here for performance reasons. |
| costZoneId | No | Number(10,0) | The fnal destination zone of the item if the Expense Type is Zone. |
Table 5-458 (Cont.) ItemExpense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| baseExpenseInd | No | String (1) | This feld indicates whether or not this Set of Expenses is also the base Set of Expenses. |
| componentId | No | String (10) | The code representing the specifc expense component. |
| computationValueBase | No | String (10) | The Computation Value Base representing the base value for calculating the expense. |
| componentRate | No | Number(20,4) | The rate to be charged against the calculation base. This feld will hold a percentage value if the Calculation basis of the Component is Value or a monetary amount if the Calculation Basis is Specifc. |
| perCount | No | Number(12,4) | A count indicating the amount of the Per Count Unit of Measure to which the rate applies. This column is only used for specifc (per-unit) expenses. |
| perCountUom | No | String (4) | The unit of measure in which the Per Count is specifed. This column is only used from specifc (per-unit) expenses. |
| estimatedExpenseValu e | No | Number(26,10) | This feld contains the calculated value of the Component. |
| componentCurrency | No | String (3) | This feld contains the currency the expense is to be entered in. If the Calculation Basis is V (Value), then the comp_currency will be NULL. |
Table 5-458 (Cont.) ItemExpense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nominationFlag1 | No | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
| inDuty | No | String (1) | If Import Management is enabled in Merchandising (i. e. system_options. import_ind = Y), the inDuty fag is used to indicate if the value of the cost component should be included in total duty. |
Table 5-458 (Cont.) ItemExpense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nominationFlag3 | No | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense | No | String (1) | The inExpense fag is used to indicate if the value of the cost component should be included in total expenses. |
Table 5-458 (Cont.) ItemExpense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inAlc | No | String (1) | The inALC fag is used for cost components where the retailer does not expect to receive an actual value for the charge via an obligation or customs entry. The inALC fag allows the value of the cost component to be included in ALC via direct nomination and indicates to the system that the estimated value on the order should be used as the actual value as well because no other actual will be provided. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
| updateDateTime | No | dateTime | This feld holds the |
| able 5-459 Requir Element Name | edDocuments - Obje Required | ct. See list of element Data Type | date when the record was last updated. s for detail Description |
| documentId able 5-460 ItemIm Element Name | No portAttr - Object. Se Required | Number(6,0) e list of elements for d Data Type | This feld contains documents of the items. etail Description |
| importDescription | No | String (2000) | This feld contains |
| description of the item used for importing purposes.. | |||
| commodity | No | String (6) | This feld contains the code used to classify the item by their type of merchandise. |
| tooling | No | Number(20,4) | This feld contains the cost associated with a given Tooling/Assist charge. |
Table 5-459 RequiredDocuments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| documentId | No | Number(6,0) | This feld contains documents of the items. |
Table 5-460 ItemImportAttr - Object. See list of elements for detail
Table 5-460 (Cont.) ItemImportAttr - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| frstOrderIndicator | No | String (1) | This feld contains indicator to determine if duty is to be paid on the total value of the tooling expense the frst time the item is shipped |
| amortizeBase | No | Number(12,4) | This feld contains the number of units over which the tooling/ assist cost will be amortized. |
| openBalance | No | Number(12,4) | This feld contains the open balance of the number of units yet to be received over which the tooling costs will be amortized. |
| createDateTime | No | dateTime | This feld holds the record creation date. |
Table 5-461 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"longtDescription": "String",
"item": "100100076",
"itemNumberType": "MANL",
"status": "A",
"itemLevel": 1,
"tranLevel": 1,
"itemDescription": "Regular Item 100100076",
"shortDescription": "100100076 Item",
"itemDescriptionUppercase": "100100076 ITEM REGULAR",
"itemDescriptionSecondary": "100100076 Item Regular",
"longDescription": null,
"itemParent": null,
"itemGrandparent": null,
"sellableInd": "Y",
"orderableInd": "Y",
"inventoryInd": "Y",
"packInd": "Y",
"simplePackInd": "N",
"containsInnerInd": "N",
"dept": 3041,
"deptName": null,
"class": 1.0,
"className": null,
"uniqueClassId": 1,
"subclass": 1,
"subclassName": null,
"uniqueSubclassId": 1,
"unitRetail": 1.0,
"variableUpcFormatId": null,
"variableWeightUpcPrefix": 1,
"diff1": null,
"diff1Type": null,
"diff2": null,
"diff2Type": null,
"diff3": null,
"diff3Type": null,
"diff4": null,
"diff4Type": null,
"costZoneGroupId": 1000,
"standardUom": "EA",
"uomConversionFactor": 3,
"packageSize": 1.0,
"packageUom": null,
"merchandiseInd": "Y",
"storeOrderMultiple": "E",
"forecastInd": null,
"manufacturerRecommendedRetail": 12.99,
"manufacturerRetailCurrencyCode": "USD",
"originalRetail": 12.99,
"originalRetailCurrencyCode": "USD",
"retailLabelType": null,
"retailLabelTypeDescription": null,
"retailLabelValue": 1.0,
"handlingTemperature": null,
"handlingTemperatureDescription": null,
"handlingSensitivity": null,
"handlingSensitivityDescription": null,
"catchWeightInd": "Y",
"catchWeightType": null,
"catchWeightUom": "EA",
"orderType": null,
"saleType": null,
"wasteType": null,
"wasteTypeDescription": null,
"averageWastePercentage": 1.0,
"defaultWastePercentage": 1.0,
"constantDimensionInd": "Y",
"packType": null,
"orderAsType": null,
"comments": null,
"itemServiceLevel": null,
"giftWrapInd": "Y",
"shipAloneInd": "Y",
"brandName": null,
"brandDescription": null,
"perishableInd": "Y",
"itemTransformInd": "N",
"depositItemType": null,
"containerItem": null,
"depositInPricePerUom": null,
"storePackInventoryInd": "Y",
"sohInquiryAtPackInd": "Y",
"purchaseType": null,
"productClassification": null,
"productClassificationDescription": null,
"itemAggregateInd": "Y",
"diff1AggregateInd": "Y",
"diff2AggregateInd": "Y",
"diff3AggregateInd": "Y",
"diff4AggregateInd": "Y",
"diff1Level": null,
"diff1Description": null,
"diff2Level": null,
"diff2Description": null,
"diff3Level": null,
"diff3Description": null,
"diff4Level": null,
"diff4Description": null,
"primaryImageUrl": null,
"transferAllocUpChargeSourceType": "D",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"itemTranslation": [
{
"languageCode": 2,
"languageName": null,
"isoCode": "en-US",
"itemDescription": "itemDesc",
"itemDescriptionSecondary": "itemDescSecondary",
"shortDescription": "shortDesc",
"longDescription": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"itemSupplier": [
{
"supplier": 2400,
"primarySupplierInd": "Y",
"vpn": null,
"supplierLabel": null,
"consignmentRate": 3,
"supplierDiff1": null,
"supplierDiff2": null,
"supplierDiff3": null,
"supplierDiff4": null,
"palletName": "PAL",
"caseName": "CS",
"innerName": "INR",
"supplierDiscontinueDate": "2001-12-31",
"directShipInd": "Y",
"primaryCaseSize": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"itemSupplierCountry": [
{
"originCountry": null,
"primarySupplierInd": null,
"primaryCountryInd": "Y",
"unitCost": 9.65,
"leadTime": 1,
"pickupLeadTime": 1,
"supplierPackSize": 1,
"innerPackSize": 1,
"roundLevel": "C",
"minimumOrderQuantity": 1.0,
"maximumOrderQuantity": 1,
"packingMethod": "HANG",
"defaultUop": null,
"ti": 1,
"hi": 1,
"costUom": "EA",
"toleranceType": null,
"maximumTolerance": 1.0,
"minimumTolerance": 1.0,
"roundToInnerPercentage": 50,
"roundToCasePercentage": 50,
"roundToLayerPercentage": 50,
"roundToPalletPercentage": 50,
"supplierHierarchyType1": null,
"supplierHierarchyLevel1": null,
"supplierHierarchyType2": null,
"supplierHierarchyLevel2": null,
"supplierHierarchyType3": null,
"supplierHierarchyLevel3": null,
"negotiatedItemCost": 1.0,
"extendedBaseCost": 1.0,
"inclusiveCost": 1.0,
"baseCost": 1.0,
"purchaseType": 0,
"calculationBasis": null,
"purchaseRate": 1.0,
"pricingControl": "R",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"itemSupplierCountryDimension": [
{
"dimensionObject": null,
"dimensionObjectDescription": null,
"presentationMethod": null,
"presentationMethodDescription": null,
"length": 1.0,
"width": 1.0,
"height": 1.0,
"lwhUom": null,
"weight": 1.0,
"netWeight": 1.0,
"weightUom": null,
"liquidVolume": 1.0,
"liquidVolumeUom": null,
"statisticalCase": 1.0,
"tareWeight": 1.0,
"tareType": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"itemSupplierCountryOfManufacture": [
{
"countryId": "BR",
"primaryInd": "N",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"itemSupplierUom": [
{
"uom": null,
"value": 1.0,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"translation": [
{
"languageCode": 2,
"languageName": null,
"isoCode": "en-US",
"supplierDiff1": null,
"supplierDiff2": null,
"supplierDiff3": null,
"supplierDiff4": null,
"supplierLabel": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"itemUda": {
"udaLov": [
{
"udaId": 1,
"udaDescription": null,
"udaValue": 1,
"udaValueDescription": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"udaFreeform": [
{
"udaId": 1,
"udaDescription": null,
"udaText": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"translation": [
{
"languageCode": 2,
"languageName": null,
"isoCode": "en-US",
"udaTextDesc": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"udaDate": [
{
"udaId": 1,
"udaDescription": null,
"udaDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
},
"itemImage": [
{
"imageName": "imageName1",
"imageAddress": "http://www.oracle.com/",
"imageType": "T",
"primaryImageInd": "Y",
"displayPriority": 1,
"imageDescription": "imageDesc1",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"translation": [
{
"languageCode": 2,
"languageName": null,
"isoCode": "en-US",
"imageDescription": "Item Image",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"itemSeason": [
{
"seasonId": 1,
"phaseId": 1,
"sequenceNo": 1,
"diffId": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"referenceItem": [
{
"referenceItem": null,
"primaryInd": "N",
"formatId": null,
"prefix": 1,
"itemNoType": "MANL",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"itemBOM": [
{
"componentItem": null,
"packQuantity": 1.0
}
],
"itemTicket": [
{
"ticketOverPercentage": 1.0,
"printOnPcInd": "String",
"ticketTypeId": null,
"ticketTypeDescription": null,
"shelfEdgeLabelInd": null,
"poPrintType": null,
"printOnPriceChangeInd": "Y",
"ticketOverPrintPercentage": 3,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"details": [
{
"ticketItemId": null,
"ticketItemIdDescription": null,
"udaId": 1,
"sequenceNo": 1
}
]
}
],
"relatedItem": [
{
"relationshipId": 1,
"relationshipName": null,
"relationshipType": null,
"mandatoryInd": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"translation": [
{
"languageCode": 2,
"languageName": null,
"isoCode": "en-US",
"relationshipName": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"details": [
{
"relatedItem": null,
"priority": 1,
"startDate": "2001-12-31",
"endDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"hts": [
{
"hts": null,
"importCountry": "US",
"originCountry": "US",
"effectFrom": "2001-12-31",
"effectTo": "2001-12-31",
"clearingZoneId": null,
"status": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"assessments": [
{
"componentId": null,
"computationValueBase": null,
"componentRate": 1.0,
"perCount": 1.0,
"perCountUom": null,
"estimatedAssessmentValue": 1.0,
"componentCurrency": null,
"nominationFlag1": null,
"inDuty": null,
"nominationFlag3": null,
"inExpense": null,
"inAlc": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"expense": [
{
"supplier": 2400,
"countryOfSourcing": "US",
"ladingPort": "7",
"dischargePort": "480",
"costZoneGroupId": 1,
"costZoneId": 1,
"baseExpenseInd": "N",
"componentId": "AGCOMM",
"computationValueBase": "TDTYUS",
"componentRate": 3.55,
"perCount": 3,
"perCountUom": "EA",
"estimatedExpenseValue": 1.0,
"componentCurrency": "USD",
"nominationFlag1": null,
"inDuty": null,
"nominationFlag3": null,
"inExpense": null,
"inAlc": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"requiredDocuments": [
{
"documentId": 1
}
],
"itemImportAttributes": [
{
"importDescription": "import desc",
"commodity": "A123",
"tooling": 12,
"firstOrderIndicator": "Y",
"amortizeBase": 12.4568,
"openBalance": 12.4568,
"createDateTime": "2001-12-31T23:59:59.000Z"
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| ITEM_MASTER_CFA_EXT | Yes | No | No | No |
| ITEM_SUPPLIER_CFA_EXT | Yes | No | No | No |
| ITEM_SUPP_COUNTRY_CFA_EXT | Yes | No | No | No |
| ITEM_SUPP_COUNTRY_LOC_CFA_EXT | Yes | No | No | No |
| MERCHAPI_EXT_ITEM | Yes | Yes | Yes | Yes |
| V_MERCHAPI_EXT_ITEM_JSON | Yes | No | No | No |
| ICL_RMS_ITEM_MASTER | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_SUPPLIER | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_SUPP_UOM | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_SUPP_CTRY | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_SUPP_CTRY_DIM | Yes | No | Yes | Yes |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ICL_RMS_ITEM_SUPP_MANU_CTRY | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_TICKET | Yes | No | Yes | Yes |
| ICL_RMS_UDA_ITEM_DATE | Yes | No | Yes | Yes |
| ICL_RMS_UDA_ITEM_LOV | Yes | No | Yes | Yes |
| ICL_RMS_UDA_ITEM_FF | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_IMAGE | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_SEASONS | Yes | No | Yes | Yes |
| ICL_RMS_RELATED_ITEM | No | Yes | No | No |
| ICL_RMS_ITEM_HTS | Yes | No | Yes | Yes |
| ICL_RMS_ITEM_EXP | Yes | No | Yes | Yes |
Get Item Location Details
Endpoints
MerchIntegrations/services/foundation/item/location
Functional Area
Items - Item Definition
Business Overview
This service publishes item/location relationships to downstream consuming systems. It covers item/location combinations whose source view still resolves to a store, warehouse, or external finisher and whose item is currently in status A or D. The payload carries the location-specific selling, sourcing, replenishment, VAT, substitute-item, and custom-flex details that downstream commerce and inventory integrations use to interpret item behavior at a location.
This API follows a broader merged-cache pattern than the simpler single-entity publish services. The external foundation/item/location endpoint shares its cache and runtime configuration with foundation/omnichannel/item/itemlocation, and the GET-all query switches between the delta and full access paths based on whether the requested window is 30 days or less or greater than 30 days.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: ITEM_LOC, ITEM_LOC_TRAITS, REPL_ITEM_LOC, SUB_ITEMS_HEAD, SUB_ITEMS_DETAIL
Additional business tables: ITEM_MASTER, ITEM_SUPP_COUNTRY, ITEM_SUPP_COUNTRY_LOC, VAT_ITEM, RELATED_ITEM_HEAD, SYSTEM_OPTIONS, UOM_CLASS, STORE, WH, PARTNER, ITEM_LOC_CFA_EXT
JSON cache table: MERCHAPI_ITEM_LOC
JSON generation view: V_MERCHAPI_ITEM_LOC_JSON
Builds the payload from ITEM_LOC, optional traits from ITEM_LOC_TRAITS, replenishment attributes from REPL_ITEM_LOC, item hierarchy and search attributes from ITEM_MASTER, supplier/country and location cost fields from ITEM_SUPP_COUNTRY and ITEM_SUPP_COUNTRY_LOC, custom flex attributes from MERCHAPI_EXT_ITEM_LOC_CFA, VAT data from VAT_ITEM, related-item flags from RELATED_ITEM_HEAD, and location enrichment from a loc CTE over STORE, WH, and PARTNER where PARTNER_TYPE = ‘E’.
The source view is limited to item/location combinations whose item is currently in status A or D and whose location resolves to a store, warehouse, or external finisher.
The published payload carries the location-specific selling, sourcing, replenishment, VAT, substitute-item, and custom-flex details that downstream commerce and inventory integrations use to interpret item behavior at a location.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_ITEM_LOC_JSON and apply ITEM_MASTER.STATUS IN (‘A’,‘D’); loc includes stores, warehouses, and partners with PARTNER.PARTNER_TYPE = ‘E’.
Rebuild marks cache rows deleted when the item/location no longer exists in V_MERCHAPI_ITEM_LOC_JSON.
ICL (Integration Change Log) table: ICL_RMS_ITEM_LOC, ICL_RMS_REPL_ITEM_LOC (ICL consumer name = MERCHAPI_2)
ICL_RMS_ITEM_LOC is fed by triggers on ITEM_LOC, ITEM_LOC_TRAITS, ITEM_LOC_CFA_EXT, SUB_ITEMS_HEAD, SUB_ITEMS_DETAIL, and ownership-publish updates through OWNERSHIP_PUB_GTT.
ICL_RMS_REPL_ITEM_LOC rows are staged from REPL_ITEM_LOC and are republished as updates to the parent item-location payload.
Item Approval Handling
On item approval, the main item publish flow writes existing store and warehouse ITEM_LOC rows to ICL_RMS_ITEM_LOC so this API is also queued once the parent item becomes approved. ITEM_LOC rows are not backfilled through this path while the item remains in worksheet or submitted status.
Batch-driven bulk rebuild handling for specific events
Store VAT region change and warehouse VAT region change do not rely only on ICL staging. Those source events insert a record into MERCHAPI_ASYNC_REQUEST with REQUEST_TYPE = DATA_REFRESH, REFRESH_TYPE = REBUILD, and REQUEST_PARAMETERS set to the affected location so the rebuild stays scoped to that store or warehouse.
Tomorrow-effective VAT rate activation through VAT code-rate maintenance using batch job VATDLXPL and its prepost (post) can also insert a record into MERCHAPI_ASYNC_REQUEST with REQUEST_TYPE = DATA_REFRESH and REFRESH_TYPE = REBUILD when the VAT change can affect a broad item/location population. This broader rebuild path is handled through the Vat Rate Change Explode (VATDLXPL) flow as part of prepost.pc. Smaller tomorrow-effective item VAT changes are handled through targeted item/location delta staging instead of the broader rebuild path.
These requests are processed through MERCHAPI_DATA_REBUILD_ADHOC_PROCESS → MERCHAPI_DATA_REBUILD_ADHOC_JOB and refresh the shared MERCHAPI_ITEM_LOC cache used by foundation/item/location and foundation/omnichannel/item/itemlocation.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_OMNI_ITEM_LOC
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_OMNI_ITEM_LOC_ADHOC_PROCESS → MERCHAPI_OMNI_ITEM_LOC_ADHOC_JOB
Webhook configuration api name: foundation/item/location
Special handling
Additional GET query parameters: item, locationType, location, itemLocationStatus, purchaseType, tranLevelInd, itemNumberType, departmentId, classId, subclassId, inventoried, sellable, orderable, changeType.
The filters itemLocationStatus, purchaseType, tranLevelInd, itemNumberType, departmentId, classId, subclassId, inventoried, sellable, and orderable are not backed by dedicated cachetable indexes. At high volume, use them only as additional criteria on top of a small-window delta fetch and not for full downloads.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime characteristics and should be evaluated separately. Because this service builds a merged item-location cache from multiple base and supporting tables, the available configuration should be validated against the customer production item-location profile, with the key performance-related configuration for this service covering the following:
Multi-threading and commit control
This service supports multi-threaded execution for both initial seeding and delta processing. Thread count is controlled through API_NO_OF_THREADS, and commit sizing is controlled through API_COMMIT_MAX_COUNTER.
Thread and commit settings should be chosen together based on expected row volume, average message size, and the complex SQL query required to build the shared item-location cache from multiple base and supporting tables. Common starting points for large-volume (multi-millions) runs are 16 or 32 threads. Values of 48 or 64 threads should be considered only after testing and with awareness of competing workload in the environment.
API_COMMIT_MAX_COUNTER should be sized together with the thread setting. Typical values range from about 1,000 rows to 10,000.
For delta processing, the same parameters apply. It is advisable to reduce the thread values to 2 or 4 after the seeding is complete.
Dropping indexes and constraints during seeding
This option applies only to initial seeding, including truncate-and-load execution. When thread and commit settings are high, concurrent inserts can increase index maintenance overhead and slow the load.
To reduce that overhead, DROP_INDEX_ON_REFRESH can be enabled so indexes and constraints are dropped before seeding and rebuilt after the load completes. GATHER_STATS_ON_REFRESH should normally remain enabled unless testing shows a specific reason to change it.
REST fetch considerations
Item-location payloads can be comparatively large, so REST page size should be selected based on average message size so the average response remains below about 10 MB per call. Common page-limit values between 1,000 or 10,000 rows can be used.
For full downloads, do not provide the since query parameter so the database can favor the primary-key access path. For delta downloads, use a small time window, typically a few minutes and at most a few hours, so the eligible row set on the LAST_UPDATE_DATETIME index remains small.
Wider delta windows, especially multi-day windows that can arise during outages or data recovery, generally do not perform well. For such scenarios, keeping BUILD_HISTOGRAM enabled allows the service to support recovery through smaller, more selective polling windows using the optimalBefore query parameter.
In this catch-up pattern, for requests up to 30 days in the past, the client provides optimalBefore and leaves before empty. The client then uses the returned before timestamp to continue polling incrementally until the backlog is cleared, and then resumes the normal shortwindow delta pattern. Hourly histogram processing groups LAST_UPDATE_DATETIME values into buckets of 100,000 rows in MERCHAPI_TIMESTAMP_HISTOGRAM using API specific HISTOGRAM_ROW_COUNT configuration.
Handling Bulk Publish on VAT Rate change event or Store/Warehouse attribute change
This API also uses batch-driven REBUILD handling for store or warehouse VAT-region changes and broader VAT rate events that can materially increase the publish population.
Because the VAT effect must be recalculated for all affected items at affected locations, those changes can expand into a much larger item/location republish set.
A larger VAT code-rate change can result in a very large number of records being published to downstream systems and should be planned with the downstream performance implication of that message volume in mind.
Full-refresh workload balancing and monitoring
This API uses a different full-refresh balancing pattern than the simpler fixed-thread publish services because item/location volume is not evenly distributed by location. A smaller store can contribute only a limited number of rows while a larger store or warehouse can contribute millions, so the refresh balances work by item/location workload rather than by location number alone.
As processing continues, MERCHAPI_BOOKMARK can show newly active entries for individual locations created from that workload balancing while earlier entries complete, and the rebuild remains in progress as long as at least one MERCHAPI_BOOKMARK row is still active.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/item/location
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| item | No | String | Item |
| locationType | No | String | Location Type - STORE, WAREHOUSE or EXTERNAL_FINISHER |
| location | No | String (10) | Location |
| itemLocationStatus | No | String | Item Location Status - A, I, C or D |
| purchaseType | No | String | Purchase Type - 0, 1 or 2 |
| tranLevelInd | No | String | Transaction Level Indicator - Y or N |
| itemNumberType | No | String | Item Type |
| departmentId | No | String (4) | Department |
| classId | No | String (4) | Class |
| subclassId | No | String (4) | Subclass |
| inventoried | No | String | Inventoried - Y or N |
| sellable | No | String | Sellable - Y or N |
| orderable | No | String | Orderable - Y or N |
| offsetkey | No | String | Offset key ([location type],[location],[item] Example: S,120091,Item-35) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| changeType | No | String | Filter records that were created or deleted within since/ before time range. Valid values create or delete |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-462 PageResultsItemsMerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-463 MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for item- location details. |
| item | No | String (25) | This feld specifes the unique alphanumeric value that identifes the item. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemLevel | No | Number(1,0) | This feld specifes Number indicating which of the three levels the item resides. The item level determines if the item stands alone or if it is part of a family of related items. The item level also determines how the item may be used throughout the system. |
| tranLevel | No | Number(1,0) | This feld specifes Number indicating which of the three levels transactions occur for the item’s group. The transaction level is the level at which the item’s inventory is tracked in the system. The transaction level item will be counted, transferred, shipped, etc. The transaction level may be at the current item or up to 2 levels above or below the current item. Only one level of the hierarchy of an item family may contain transaction level items. |
| location | No | Number(10,0) | This feld contains the numeric identifer of the location in which the item is to be found. This feld may contain a store, warehouse, or external fnisher. |
| locationType | No | String (1) | This feld contains the type of location in which the item is to be found. Valid values are Store (S), Warehouse (W), and External Finisher (E). |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | No | String (1) | Current status of item at the store or warehouse. Valid values are: A = Active, item is valid and can be ordered and sold; I = Inactive, item is valid but cannot be ordered or sold; C = Discontinued, item is valid and sellable but no longer orderable; D = Delete, item is invalid and cannot be ordered or sold. |
| physicalWarehouse | No | Number(10,0) | This feld contains the numeric identifer of the physical warehouse in which the item is to be found. |
| storeType | No | String (6) | This feld indicates whether a particular store is a franchise or company store. |
| stockholdingInd | No | String (1) | This feld indicates whether or not the location can hold stock. |
| localItemDescription | No | String (250) | This feld specifes selling local description of the item. This feld will default to the item’s description but will be over-ridable. This value will be downloaded to the POS. |
| localShortDescription | No | String (120) | Contains the local short description of the item. This feld will default to the item’s short description but will be over-ridable. This value will be downloaded to the POS. |
| primarySupplier | No | Number(10,0) | This feld contains the primary supplier of the item at the location. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryCountry | No | String (3) | This feld contains the primary country of the item at the location. |
| unitCost | No | Number(20,4) | This feld is the current unit cost of the item for the item/ supplier/ origin_country combination. This feld is stored in the supplier’s currency. |
| costUom | No | String (4) | A cost UOM is held to allow costs to be managed in a separate UOM than the standard UOM. |
| purchaseType | No | Number(1,0) | This feld contains a code to indicate whether the item is normal merchandise (i.e. owned by the retailer), consignment stock, or a concession item. Valid values are 0 - Owned, 1 - Consignment, 2 - Concession. |
| calculationBasis | No | String (1) | This feld indicates if the cost for the consignment/ concession item will be managed either based on cost per unit or as a percentage of retail. Valid values are C - Cost per Unit, P - Purchase Rate. |
| purchaseRate | No | Number(12,4) | This column contains the percentage of the retail price which will determine the cost paid to the supplier for a consignment or concession item. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| pricingControl | No | String (1) | This feld contains the pricing control of the item which will determine whether the item price is controlled by the retailer or supplier. Valid values are R - Managed by Retailer, S - Managed by Supplier, NULL - For Owned Items. |
| receiveAsType | No | String (1) | This column determines whether the stock on hand for a pack component item or the pack itself will be updated when a pack is received at a warehouse. Valid values are Each (E) or Pack (P). This value is required for all pack items where the location type is Warehouse (W). For vendor packs, this must be set to Pack (P); for buyer packs, it can be either Each (E) or Pack (P). |
| taxableInd | No | String (1) | This feld indicates whether or not the item is taxable at the store. Valid values are: Y = Yes, the item is taxable; N = No, the item is not taxable. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| sourceMethod | No | String (1) | This feld will be used to specify how the ad- hoc PO/TSF creation process should source the item/location request. If the value is Warehouse, the process will attempt to fll the request by creating a transfer from the warehouse mentioned in the source_wh feld. If this warehouse does not have enough inventory to fll the request, a purchase order will be created for the item/location’s primary supplier. For warehouses, it is used by Oracle Retail Allocation to determine the valid sources and destinations for warehouse-to- warehouse allocations. |
| sourceWarehouse | No | Number(10,0) | This feld will be used by the ad-hoc PO/ Transfer creation process to determine which warehouse to fll the store’s request from. It will also be used by the Allocation process to support warehouse-to- warehouse allocations. A value will be required in this feld if the sourcing method is Warehouse. |
| unitRetail | No | Number(20,4) | This feld contains the unit retail price in the standard unit of measure for the item/ location combination. This feld is stored in the local currency. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| sellingUnitRetail | No | Number(20,4) | This feld contains the unit retail price in the selling unit of measure for the item/location combination. This feld is stored in the local currency. |
| sellingUom | No | String (4) | This feld contains the selling unit of measure for an item’s single- unit retail. |
| storePriceInd | No | String (1) | This feld indicates if an item at a particular store location can have the unit retail marked down by the store. |
| uinType | No | String (6) | This feld contains the unique identifcation number (UIN) used to identify the instances of the item at the location. |
| uinLabel | No | String (6) | This feld contains the label for the UIN when displayed in the store system. |
| captureTime | No | String (6) | This feld indicates when the UIN should be captured for an item during transaction processing. |
| externalUinInd | No | String (1) | This Yes/No indicator indicates if UIN is being generated in the external system. |
| rangedInd | No | String (1) | This feld determines if the location is ranged intentionally by the user for replenishment/selling or incidentally ranged by the Merchandising programs when the item is not ranged to a specifc location on the transaction. |
| itemParent | No | String (25) | This feld contains the alphanumeric value that uniquely identifes the item/ group at the level above the item. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemGrandparent | No | String (25) | This feld contains the alphanumeric value that uniquely identifes the item/ group two levels above the item. |
| ti | No | Number(12,4) | This feld contains the number of shipping units (cases) that make up one tier of a pallet. Multiply TI x HI to get the total number of cases for a pallet. |
| hi | No | Number(12,4) | This feld contains the number of tiers that make up a complete pallet (height). Multiply TI x HI to get the total number of cases for a pallet. |
| storeOrderMultiple | No | String (1) | This feld contains the multiple in which the item needs to be shipped from a warehouse to the location. |
| dailyWastePercent | No | Number(12,4) | This feld contains the average percentage lost from inventory on a daily basis due to natural wastage. |
| measureOfEach | No | Number(12,4) | This feld contains the size of an each in terms of the uom_of_price. For example, 12 oz. Used in ticketing. |
| measureOfPrice | No | Number(12,4) | This feld contains the size to be used on the ticket in terms of the uom_of_price. For example, if the user wants the ticket to have the label print the price per ounce, this value would be 1. If the user wanted the price per 100 grams, this value would be 100. This is used in ticketing. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| uomOfPrice | No | String (4) | This feld contains the unit of measure that will be used on the ticket for this item. |
| primaryVariant | No | String (25) | This feld is used to address sales of PLUs (i.e. above transaction level items) when inventory is tracked at a lower level (i.e. UPC). This feld will only contain a value for items one level higher than the transaction level. Valid choices will be any transaction-level item that is a child of this item. In order to select a transaction-level item as the primary variant, the item/ location relationship must exist at the transaction level. Both the transaction-level item (i.e. UPC) and the higher-than- transaction-level item (i.e. PLU) will be sent to the POS to allow the store to sell the PLU. The information sent for the PLU will be the same information sent for the transaction- level item (i.e. UPC). |
| primaryCostPack | No | String (25) | This feld contains an item number that is a simple pack containing the item in the item column for this record. If populated, the cost of the future cost table will be driven from the simple pack and the deals and cost changes for the simple pack. |
| inboundHandlingDays | No | Number(2,0) | This feld indicates the number of inbound handling days for an item at a warehouse type location. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| regularUnitRetail | No | Number(20,4) | This feld holds the unit retail in the standard unit of measure for the item/ location (zone) combination. This feld is stored in the local currency. |
| multiUnits | No | Number(12,4) | This feld contains the multi-units for the item/location (zone) combination. |
| multiUnitRetail | No | Number(20,4) | This feld holds the multi-unit retail in the multi-selling unit of measure for the item/ location (zone) combination. This feld is stored in the local currency. |
| multiSellingUom | No | String (4) | This feld holds the selling unit of measure for this item/location (zone) combination’s multi-unit retail. |
| clearanceInd | No | String (1) | Indicates if item is on clearance at the store. Valid values are: Y = Yes, the item is on clearance; N = No, the item is not on clearance. |
| costingLocation | No | Number(10,0) | This feld contains the identifer of the costing location for the franchise store. This feld may contain a store or a warehouse. |
| costingLocationType | No | String (1) | This feld holds the type of costing location in the costing location feld. |
| currencyCode | No | String (3) | This feld contains the currency code under which the location operates. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| pickupLeadTime | No | Number(4,0) | This feld contains the time it takes to get the item from the Supplier to the Initial Receiving Location. This value will be defaulted to the item_supp_country_loc pickup lead time feld. The ordering dialog will reference the item/supplier/country/ location pickup lead time as the value may vary by location. |
| rfdInd | No | String (1) | This feld allows the retailer to specify if the item should be RFID tagged or not. |
| primaryReplenishmen tSupplier | No | Number(10,0) | This feld contains the numeric identifer of the supplier from which the specifed location will source the replenishment demand for the specifed item location. Used for items on Direct to Store/ Warehouse or Cross- docked replenishment. |
| replenishmentMethod | No | String (6) | This feld contains the character code for the algorithm that will be used to calculate the recommended order quantity for the item location. Valid values include Constant, Min/ Max, Floating point, Time Supply, Dynamic, SO Store Orders. |
| rejectStoreOrderInd | No | String (1) | This feld contains an indicator that determines if uploaded store orders should be rejected. If the indicator is N, then store orders for all need dates are valid. If Y, store orders with needs date on or after the NEXT_DELIVERY_DAT E are valid. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nextDeliveryDate | No | date | This feld contains the next delivery date calculated for the next review cycle. If, for the next review cycle, an order will be created that is calculated to arrive on Thursday, this feld will be updated with Thursday’s date. |
| multipleReplenishmen tsPerDayInd | No | String (1) | This feld indicates if an item can be replenished multiple times per day at the location. Default value is N. |
| launchDate | No | date | This feld holds the date that the item should frst be sold at the location. This value will be downloaded to the POS. |
| quantityKeyOptions | No | String (6) | This feld determines whether the qty key on a POS should be used for this item at the location. Valid values are in the code_type RPO. Current values include R - required, P - Prohibited, and O - Optional. Additional values can be added to the code type as needed. This value will be downloaded to the POS as needed. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| manualPriceEntry | No | String (6) | Determines whether the price can/should be entered manually on a POS for this item at the location. Valid values are in the code_type RPO. Current values include R - required, P - Prohibited, and O - Optional. Additional values can be added or removed as needed. This value will be downloaded to the POS. |
| depositCode | No | String (6) | This feld indicates whether a deposit is associated with this item at the location. Valid values are in the code_type DEPO. Additional values may be added or removed as needed. The only processing in Merchandising involving the deposit code is downloading it to the POS. Deposits are not subtracted from the retail of an item uploaded to Merchandising, etc. This kind of processing is the responsibility of the client and should occur before sales are sent to any Oracle Retail application. |
| foodStampInd | No | String (1) | This feld indicates whether the item is approved for food stamps at the location. This value will be downloaded to the POS. |
| wicInd | No | String (1) | This feld indicates whether the item is approved for WIC at the location. This value will be downloaded to the POS. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| proportionalTarePerce nt | No | Number(12,4) | This feld holds the value associated with the packaging in items sold by weight at the location. The proportional tare is the proportion of the total weight of a unit of an item that is packaging (i.e. if the tare item is bulk candy, this is the proportion of the total weight of one piece of candy that is the candy wrapper). The only processing Merchandising does involving the proportional tare percent is downloading it to the POS. Proportional tare is not subtracted from items sold by weight when sales are uploaded to Merchandising, etc. This kind of processing is the responsibility of the client and should occur before sales are sent to any Oracle Retail application. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fxedTareValue | No | Number(12,4) | This feld holds the value associated with the packaging in items sold by weight at the location. Fixed tare is the tare of the packaging used (i.e. if the tare item is bulk candy, this is the weight of the bag and twist tie). The only processing Merchandising does involving the fxed tare value is downloading it to the POS. Fixed tare is not subtracted from items sold by weight when sales are uploaded to Merchandising, etc. This kind of processing is the responsibility of the client and should occur before sales are sent to any Oracle Retail application. |
| fxedTareUom | No | String (4) | This feld holds the unit of measure value associated with the tare value. The only processing Merchandising does involving the fxed tare value and UOM is downloading it to the POS. Fixed tare is not subtracted from items sold by weight when sales are uploaded to Merchandising, etc. This kind of processing is the responsibility of the client and should occur before sales are sent to any Oracle Retail application. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| rewardEligibleInd | No | String (1) | This feld holds whether the item is legally valid for various types of bonus point/award programs at the location. This value will be downloaded to the POS. |
| nationalBrandCompeti torItem | No | String (25) | This feld holds the nationally branded item to which you would like to compare the current item. This nationally branded item must exist as an item in Merchandising (i.e. on the item_master table). |
| returnPolicy | No | String (6) | This feld contains the return policy for the item at the location. |
| stopSaleInd | No | String (1) | This feld indicates that sale of the item should be stopped immediately at the location (i.e. in case of recall etc). This value will be downloaded to the POS. |
| electronicMarketClubs | No | String (6) | This feld holds the code that represents the marketing clubs to which the item belongs at the location. Valid values can belong to the code_type MTKC. Additional values can be added or removed from the code type as needed. This value will be downloaded to the POS. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| reportCode | No | String (6) | This feld contains the code to determine which reports the location should run. Valid values are defned in the code type REPC. Values may be added and removed as necessary. This feld is not required. No Merchandising processing is based on the value in this feld. It is the client’s responsibility to communicate this value to external systems that may need it for processing. |
| requiredShelfLifeOnSe lection | No | Number(4,0) | This feld holds the required shelf life for an item on selection in days. This feld is not required. No Merchandising processing is based on the value in this feld. It is the client’s responsibility to communicate this value to external systems that may need it for processing. |
| requiredShelfLifeOnRe ceipt | No | Number(4,0) | This feld holds the required shelf life for an item on receipt in days. This feld is not required. No Merchandising processing is based on the value in this feld. It is the client’s responsibility to communicate this value to external systems that may need it for processing. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| storeReorderableInd | No | String (1) | This feld indicates whether the store may re-order the item. This feld is required to be either Y - yes or N - no. The feld will default to N. No Merchandising processing is based on the value in this feld. It is the client’s responsibility to communicate this value to external systems that may need it for processing. |
| rackSize | No | String (6) | This feld indicates the rack size that should be used for the item. This feld is not required. Valid values for the feld can be found and defned in the code_type RACK. No Merchandising processing is based on the value in this feld. It is the client’s responsibility to communicate this value to external systems that may need it for processing. |
| fullPalletItem | No | String (1) | This feld indicates whether a store must reorder an item in full pallets only. This feld is required to be either Y - yes or N - no. The feld will default to N. No Merchandising processing is based on the value in this feld. It is the client’s responsibility to communicate this value to external systems that may need it for processing. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inStoreMarketBasket | No | String (6) | This feld holds the in store market basket code for this item/ location combination. Valid values for the feld can be found in the code_type STMB. No Merchandising processing is based on the value in this feld. It is the client’s responsibility to communicate this value to external systems that may need it for processing. |
| storageLocation | No | String (7) | This feld holds the current storage location or bin number for the item at the location. No Merchandising processing is based on the value in this feld. It is the client’s responsibility to communicate this value to external systems that may need it for processing. |
| alternateStorageLocati on | No | String (7) | This feld holds the preferred alternate storage location or bin number for the item at the location. No Merchandising processing is based on the value in this feld. It is the client’s responsibility to communicate this value to external systems that may need it for processing. |
| returnableInd | No | String (1) | This feld contains a value of Yes when the item can be returned to the location. |
| refundableInd | No | String (1) | This feld contains a value of Yes when the item is refundable at the location. |
Table 5-463 (Cont.) MerchApiItemLoc - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| backOrderInd | No | String (1) | This feld contains a value of Yes when the item can be back ordered to the location. |
| promotableInd | No | String (1) | This attribute, which has valid values of Y or N, determines whether or not the item can be promoted. This fag will be sent to the selling solutions (e.g. POS, OMS) to help their pricing engines know whether or not to include this item location in the items eligible for a specifc promotion. This new attribute is intended to be used for item- location combinations that are never promoted so that users setting up promotions do not need to specify them as exclusions on the promotion. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the item-location. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the item-location record was last maintained. |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication. |
Table 5-464 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-465 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"item": "100100076",
"itemLevel": 1,
"tranLevel": 1,
"location": 1,
"locationType": null,
"status": null,
"physicalWarehouse": 1,
"storeType": null,
"stockholdingInd": null,
"localItemDescription": "localItemDesc",
"localShortDescription": "localShortDesc",
"primarySupplier": 2400,
"primaryCountry": null,
"unitCost": 9.65,
"costUom": "EA",
"purchaseType": 1,
"calculationBasis": null,
"purchaseRate": 3,
"pricingControl": "R",
"receiveAsType": null,
"taxableInd": "Y",
"sourceMethod": null,
"sourceWarehouse": 1,
"unitRetail": 1.0,
"sellingUnitRetail": 1.0,
"sellingUom": null,
"storePriceInd": null,
"uinType": null,
"uinLabel": null,
"captureTime": null,
"externalUinInd": "Y",
"rangedInd": "Y",
"itemParent": null,
"itemGrandparent": null,
"ti": 3,
"hi": 3,
"storeOrderMultiple": null,
"dailyWastePercent": 3,
"measureOfEach": 2,
"measureOfPrice": 1,
"uomOfPrice": "EA",
"primaryVariant": "100100090",
"primaryCostPack": "100100080",
"inboundHandlingDays": 1,
"regularUnitRetail": 1.0,
"multiUnits": 1.0,
"multiUnitRetail": 1.0,
"multiSellingUom": null,
"clearanceInd": null,
"costingLocation": 199,
"costingLocationType": null,
"currencyCode": null,
"pickupLeadTime": 1,
"rfidInd": "Y",
"primaryReplenishmentSupplier": 1,
"replenishmentMethod": null,
"rejectStoreOrderInd": null,
"nextDeliveryDate": "2001-12-31",
"multipleReplenishmentsPerDayInd": null,
"launchDate": "2001-12-31",
"quantityKeyOptions": null,
"manualPriceEntry": null,
"depositCode": null,
"foodStampInd": "Y",
"wicInd": "Y",
"proportionalTarePercent": 3,
"fixedTareValue": 3,
"fixedTareUom": "EA",
"rewardEligibleInd": "Y",
"nationalBrandCompetitorItem": null,
"returnPolicy": null,
"stopSaleInd": "Y",
"electronicMarketClubs": null,
"reportCode": null,
"requiredShelfLifeOnSelection": 1,
"requiredShelfLifeOnReceipt": 1,
"storeReorderableInd": "Y",
"rackSize": null,
"fullPalletItem": null,
"inStoreMarketBasket": null,
"storageLocation": null,
"alternateStorageLocation": null,
"returnableInd": "Y",
"refundableInd": "Y",
"backOrderInd": "Y",
"promotableInd": "Y",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| ITEM_LOC_TRAITS | Yes | No | No | No |
| ITEM_SUPP_COUNTRY_LOC | Yes | No | No | No |
| REPL_ITEM_LOC | Yes | No | No | No |
| MERCHAPI_ITEM_LOC | Yes | Yes | Yes | Yes |
| V_MERCHAPI_ITEM_LOC_JSON | Yes | No | No | No |
| ICL_RMS_ITEM_LOC | Yes | No | Yes | Yes |
| ICL_RMS_REPL_ITEM_LOC | Yes | No | Yes | Yes |
| MERCHAPI_EXT_ITEM_LOC_CFA | Yes | Yes | No | Yes |
Get Item Location Basic Details
Functional Area
Items
Business Overview
Retrieves basic item-location details for the specified items and locations. Provide a commaseparated list of up to 10 item IDs and a comma-separated list of up to 10 location IDs. The service returns the matching records from ITEM_LOC table. If no matching item-location combinations are found, the request succeeds and the response contains no records.
Service Type
GET
ReST URL
RmsReSTServices/services/private/Item/itemLocationDetail
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | String | Up to 10 comma- separated item IDs. No whitespace. |
| locations | Yes | String | Up to 10 comma- separated numeric location IDs. No whitespace. |
Response Code: 200 (Success)
Table 5-466 ItemLocation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | Unique alphanumeric value that identifes the item. |
| location | No | Number(10,0) | Numeric identifer of the location where the item is ranged. The location can be a store, warehouse, or external fnisher. |
| locationType | No | String (1) | Type of location in the location feld. Valid values are S (Store), W (Warehouse), and E (External Finisher). |
| status | No | String (1) | Current status of the item at the location. Valid values are A (Active), I (Inactive), C (Discontinued), and D (Deleted). |
| unitRetail | No | Number(20,4) | Unit retail price for the item-location combination in the standard unit of measure. The value is stored in the local currency. |
| sellingUnitRetail | No | Number(20,4) | Unit retail price for the item-location combination in the selling unit of measure. The value is stored in the local currency. |
| sellingUom | No | String (4) | Selling unit of measure used for the item’s single-unit retail. |
| clearanceInd | No | String (1) | Indicates whether the item is on clearance at the location. Valid values are Y (Yes) and N (No). |
| localItemDescription | No | String (250) | Local description of the item. This value defaults to the item description and can be overridden for the location. |
Sample Response Message
[
{
"item": "211001211",
"location": 10000089,
"locationType": "S",
"status": "A",
"unitRetail": 19.95,
"sellingUnitRetail": 19.95,
"sellingUom": "EA",
"clearanceInd": "N",
"localItemDescription": "Graphic T-shirt - Red"
}
]
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.
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"
}
]
}
Get Item VAT Details
Endpoints
MerchIntegrations/services/foundation/item/vat
MerchIntegrations/services/foundation/item/vat/{item}
Functional Area
Items - Item Definition
Business Overview
This service publishes item VAT data to downstream consuming systems. The payload includes the item, VAT region, active date, VAT type, VAT code, VAT rate, reverse-VAT indicator, and audit timestamps. Functionally, the JSON view publishes only approved transaction-level items because it requires ITEM_MASTER.STATUS = ‘A’ and ITEM_MASTER.ITEM_LEVEL = ITEM_MASTER.TRAN_LEVEL.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: VAT_ITEM, ITEM_MASTER
Additional business tables: none
JSON cache table: MERCHAPI_EXT_ITEM_VAT
JSON generation view: V_MERCHAPI_EXT_ITEM_VAT_JSON
The JSON view is built from VAT_ITEM joined to ITEM_MASTER, and it publishes the item key, VAT region, active date, VAT type, VAT code, VAT rate, reverse-VAT indicator, and audit timestamps.
The view only publishes rows where the item is approved and transaction-level because it requires ITEM_MASTER.STATUS = ‘A’ and ITEM_MASTER.ITEM_LEVEL = ITEM_MASTER.TRAN_LEVEL.
Initial refresh supports both truncate-and-load and rebuild behavior, and rebuild marks cache rows deleted when an item no longer resolves in the JSON view.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_ITEM_VAT_JSON and apply ITEM_MASTER.STATUS = ‘A’ and ITEM_MASTER.ITEM_LEVEL = ITEM_MASTER.TRAN_LEVEL.
Mark cache rows deleted when the item no longer exists in V_MERCHAPI_EXT_ITEM_VAT_JSON for the current thread.
ICL (Integration Change Log) table: ICL_RMS_VAT_ITEM (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on VAT_ITEM, ITEM_MASTER.
Item Approval Handling
On item approval, the main item publish flow writes existing VAT_ITEM rows for the item to ICL_RMS_VAT_ITEM so this API is also queued when the item becomes approved. VAT rows are not staged through this path while the item remains in worksheet or submitted status.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_ITEM_VAT
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_ITEM_VAT_ADHOC_PROCESS → MERCHAPI_EXT_ITEM_VAT_ADHOC_JOB
Webhook configuration api name: foundation/item/vat
Special handling
Additional GET query parameters: item, vatRegion, activeDate, vatType.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime characteristics and should be evaluated separately. The available configuration for this service should therefore be reviewed and validated against the customer production data profile, including expected volume, message size, and access pattern, with the key performance-related configuration for this service covering the following:
Multi-threading and commit control
This service supports multi-threaded execution for initial seeding, while delta processing remains single-threaded. Initial-seeding thread count is controlled through API_REFRESH_OVERRIDE_NO_OF_THREADS, and initial-seeding commit sizing is controlled through API_REFRESH_OVERRIDE_COMMIT_MAX_COUNTER.
For initial seeding, thread and commit settings should be chosen together based on expected row volume, average message size, and the simpler VAT_ITEM and ITEM_MASTER join used to build the payload. Common starting points for large-volume seeding are 8, 16, or 32 threads. The delivered refresh override is currently 4 threads.
Refresh commit sizing should be reviewed together with the thread setting. Typical values can range from 1,000 rows or higher values such as 10,000. The delivered refresh override commit setting is currently 5000.
Dropping indexes and constraints during seeding
This option applies only to initial seeding, including truncate-and-load execution. Even with refresh-override threading, larger parallel insert volumes can increase index maintenance overhead and slow the load.
To reduce that overhead, DROP_INDEX_ON_REFRESH can be enabled so indexes and constraints are dropped before seeding and rebuilt after the load completes.
This can improve data-load throughput, but the overall refresh plan should also account for the additional time needed for index rebuild after the seeding step finishes. GATHER_STATS_ON_REFRESH should normally remain enabled unless testing shows a need to change it.
REST fetch considerations
Because the payload is relatively narrow, larger page-limit values are often practical after testing. REST page size should still be selected so that the average response remains below about 10 MB per call, using common page-limit values such as 1,000, 5,000, or 10,000 rows.
For full downloads, do not provide the since query parameter so the database can favor the primary-key access path. For delta downloads, use a small time window, typically a few minutes and at most a few hours, so the eligible row set on the LAST_UPDATE_DATETIME index remains small.
Wider delta windows, especially multi-day windows that can arise during outages or data recovery, generally do not perform well. For such scenarios, keeping BUILD_HISTOGRAM enabled allows the service to support recovery through smaller, more selective polling windows using the optimalBefore query parameter.
In this catch-up pattern, for requests up to 30 days in the past, the client provides optimalBefore and leaves before empty. The client then uses the returned before timestamp to continue polling incrementally until the backlog is cleared, and then resumes the normal shortwindow delta pattern. Hourly histogram processing groups LAST_UPDATE_DATETIME values into buckets of 10,000 rows in MERCHAPI_TIMESTAMP_HISTOGRAM using the shared HISTOGRAM_ROW_COUNT configuration.
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/item/vat
MerchIntegrations/services/foundation/item/vat/{item}
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| item | No | String | Item |
| vatRegion | No | String (4) | VAT Region |
| activeDate | No | String | Active Date format required: YYYY-MM- DD |
| vatType | No | String | VAT Type |
| offsetkey | No | String | Offset key ([item],[vat region],[active date], [vat type] Example: Cross_1001,1000,2020- 10-22,R) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-467 Input Parameter for “MerchIntegrations/services/foundation/item/vat/ {item}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String | |
| offsetkey | No | String | Offset key ([item],[vat region],[active date], [vat type] Example: Cross_1001,1000,2020- 10-22,R) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-468 PageResultsItemsMerchApiItemVat - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-469 MerchApiItemVat - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for item VAT details. |
| item | No | String (25) | This feld contains the unique number that identifes an item. |
| vatRegion | No | Number(4,0) | This feld contains the number of the Value Added Tax region a location belongs to. |
| activeDate | No | date | This feld contains the date that the VAT rate became active for the item/VAT region combination. |
| vatType | No | String (1) | This feld indicates the type of VAT. Valid values include R (Retail), C (Cost), B (Both). |
| vatCode | No | String (6) | This feld contains the alphanumeric identifcation for the VAT code. |
| vatRate | No | Number(20,10) | This feld contains the VAT rate for the item/ location. |
| reverseVatInd | No | String (1) | This feld indicates if the item is subject to reverse charge VAT at the VAT region. Valid values are Y and N. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the item VAT record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-470 LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description href No String Service URL rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "item": "100100076", "vatRegion": 1000, "activeDate": "2001-12-31", "vatType": "R", "vatCode": "S", "vatRate": 1.0, "reverseVatInd": "N", "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| VAT_ITEM | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| MERCHAPI_EXT_ITEM_VAT | Yes | Yes | Yes | Yes |
| V_MERCHAPI_EXT_ITEM_VAT_JSON | Yes | No | No | No |
| ICL_RMS_VAT_ITEM | Yes | No | Yes | Yes |
Get Item VAT Details by Item Number
Endpoints
MerchIntegrations/services/foundation/item/vat
MerchIntegrations/services/foundation/item/vat/{item}
Functional Area
Items
Business Overview
This service can be used by external applications to retrieve VAT information for all or selected items from Merchandising.
Service Type
GET
ReST URL
/MerchIntegrations/services/foundation/vat/item?
item={item}&vatRegion={vatRegion}&activeDate={activeDate}&vatType={vatType}&of
fsetkey={offsetkey}&limit={limit}&since={since}&before={before}
/MerchIntegrations/services/foundation/item/vat/{item}
Input Parameters
Table 5-471 /MerchIntegrations/services/foundation/item/vat
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. |
Format:yyyy-mm-dd"T"hh24:mi:ss.fftzh:tzm | |||
| before | No | String | Before Date. |
Format:yyyy-mm-dd"T"hh24:mi:ss.fftzh:tzm | |||
| item | No | String | Item Number. |
| vatRegion | No | Number | Vat Region. |
Table 5-471 (Cont.) /MerchIntegrations/services/foundation/item/vat
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| activeDate | No | String | Active date for item VAT on future cost. |
Format:YYYY-MM-DD | |||
| vatType | No | String | VAT Type. |
Valid values areR- Retail,C- Cost,B- Both. | |||
| offsetkey | No | String | Offset Key. Valid Value is an Item ID. |
| limit | No | BigDecimal | Pagination limit. Default Value is1000. |
Table 5-472 /MerchIntegrations/services/foundation/item/vat/{item}
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | Number | Item Number. |
Output
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for Item VAT details. Valid Values are INSERT, UPDATE and DELETE. |
| item | String | This feld holds the ID of the item. |
| vatRegion | Number | This feld contains the number of the Value Added Tax region a location belongs to. |
| activeDate | String | This feld holds the active date for record on future cost. |
| vatType | String | This feld indicates the type of VAT. Valid values include R (Retail), C (Cost), B (Both). |
| vatCode | String | This feld contains the alphanumeric identifcation for the VAT code. |
| vatRate | Number | This feld contains the VAT rate for the item-location. |
| reverseVatInd | String | This feld contains the VAT rate for the item-location. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| cacheTimestamp | String | This feld specifes date and time when the item VAT record was last maintained. |
Elements in JSON Output
Elements Description items The first element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query.
| Elements | Description |
|---|---|
| hasMore | This is dependent on limit value. If the total rows are more than the limit defned, then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. |
| For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists, then 25 rows are returned along with a “next” link else no links would be added to the JSON response. | |
| links | “self”: This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON input:
"{
"items": [
{
"action": null,
"item": "104900054",
"vatRegion": 1000,
"activeDate": "2021-10-01",
"vatType": "B",
"vatCode": "S",
"vatRate": 10,
"reverseVatInd": "N",
"createDateTime": "2022-03-29T10:07:45.000Z",
"updateDateTime": "2022-03-29T10:07:45.000Z",
"cacheTimestamp": "2022-03-29T12:32:58.009Z"
}
],
"hasMore": false,
"limit": 10000,
"count": 1,
"links": null
}"
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| VAT_ITEM | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_EXT_ITEM_VAT | Yes | Yes | Yes | Yes |
| V_MERCHAPI_EXT_ITEM_VAT_JSON | Yes | No | No | No |
| ICL_RMS_VAT_ITEM | Yes | No | Yes | Yes |
Item ELC Upload Service
The following services are included in this functional area:
-
Create Item Conditional Tariff Treatments
-
Create Item Expenses
-
Create Item HTS
-
Create Item HTS Assessments
-
Delete Item Conditional Tariff Treatments
-
Delete Item Expenses
-
Delete Item HTS
-
Delete Item HTS Assessments
-
Update Item Expenses
-
Update Item HTS
-
Update Item HTS Assessments
Create Item Conditional Tariff Treatments
Functional Area
Items - Item Definition
Business Overview
Tariff Treatments, also known as Special Programs, are used to determine the applicable duty to be assessed when importing goods into a particular country. Tariff treatments may or may not be conditional. A conditional tariff treatment indicates that only certain types of goods will be eligible for the special rates. When import items are defined in the system, the user must indicate for which conditional tariff treatments the item is eligible.
This service allows the user to add one or more conditional tariff treatments to an item that is at or above the transaction level, including vendor packs.
Recalculate Orders
-
The Recalculate Orders parameter can be passed in as Yes (
Y) or No (N) when a conditional tariff treatment is being added to or removed from an item. Adding and removing conditional tariff treatments to or from an item changes the item’s eligibility for the tariff treatment which may result in a different duty rate. This parameter provides a way to indicate whether or not open orders should be recalculated. -
When Recalculate Orders is passed in as Yes (
Y) on a ‘Create’ or ‘Delete’, after successful creation or deletion of the item conditional tariff treatment record, during the nightly batch run, the system searches for and recalculates all the order/item/HTS/assessments for the item followed by all expenses for all locations for the same item in order to update the value of any expenses that are based on assessment values, where the order/item or order/item/location has no receipts and the order is not closed. -
When Recalculate Orders is passed in as Yes (
Y) on a parent item, then all child items will be queued for order/item recalculation.
Service Type
POST
ReST URL
MerchIntegrations/services/item/conditionalTariffTreatments/create
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Table 5-473 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-474 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMSorSTG. If not defned, the default isSTG. |
| conditionalTariffTreatment | No | Collection of Object | Child node. |
Table 5-475 ConditionalTariffTreatment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| tariffTreatment | Yes | String (10) | The unique identifer for the Conditional Tariff Program code. This refers to the tariff_treatmentfeldfrom tariff_treatmenttable whichare conditional. Example values are - CA(NAFTA for Canada CA),A+(Generalized System of Preferences A+). |
| recalculateOrderInd | No | String (1) | The optional feld indicates if open orders associated with the item should have assessments and expenses recalculated. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"conditionalTariffTreatment": [
{
"tariffTreatment": "CA",
"recalculateOrderInd": "Y"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Item Expenses
Functional Area
Items - Item Definition
Business Overview
This service is used to add expenses to an existing item in Merchandising. Expenses can also be created together with the creation of a new item. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/expenses/create
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Table 5-476 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-477 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| expense | No | Collection of Object | References a collection of item expenses. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-478 Expense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | Number (10) | The unique identifer for the supplier. |
| componentId | Yes | String (10) | The code representing the specifc expense component. |
| dischargePort | Yes | String (5) | The port where the item will enter the importing country. |
| originCountry | No | String (3) | The country where the item was manufactured or signifcantly altered. |
| ladingPort | No | String (5) | The fnal destination lading port of the item if the Expense Type is Country. |
| costZoneId | No | Number (10) | The fnal destination zone of the item if the Expense Type is Zone. |
Table 5-478 (Cont.) Expense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| costZoneGroupId | No | Number (4) | This feld holds the items Zone Group, it is stored here for performance reasons. |
| baseExpenseInd | No | String (1) | Indicates whether or not this Set of Expenses is also the base Set of Expenses. |
| computationValueBase | No | String (10) | The Computation Value Base representing the base value for calculating the expense. |
| componentRate | No | Number (20,4) | The rate to be charged against the calculation base. This feld will hold a percentage value if the Calculation basis of the Component is Value or a monetary amount if the Calculation Basis is Specifc. |
| perCount | No | Number (12,4) | A count indicating the amount of the Per Count Unit of Measure to which the rate applies. This column is only used for specifc (per-unit) expenses. |
| perCountUom | No | String (4) | The unit of measure in which the Per Count is specifed. This column is only used from specifc (per-unit) expenses. |
| componentCurrency | No | String (3) | Contains the currency the expense is to be entered in. If the Calculation Basis is V (Value), then the comp_currency will be NULL. |
| updateOrdersInd | No | String (1) | Indicates that new changes will be refected to associated order-location expense record. |
| nominationFlag1 | No | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
Table 5-478 (Cont.) Expense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inDuty | No | String (1) | If Import Management is enabled in Merchandising (i. e. system_options. import_ind = Y), the inDuty fag is used to indicate if the value of the cost component should be included in total duty. |
| nominationFlag3 | No | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense | No | String (1) | The inExpense fag is used to indicate if the value of the cost component should be included in total expenses. |
| inAlc | No | String (1) | The inALC fag is used for cost components where the retailer does not expect to receive an actual value for the charge via an obligation or customs entry. The inALC fag allows the value of the cost component to be included in ALC via direct nomination and indicates to the system that the estimated value on the order should be used as the actual value as well because no other actual will be provided. |
Table 5-479 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-480 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"expense": [
{
"supplier": 2400,
"componentId": "AGCOMM",
"dischargePort": "480",
"originCountry": "US",
"ladingPort": "7",
"costZoneId": 696323,
"costZoneGroupId": 1000,
"baseExpenseInd": "N",
"computationValueBase": null,
"componentRate": 3.55,
"perCount": 1,
"perCountUom": "EA",
"componentCurrency": "USD",
"updateOrdersInd": "Y",
"nominationFlag1": "N",
"inDuty": "N",
"nominationFlag3": "N",
"inExpense": "+",
"inAlc": "N"
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Item HTS
Functional Area
Items - Item Definition
Business Overview
This service is used to add HTS and Assessments to an existing item in Merchandising. HTS and Assessments can also be created together with the creation of a new item. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/hts/create
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Create - Object. See list of elements for detail
Items - Object. See list of elements for detail
Hts - Object. See list of elements for detail
Assessments - Object. See list of elements for detail
LocalizationExtensions - Object. See list of elements for detail
Attributes - Object. See list of elements for detail
Response Code: 200 (Success)
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.
Create Item HTS Assessments
Functional Area
Items - Item Definition
Business Overview
This service is used to add HTS Assessments to an existing item in Merchandising. HTS Assessments can also be created together with the creation of a new item. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/hts/assessments/create
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Create - Object. See list of elements for detail
Items - Object. See list of elements for detail
Hts - Object. See list of elements for detail
Assessments - Object. See list of elements for detail
LocalizationExtensions - Object. See list of elements for detail
Attributes - Object. See list of elements for detail
Response Code: 200 (Success)
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.
Delete Item Conditional Tariff Treatments
Functional Area
Items - Item Definition
Business Overview
Tariff Treatments, also known as Special Programs, are used to determine the applicable duty to be assessed when importing goods into a particular country. Tariff treatments may or may
not be conditional. A conditional tariff treatment indicates that only certain types of goods will be eligible for the special rates. When import items are defined in the system, the user must indicate for which conditional tariff treatments the item is eligible.
This service will allow the user to add one or more conditional tariff treatments to an item that is at or above the transaction level, including vendor packs.
Recalculate Orders
-
The Recalculate Orders parameter can be passed in as Yes (
Y) or No (N) when a conditional tariff treatment is being added to or removed from an item. Adding and removing conditional tariff treatments to or from an item changes the item’s eligibility for the tariff treatment which may result in a different duty rate. This parameter provides a way to indicate whether or not open orders should be recalculated. -
When Recalculate Orders is passed in as Yes (
Y) on a ‘Create’ or ‘Delete’, after successful creation or deletion of the item conditional tariff treatment record, during the nightly batch run, the system will search for and recalculate all the order/item/HTS/assessments for the item followed by all expenses for all locations for the same item in order to update the value of any expenses that are based on assessment values, where the order/item or order/item/location has no receipts and the order is not closed. -
When Recalculate Orders is passed in as Yes (
Y) on a parent item, then all child items will be queued for order/item recalculation.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/conditionalTariffTreatments/delete
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Table 5-481 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-482 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| conditionalTariffTreatment | No | Collection of Object | Child node. |
Table 5-483 ConditionalTariffTreatment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| tariffTreatment | Yes | String (10) | The code representing the Conditional Tariff Program code to be deleted. This refers to the tariff_treatmentfeldfrom tariff_treatmenttable whichare conditional. Example values are - CA(NAFTA for Canada CA),A+(Generalized System of Preferences A+). |
| recalculateOrderInd | No | String (1) | The optional feld indicates if open orders associated with the item should have assessments and expenses recalculated. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"conditionalTariffTreatment": [
{
"tariffTreatment": "CA",
"recalculateOrderInd": "Y"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Expenses
Functional Area
Items - Item Definition
Business Overview
This service is used to delete any expenses that are associated with an item in Merchandising. In order to perform this deletion, the item/supplier/component ID/discharge port must exist for the item in Merchandising, else an error will be returned.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/expenses/delete
Input Payload Details
Table 5-484 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-485 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| expense | No | Collection of | References a collection of item |
| Object | expense. |
Table 5-486 Expense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | Number (10) | The supplier affected by the deletion activity. |
| componentId | Yes | String (10) | The code representing the specifc expense component to be deleted. |
| dischargePort | Yes | String (5) | The port where the item will enter the importing country. |
Table 5-486 (Cont.) Expense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | No | String (3) | The country where the item was manufactured or signifcantly altered. |
| ladingPort | No | String (5) | The fnal destination lading port of the item if the Expense Type is Country. |
| costZoneId | No | Number (10) | The fnal destination zone of the item if the Expense Type is Zone. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"expense": [
{
"supplier": 2400,
"componentId": "ORDCST",
"dischargePort": "480",
"originCountry": "US",
"ladingPort": "7",
"costZoneId": 696323
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item HTS
Functional Area
Items - Item Definition
Business Overview
This service is used to delete any Harmonized Tariff Schedule (HTS) that is linked with an item within Merchandising. In order to perform the deletion, the record to be deleted must exist in Merchandising, else an error will be returned.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/hts/delete
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Table 5-487 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-488 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| hts | No | Collection of Object | References a collection of item hts. |
Table 5-489 Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hts | Yes | String (25) | The unique identifer for the Harmonized Tariff Schedule code. |
| importCountry | Yes | String (3) | The unique identifer for the country that the item will be imported into. |
Table 5-489 (Cont.) Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | Yes | String (3) | The country where the item was manufactured or signifcantly altered. |
| effectFrom | Yes | date | The date from which the Item/HTS relationship is valid. This feld is used to maintain historical information related to the Item/HTS relationship. |
| effectTo | Yes | date | The date until when the Item/HTS relationship is valid. This feld is used to maintain historical information related to the item/HTS relationship. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"hts": [
{
"hts": "9014111112",
"importCountry": "US",
"originCountry": "CA",
"effectFrom": "2001-12-31",
"effectTo": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item HTS Assessments
Functional Area
Items - Item Definition
Business Overview
This service is used to delete any assessments that are associated with an existing item HTS record within Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/hts/assessments/delete
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Table 5-490 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-491 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| hts | No | Collection of Object | References a collection of item hts. |
Table 5-492 Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hts | Yes | String (25) | The unique identifer for the Harmonized Tariff Schedule code. |
| importCountry | Yes | String (3) | The unique identifer for the country that the item will be imported into. |
Table 5-492 (Cont.) Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | Yes | String (3) | The country where the item was manufactured or signifcantly altered. |
| effectFrom | Yes | date | The date from which the Item/HTS relationship is valid. This feld is used to maintain historical information related to the Item/HTS relationship. |
| effectTo | Yes | date | The date until when the Item/HTS relationship is valid. This feld is used to maintain historical information related to the item/HTS relationship. |
| assessments | No | Collection of Object | References a collection of assessments associated to the item HTS. |
Table 5-493 Assessments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentId | Yes | String (10) | The code representing the specifc |
| assessment component to be deleted. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "106150023",
"hts": [
{
"hts": "9014111112",
"importCountry": "US",
"originCountry": "CA",
"effectFrom": "2001-12-31",
"effectTo": "2001-12-31",
"assessments": [
{
"componentId": "DTYCAUS"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item Expenses
Functional Area
Items - Item Definition
Business Overview
This service is used to update one or more expenses that are associated with an item within Merchandising. In order to perform an update, the specified item/supplier/component ID must exist within Merchandising, else an error will be returned.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/expenses/update
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Table 5-494 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
Table 5-494 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of items. |
Table 5-495 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| expense | No | Collection of Object | References a collection of item expenses. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-496 Expense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | Number (10) | The unique identifer for the supplier. |
| componentId | Yes | String (10) | The code representing the specifc expense component. |
| dischargePort | Yes | String (5) | The port where the item will enter the importing country. |
| originCountry | No | String (3) | The country where the item was manufactured or signifcantly altered. |
| ladingPort | No | String (5) | The fnal destination lading port of the item if the Expense Type is Country. |
| costZoneId | No | Number (10) | The fnal destination zone of the item if the Expense Type is Zone. |
| costZoneGroupId | No | Number (4) | This feld holds the items Zone Group, it is stored here for performance reasons. |
| baseExpenseInd | No | String (1) | Indicates whether or not this Set of Expenses is also the base Set of Expenses. |
| computationValueBase | No | String (10) | The Computation Value Base representing the base value for calculating the expense. |
Table 5-496 (Cont.) Expense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentRate | No | Number (20,4) | The rate to be charged against the calculation, base. This feld will hold a percentage value if the Calculation basis of the Component is Value or a monetary amount if the Calculation Basis is Specifc. |
| perCount | No | Number (12,4) | A count indicating the amount of the Per Count Unit of Measure to which the rate applies. This column is only used for specifc (per-unit) expenses. |
| perCountUom | No | String (4) | The unit of measure in which the Per Count is specifed. This column is only used from specifc (per-unit) expenses. |
| componentCurrency | No | String (3) | Contains the currency the expense is to be entered in. If the Calculation Basis is V (Value), then the comp_currency will be NULL. |
| updateOrdersInd | No | String (1) | Indicates that new changes will be refected to associated order-location expense record. |
| nominationFlag1 | No | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
Table 5-496 (Cont.) Expense - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inDuty | No | String (1) | See description for nomFlag1. If ALC is turned on (i. e. system_options. import_ind = Y), inDuty fag is used to indicate the status of a component in duty calculation, inExpense fag is used to indicate the status of a component in ELC calculation, inALC fag is used to indicate the status of a component in ALC calculation, i. e. these 3 fags can not be used for any other purposes if ALC is turned on. |
| nominationFlag3 | No | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense | No | String (1) | The inExpense fag is used to indicate if the value of the cost component should be included in total expenses. |
| inAlc | No | String (1) | The inALC fag is used for cost components where the retailer does not expect to receive an actual value for the charge via an obligation or customs entry. The inALC fag allows the value of the cost component to be included in ALC via direct nomination and indicates to the system that the estimated value on the order should be used as the actual value as well because no other actual will be provided. |
Table 5-497 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-498 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"expense": [
{
"supplier": 2400,
"componentId": "AGCOMM",
"dischargePort": "480",
"originCountry": "US",
"ladingPort": "7",
"costZoneId": 696323,
"costZoneGroupId": 1000,
"baseExpenseInd": "N",
"computationValueBase": null,
"componentRate": 5.6,
"perCount": 3,
"perCountUom": "EA",
"componentCurrency": "USD",
"updateOrdersInd": "Y",
"nominationFlag1": "N",
"inDuty": "N",
"nominationFlag3": "N",
"inExpense": "+",
"inAlc": "N"
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item HTS
Functional Area
Items - Item Definition
Business Overview
This service is used to update HTS of an existing item in Merchandising. In order to update HTS, the record to be updated must exist in Merchandising, otherwise, an error will be returned. Status and origin country ID can be updated at the HTS level.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/hts/update
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Table 5-499 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-500 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| hts | No | Collection of Object | References a collection of item HTS. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
| Table 5-501 Hts - Object. Element Name | See list of e Required | lements for det Data Type | ail Description |
| hts | Yes | String (25) | The unique identifer for the Harmonized Tariff Schedule code. |
| importCountry | Yes | String (3) | The unique identifer for the country that the item will be imported into. |
| originCountry | Yes | String (3) | The country where the item was manufactured or signifcantly altered. |
| effectFrom | Yes | date | The date from which the Item/HTS relationship is valid. This feld is used to maintain historical information related to the Item/HTS relationship. |
| effectTo | Yes | date | The date until when the Item/HTS relationship is valid. This feld is used to maintain historical information related to the item/HTS relationship. |
| clearingZoneId | No | String (5) | The concept of ‘clearing zone’ represents a country’s zone-level point of entry of goods. This feld holds the Clearing Zone ID for the effective HTS code. Clearing zones are defned by import country. |
Table 5-501 Hts - Object. See list of elements for detail
Table 5-501 (Cont.) Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | No | String (1) | Used to indicate the status of the |
| Item/HTS relationship. Valid values | |||
| are (W)orksheet and (A)pproved. |
Table 5-502 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-503 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"hts": [
{
"hts": "9014111111",
"importCountry": "US",
"originCountry": "CA",
"effectFrom": "2001-12-31",
"effectTo": "2001-12-31",
"clearingZoneId": null,
"status": "W"
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item HTS Assessments
Functional Area
Items - Item Definition
Business Overview
This service is used to update existing item HTS assessments in Merchandising. To update HTS assessments, the record to be updated must exist in Merchandising; otherwise, an error will be returned. All HTS assessment fields except for component ID can be updated.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/hts/assessments/update
Input Payload Details
Update - Object. See list of elements for detail
Items - Object. See list of elements for detail
Hts - Object. See list of elements for detail
Assessments - Object. See list of elements for detail
LocalizationExtensions - Object. See list of elements for detail
Attributes - Object. See list of elements for detail
Response Code: 200 (Success)
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.
Item Location Upload Service
The following services are included in this functional area:
-
Create Item Locations
-
Manage Item Location Status Update Requests
-
Update Item Locations
Create Item Locations
Functional Area
Items - Item Definition
Business Overview
This service subscribes to items and their locations from external systems to create item location combinations in Merchandising. Item/location relationships can be created for an item and a single location or using one of the levels of the organizational hierarchy.
When a new item location is created, this service will first validate that all required fields are present in the message. Additionally, when creating a new item location at least one detail line must also be included in the request payload. After that, business level validation on the input information will be performed.
Service Type
POST
ReST URL
MerchIntegrations/services/item/locations/create
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-504 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
Table 5-504 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of item-location records. |
Table 5-505 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The identifer for the item. |
| hierarchyLevel | Yes | String (2) | The level of the organizational hierarchy to which the hier_value feld pertains. Valid values are CH (chain), AR (area), RE (region), DI (district), S (store), and W (warehouse). |
| locations | Yes | Collection of Object | References a collection |
| of hierarchy details. | |||
| able 5-506 Locat Element Name | ions - Object. See l Required | ist of elements for detail Data Type | Description |
| hierarchyValue | Yes | Number (10) | Valid ID for a chain, area, region, district, store or warehouse given based on the hierarchy Level. |
| primarySupplier | No | Number (10) | The primary supplier for the item at the location. If not populated, this will default from the primary supplier on the ITEM_SUPPLIER table. |
| primaryCountry | No | String (3) | The primary country for the item at the location. If not populated on a create message this will default from the primary country on the ITEM_SUPP_COUNTRY table. |
Table 5-506 Locations - Object. See list of elements for detail
Table 5-506 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| localItemDescription | No | String (250) | Local description for the item at the location. If not populated on the message this will default from the ITEM_MASTER table. |
| status | Yes | String (1) | The status of the item at the location. |
| storeOrderMultiple | Yes | String (1) | The unit type of the item shipped from the warehouse to the location. Valid values are C (cases), I (inners), and E (eaches). Eaches will default if left null on a create message. |
| receiveAsType | No | String (1) | The unit in which the warehouse will receive goods. Valid values are E (eaches) and P (pack). This feld only applies to buyer packs. If the item is not a buyer pack this feld should be null. |
| taxableInd | Yes | String (1) | Indicates if the item is taxable at the location. Valid values are ‘Y’ and ’N’. If not populated on the message it will default to ‘Y’. |
| ti | No | Number (12) | Number of shipping units (cases) that make up one tier of a pallet. Multiply TI x HI to get total number of cases for a pallet. |
| hi | No | Number (12) | Number of tiers that make up a complete pallet (height). Multiply TI x HI to get total number of cases for a pallet. |
| dailyWastePercent | No | Number (12,4) | Average percentage lost from inventory on a daily basis due to natural wastage. |
Table 5-506 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| localShortDescription | No | String (120) | The local short description of the item. Will default to the item’s short description. Will be downloaded to the POS. |
| uinType | No | String (6) | This attribute will contain the type of the unique identifcation number (UIN) used to identify instances of the item at the location. Valid values for this attribute should be user- defnable on the Merchandising code tables. This attribute should be nullable. |
| uinLabel | No | String (6) | This attribute will contain the label for the UIN when displayed in Store Inventory Operations. Valid values should be user-defnable on the Merchandising code tables. This attribute should be nullable but a value is required when a UIN Type is specifed. |
| captureTime | No | String (6) | This attribute will indicate when the UIN should be captured for an item during transaction processing. There are 2 valid values for this feld which should be stored on the Merchandising code tables: Sale and Store Receiving. This attribute should be nullable. |
Table 5-506 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| externalUinInd | No | String (1) | This Yes/No indicator indicates if UIN is being generated in the external system (e. g. SIM). This value will always be N (no) when the Capture Time attribute is set to Sale. |
| sourceMethod | No | String (1) | Determines the source method for a requested item at a store. Valid values: ‘W’(warehouse) and ’S’(supplier), default value is ‘S’. |
| sourceWarehouse | No | Number (10) | If the source_method is ‘W’, this feld contains the source warehouse for fulflling item requests at a store. |
| unitCost | No | Number (20,4) | The current corporate unit cost for the item in the location’s currency. This feld will only be used to establish the item supplier country loc unit cost; it cannot be modifed. |
| purchaseType | No | String (1) | This contains a code to indicate whether the item is normal merchandise (i. e. owned by the retailer), consignment stock or a concession item. Valid values are 0 - Owned, 1 - Consignment, 2 - Concession. |
| calculationBasis | No | String (1) | This indicates if the cost for the consignment/ concession item will be managed either based on cost per unit or as a percentage of retail. Valid values are C - Cost per Unit, P - Purchase Rate. |
Table 5-506 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| purchaseRate | No | Number (12,4) | This column contains the percentage of the retail price which will determine the cost paid to the supplier for a consignment or concession item. |
| pricingControl | No | String (1) | This indicates whether the price for the consignment/ concession item will be managed by supplier or by retailer when supplier- controlled pricing for Consignment/ Concession ownership model is used within the Merchandising suite of solutions. Valid values are: R - Retailer S - Supplier If no value is provided for consignment/ concession purchase types, this will be defaulted from item/ supplier/country of sourcing /location if purchase type is Consignment/ Concession at item/ supplier/ country of sourcing/location level. If purchase type is Owned at item/ supplier/country of sourcing/location level, then this will be defaulted from item/ supplier/country of sourcing if purchase type is Consignment/ Concession at item/ supplier/country of sourcing level. If purchase type is Owned at item/ supplier/country of sourcing level, then this will be defaulted based on Default Pricing Control at supplier site level. |
Table 5-506 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| promotableInd | No | String (1) | This feld will indicates,if the item can be included on promotions or not. |
| rfdInd | No | String (1) | This indicates if the item is RFID tagged or not. Valid values are Yes (Y) and No (N). |
| ticketMeasureOfAnEac h | No | Number (12,4) | Size of an each in terms of the uom_of_price. For example 12 oz. Used in ticketing. |
| ticketPerCount | No | Number (12,4) | Size to be used on the ticket in terms of the uom_of_price. For example, if the user wants the ticket to have the label print the price per ounce, this value would be 1. If the user wanted the price per 100 grams this value would be 100. Used in ticketing. |
| ticketUom | No | String (4) | Unit of measure that will be used on the ticket for this item. |
| primaryVariant | No | String (25) | This feld is used to address sales of PLUs (i. e. above transaction level items) when inventory is tracked at a lower level (i. e. UPC). This feld will only contain a value for items one level higher than the transaction level. |
| primaryCostPack | No | String (25) | This feld contains an item number that is a simple pack containing the item in the item column for this record. If populated, the cost of the future cost table will be driven from the simple pack and the deals and cost changes for the simple pack. |
Table 5-506 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inboundHandlingDays | No | Number (2) | This feld indicates the number of inbound handling days for an item at a warehouse type location. |
| rangedInd | No | String (1) | This column determines if the location is ranged intentionally by the user for replenishment/selling or incidentally ranged by the RMS programs when item is not ranged to a specifc location on the transaction. |
| costingLocation | No | Number (10) | Numeric identifer of the costing location for the franchise store. This feld may contain a store or a warehouse. |
| sellingPhaseStartDate | No | date | It is used to determine the timing of the generation of markdown recommendation, which will occur x weeks after the start of this phase. |
| updSellDateOnStOrdRc pt | No | String (1) | This indicates whether or not to update the Selling Phase Start Date for the item/loc when a purchase order of this item is received at the store. |
| updSellDateOnWh2stR cpt | No | String (1) | This indicates whether or not to update the Selling Phase Start Date for the item/loc when a warehouse to store transfer/ allocation of this item is received at the store. |
| updSellDateOnSt2stRc pt | No | String (1) | This indicates whether or not to update the Selling Phase Start Date for the item/loc when a store to store transfer of this item is received at the store. |
Table 5-506 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| minUnitsForSellDateR eset | No | Number (12,4) | This feld contains the minimum shipped quantity of an item on a transfer/allocation that will trigger the resetting of the Selling Phase Start Date. This value is only used if either of the Set Selling Start Date upon Receipt of a Warehouse to Store Transfer/Allocation or Set Selling Start Date upon Receipt of a Store to Store Transfer are set to Yes (Y). |
| mfgSugRetailInclTax | No | Number (20,4) | This feld holds the tax-inclusive Manufacturer Suggested Retail in local currency and in item’s standard UOM. It is used when default_tax_type is GTS or SVAT. |
| mfgSugRetailExclTax | No | Number (20,4) | This feld holds the tax-exclusive Manufacturer Suggested Retail in local currency and in item’s standard UOM. It is used when default_tax_type is SALES. |
| postingClassifer | No | String (6) | ‘Contains a classifer that will be used to segregate the sales posting of the item-loc combination to various GL accounts. Valid values are user- defnable on the RMS code tables under code_type ‘POCL’. |
Table 5-506 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
| trait | No | Record | References a location trait record. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-507 Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| launchDate | No | date | The date the item should frst be sold at the location. Value will be downloaded to the POS. No internal processing occurs from this feld. |
| quantityKeyOptions | No | String (6) | Determines whether the qty key on a POS should be used for this item at the location. Valid values are in the code_type ‘RPO’. Current values include ’R - required’, ‘P - Prohibited’, and ‘O - Optional’. Additional values can be added to the code type |
Table 5-507 (Cont.) Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| manualPriceEntry | No | String (6) | Determines whether the price can/should be entered manually on a POS for this item at the location. Valid values are in the code_type ‘RPO’. Current values include ’R - required’, ‘P - Prohibited’, and ‘O - Optional’. Additional values can be added. |
| depositCode | No | String (6) | Indicates whether a deposit is associated with this item at the location. Values are in the code_type ‘DEPO’. The only processing in Merchandising is downloading it to the POS. Examples are None (NONE), Maine - 0.10 (ME2) and Maine - 0.05 (ME1). |
| foodStampInd | No | String (1) | Indicates whether the item is approved for food stamps at the location. This value will be downloaded to the POS. |
| wicInd | No | String (1) | Indicates whether the item is approved for WIC at the location. This value will be downloaded to the POS. |
| proportionalTarePerce nt | No | Number (12,4) | For items sold by weight, this is the proportion of the total weight of a unit of an item that is packaging. |
| fxedTareValue | No | Number (12,4) | Holds the weight of the packaging in items sold by weight at the location; i. e. if the tare item is bulk candy, this is weight of the bag and twist tie). The only processing Merchandising does is to download it to POS. |
Table 5-507 (Cont.) Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fxedTareUom | No | String (4) | Holds the unit of measure value associated with the tare value. The only processing Merchandising does involving the fxed tare value and UOM is downloading it to the POS. Fixed tare is not subtracted from items sold by weight when sales are uploaded to Merchandising, etc |
| rewardEligibleInd | No | String (1) | Holds whether the item is legally valid for various types of bonus point/award programs at the location. This value will be downloaded to the POS. |
| nationalBrandCompeti torItem | No | String (25) | Holds the nationally branded item to which you would like to compare the current item. This nationally branded item must exist as an item in Merchandising (i. e. on the item_master table). |
| returnPolicy | No | String (6) | The return policy for the item at the location. Valid values are in the code_type ’RETP’. This value will be downloaded to the POS. Examples are All returns accepted (ALL), Customer ID needed for return (ID) and Manager approval needed for return (MNGR). |
| stopSaleInd | No | String (1) | Indicates that sale of the item should be stopped immediately at the location (i. e. in case of recall etc). This value will be downloaded to the POS. |
Table 5-507 (Cont.) Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| electronicMarketClubs | No | String (6) | Code for the marketing clubs to which the item belongs at the location. Valid values are in the code_type ’MTKC’. Examples are Baby Club (B), Baby/ Family Clubs (BF) and Deli Club (D). |
| reportCode | No | String (6) | Code to determine which reports the location should run. Values are in the code type REPC (Report Code). Examples are All Locations Reports(ALL) and No Location Report (NO). |
| requiredShelfLifeOnSe lection | No | Number (4) | Holds the required shelf life for an item on selection in days. This feld is not required. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate this value to external systems that may need it. |
| requiredShelfLifeOnRe ceipt | No | Number (4) | Holds the required shelf life for an item on receipt in days. This feld is not required. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate this value to external systems that may need it for processing |
| investmentBuyShelfLif e | No | Number (4) | The Investment Buy- specifc shelf life for the item/location. |
Table 5-507 (Cont.) Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| storeReorderableInd | No | String (1) | A code (Y or N) to indicate whether the store may re-order the item. Will default to N. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate this value to external systems. |
| rackSize | No | String (6) | Indicates the rack size that should be used for the item. Valid values for the feld are in the code_type ‘RACK’. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate to external systems. Examples are large (L), Medium (M) and Small (S). |
| fullPalletItem | No | String (1) | A code (Y or N) to indicate whether a store must reorder an item in full pallets only. Will default to N. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate to external systems. |
Table 5-507 (Cont.) Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inStoreMarketBasket | No | String (6) | The in store market basket code for this item/location. Valid values for the feld are in the code_type ’STMB’. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate this value to external systems. Examples are A item at this loc (A), B item at this loc (B) and C item at this loc (C). |
| storageLocation | No | String (7) | Holds the current storage location or bin number for the item at the location. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate this value to external systems that may need it for processing. |
| alternateStorageLocati on | No | String (7) | Holds the preferred alternate storage location or bin number for the item at the location. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate this value to external systems that may need it for processing |
| returnableInd | No | String (1) | This feld will contain a value of ‘Y’es when the item can be returned to the location, |
| refundableInd | No | String (1) | This feld will contain a value of ‘Y’es when the item is refundable at the location. |
Table 5-507 (Cont.) Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| backOrderInd | No | String (1) | This feld will contain a value of ‘Y’es when the item can be back ordered to the location. |
Table 5-508 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-509 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-510 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100000024",
"hierarchyLevel": "S",
"locations": [
{
"hierarchyValue": 6000,
"primarySupplier": 6100,
"primaryCountry": "US",
"localItemDescription": "100000024 at 6000",
"status": "A",
"storeOrderMultiple": "E",
"receiveAsType": null,
"taxableInd": "N",
"ti": 1,
"hi": 1,
"dailyWastePercent": 1,
"localShortDescription": "100000024 at 6000",
"uinType": null,
"uinLabel": null,
"captureTime": null,
"externalUinInd": "N",
"sourceMethod": "S",
"sourceWarehouse": null,
"unitCost": 9.65,
"purchaseType": null,
"calculationBasis": null,
"purchaseRate": 1,
"pricingControl": "R",
"promotableInd": "N",
"rfidInd": "N",
"ticketMeasureOfAnEach": 2,
"ticketPerCount": 1,
"ticketUom": "EA",
"primaryVariant": "100100090",
"primaryCostPack": "100100080",
"inboundHandlingDays": 1,
"rangedInd": "Y",
"costingLocation": 199,
"sellingPhaseStartDate": "2001-12-31",
"updSellDateOnStOrdRcpt": "N",
"updSellDateOnWh2stRcpt": "N",
"updSellDateOnSt2stRcpt": "N",
"minUnitsForSellDateReset": 50,
"mfgSugRetailInclTax": 20,
"mfgSugRetailExclTax": 18.12,
"postingClassifier": "String",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": null
}
],
"trait": {
"launchDate": "2001-12-31",
"quantityKeyOptions": null,
"manualPriceEntry": null,
"depositCode": null,
"foodStampInd": "N",
"wicInd": "N",
"proportionalTarePercent": 3,
"fixedTareValue": 3,
"fixedTareUom": "EA",
"rewardEligibleInd": "N",
"nationalBrandCompetitorItem": null,
"returnPolicy": null,
"stopSaleInd": "N",
"electronicMarketClubs": null,
"reportCode": null,
"requiredShelfLifeOnSelection": 1000,
"requiredShelfLifeOnReceipt": 1000,
"investmentBuyShelfLife": 1000,
"storeReorderableInd": "Y",
"rackSize": null,
"fullPalletItem": null,
"inStoreMarketBasket": null,
"storageLocation": null,
"alternateStorageLocation": null,
"returnableInd": "N",
"refundableInd": "N",
"backOrderInd": "N"
},
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Manage Item Location Status Update Requests
Functional Area
Items - Item Definition
Business Overview
This service provides the capability to create and maintain requests to update item/location status from an external system or source. This service takes in a collection of item locations along with the desired status and the effective date upon which each update should take place.
Possible status values can be found under the Item/Location Statuses (STST) code type, which includes values such as Active (A), Inactive (I), Discontinued (C) and Deleted (D). The effective date on a new request must be at least one day later than the current business date (virtual date + 1). The service will accept approved transaction level items or approved reference items. When a reference item is provided, the system will update the item/location status for the associated transaction level item. Locations must be a store, physical warehouse or virtual warehouse. If a physical warehouse is provided, requests will be created/updated/ deleted for all virtual warehouses under the physical warehouse. Requests can be created for item/location combinations where the item is not yet ranged to the location. In this case, when the request is processed by the Scheduled Item Maintenance (sitmain) batch program, the item will be ranged to the location with the provided status.
This single service supports complete maintenance of item location status update requests, which includes the ability to create, update and delete requests. The service takes in an external request reference number. The external system can update or delete a previously created request by passing updates against an external request reference number sent earlier. Removal of item locations or scheduled status date can be accomplished by omitting them in an update request. Deleting of an existing request will require the Delete flag to be set on the update request. No details (item locations or status-date combinations) are required on a Request having the Delete flag set.
Item/location status update requests created via this service can also be viewed and maintained via the Item/Location Update screen which is accessed via the Manage Scheduled Item Updates link under the Items > Scheduled Item Maintenance folder in the Tasks list.
This webservice will enable interfacing of item locations status change requests into Merchandising. Processing of these requests out will continue to be carried out by the Scheduled Item Maintenance (sitmain) batch process. This batch program will update the item-location status the night before the effective date on the request.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/location/statusUpdateRequests/manage
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-511 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | Collection of the input details for which item location status update is requested. |
Table 5-512 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| externalRequestId | Yes | Number (10) | External request id against which the item location status update request will be created. |
| description | No | String (120) | Request description. |
| deleteFlag | No | String (1) | Indicate if the request is to be deleted. Valid values are Y - Yes and N - No. |
| details | No | Collection of Object | Collection of status/update dates on which the new status will be updated. The maximum number of the status/ update dates allowed is 999. |
| itemLocations | No | Collection of Object | Collection of item/locations for which the status updates are requested. The maximum number of the items/ locations allowed is 999. |
Table 5-513 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | Yes | String (1) | The status to update. Valid values are A - Active, I - Inactive, C - Discontinued and D - Delete. |
| updateDate | Yes | date | The future date on which status update will take place. The expected date format is YYYY-MM-DD. |
Table 5-514 ItemLocations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The transaction level or below transaction level item for which status update is requested. |
| location | Yes | Number (10) | The location at which item status will be updated. Valid location can be a store, physical warehouse or virtual warehouse. |
Table 5-515 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| externalRequestId | Yes | Number (10) | External requested id against which errors are encountered. |
| errorMessages | Yes | Array of String | List of errors identifed during business data processing of the request. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"externalRequestId": 12122,
"description": "Request description",
"deleteFlag": "N",
"details": [
{
"status": "I",
"updateDate": "2001-12-31"
}
],
"itemLocations": [
{
"item": "101050103",
"location": 1531
}
]
}
]
}
Response Code: 200 (Success) 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.
Table 5-516 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| externalRequestId | Yes | Number (10) | External requested id against which errors are encountered. |
| errorMessages | Yes | Array of String | List of errors identifed during business data processing of the request. |
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": [
{
"externalRequestId": 12122,
"errorMessages": [
"Input location is not a valid store or warehouse. Input location is
1531."
]
}
]
}
Update Item Locations
Functional Area
Items - Item Definition
Business Overview
This service is used to subscribe to items and their linked locations from external systems in order to update this data at the item/location level within Merchandising. Item/location relationships can be updated for an item and a single location or using one of the levels of the organizational hierarchy.
When an item location is updated, this service will first validate that all the required fields are present in the message. Additionally, when creating a new item/location record, at least one detail line must also be included in the request payload in order to be able to perform business level validation on the input information.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/locations/update
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-517 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of item-location records. |
Table 5-518 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The identifer for the item. |
| hierarchyLevel | Yes | String (2) | The level of the organizational hierarchy to which the hier_value feld pertains. Valid values are CH (chain), AR (area), RE (region), DI (district), S (store), and W (warehouse). |
| locations | Yes | Collection of Object | References a collection of hierarchy details. |
| able 5-519 Locat Element Name | ions - Object. See l Required | ist of elements for detail Data Type | Description |
| hierarchyValue | Yes | Number (10) | The same value as in the hier_level feld. |
| primarySupplier | No | Number (10) | The primary supplier for the item at the location. If not populated on a create message this will default from the primary supplier on the ITEM_SUPPLIER table. |
Table 5-519 Locations - Object. See list of elements for detail
Table 5-519 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryCountry | No | String (3) | The primary country for the item at the location. If not populated on a create message this will default from the primary country on the ITEM_SUPP_COUNTRY table. |
| localItemDescription | No | String (250) | Local description for the item at the location. If not populated on the message this will default from the ITEM_MASTER table. |
| status | Yes | String (1) | The status of the item at the location. |
| storeOrderMultiple | Yes | String (1) | The unit type of the item shipped from the warehouse to the location. Valid values are C (cases), I (inners), and E (eaches). Eaches will default if left null on a create message. |
| receiveAsType | No | String (1) | The unit in which the warehouse will receive goods. Valid values are E (eaches) and P (pack). This feld only applies to buyer packs. If the item is not a buyer pack this feld should be null. |
| taxableInd | Yes | String (1) | Indicates if the item is taxable at the location. Valid values are ‘Y’ and ’N’. If not populated on the message it will default to ‘Y’. |
| ti | No | Number (12) | Number of shipping units (cases) that make up one tier of a pallet. Multiply TI x HI to get total number of cases for a pallet. |
Table 5-519 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hi | No | Number (12) | Number of tiers that make up a complete pallet (height). Multiply TI x HI to get total number of cases for a pallet. |
| dailyWastePercent | No | Number (12,4) | Average percentage lost from inventory on a daily basis due to natural wastage. |
| localShortDescription | No | String (120) | The local short description of the item. Will default to the item’s short description. Will be downloaded to the POS. |
| uinType | No | String (6) | This attribute will contain the type of the unique identifcation number (UIN) used to identify instances of the item at the location. Valid values for this attribute should be user- defnable on the Merchandising code tables. This attribute should be nullable. |
| uinLabel | No | String (6) | This attribute will contain the label for the UIN when displayed in Store Inventory Operations. Valid values should be user-defnable on the Merchandising code tables. This attribute should be nullable but a value is required when a UIN Type is specifed. |
Table 5-519 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| captureTime | No | String (6) | This attribute will indicate when the UIN should be captured for an item during transaction processing. There are 2 valid values for this feld which should be stored on the Merchandising code tables: Sale and Store Receiving. This attribute should be nullable. |
| externalUinInd | No | String (1) | This Yes/No indicator indicates if UIN is being generated in the external system (e. g. SIM). This value will always be N (no) when the Capture Time attribute is set to Sale. |
| sourceMethod | No | String (1) | Determines the source method for a requested item at a store. Valid values: ‘W’(warehouse) and ’S’(supplier), default value is ‘S’. |
| sourceWarehouse | No | Number (10) | If the source_method is ‘W’, this feld contains the source warehouse for fulflling item requests at a store. |
| promotableInd | No | String (1) | This feld will indicates,if the item can be included on promotions or not. |
| rfdInd | No | String (1) | This indicates if the item is RFID tagged or not. Valid values are Yes (Y) and No (N). |
| ticketMeasureOfAnEac h | No | Number (12,4) | Size of an each in terms of the uom_of_price. For example 12 oz. Used in ticketing. |
Table 5-519 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| ticketPerCount | No | Number (12,4) | Size to be used on the ticket in terms of the uom_of_price. For example, if the user wants the ticket to have the label print the price per ounce, this value would be 1. If the user wanted the price per 100 grams this value would be 100. Used in ticketing. |
| ticketUom | No | String (4) | Unit of measure that will be used on the ticket for this item. |
| primaryVariant | No | String (25) | This feld is used to address sales of PLUs (i. e. above transaction level items) when inventory is tracked at a lower level (i. e. UPC). This feld will only contain a value for items one level higher than the transaction level. |
| primaryCostPack | No | String (25) | This feld contains an item number that is a simple pack containing the item in the item column for this record. If populated, the cost of the future cost table will be driven from the simple pack and the deals and cost changes for the simple pack. |
| inboundHandlingDays | No | Number (2) | This feld indicates the number of inbound handling days for an item at a warehouse type location. |
Table 5-519 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| rangedInd | No | String (1) | This column determines if the location is ranged intentionally by the user for replenishment/selling or incidentally ranged by the RMS programs when item is not ranged to a specifc location on the transaction. |
| costingLocation | No | Number (10) | Numeric identifer of the costing location for the franchise store. This feld may contain a store or a warehouse. |
| sellingPhaseStartDate | No | date | It is used to determine the timing of the generation of markdown recommendation, which will occur x weeks after the start of this phase. |
| updSellDateOnStOrdRc pt | No | String (1) | This indicates whether or not to update the Selling Phase Start Date for the item/loc when a purchase order of this item is received at the store. |
| updSellDateOnWh2stR cpt | No | String (1) | This indicates whether or not to update the Selling Phase Start Date for the item/loc when a warehouse to store transfer/ allocation of this item is received at the store. |
| updSellDateOnSt2stRc pt | No | String (1) | This indicates whether or not to update the Selling Phase Start Date for the item/loc when a store to store transfer of this item is received at the store. |
Table 5-519 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| minUnitsForSellDateR eset | No | Number (12,4) | This feld contains the minimum shipped quantity of an item on a transfer/allocation that will trigger the resetting of the Selling Phase Start Date. This value is only used if either of the Set Selling Start Date upon Receipt of a Warehouse to Store Transfer/Allocation or Set Selling Start Date upon Receipt of a Store to Store Transfer are set to Yes (Y). |
| mfgSugRetailInclTax | No | Number (20,4) | This feld holds the tax-inclusive Manufacturer Suggested Retail in local currency and in item’s standard UOM. It is used when default_tax_type is GTS or SVAT. |
| mfgSugRetailExclTax | No | Number (20,4) | This feld holds the tax-exclusive Manufacturer Suggested Retail in local currency and in item’s standard UOM. It is used when default_tax_type is SALES. |
| postingClassifer | No | String (6) | ‘Contains a classifer that will be used to segregate the sales posting of the item-loc combination to various GL accounts. Valid values are user- defnable on the RMS code tables under code_type ‘POCL’. |
Table 5-519 (Cont.) Locations - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
| trait | No | Record | Child node. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-520 Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| launchDate | No | date | The date the item should frst be sold at the location. Value will be downloaded to the POS. No internal processing occurs from this feld. |
| quantityKeyOptions | No | String (6) | Determines whether the qty key on a POS should be used for this item at the location. Valid values are in the code_type ‘RPO’. Current values include ’R - required’, ‘P - Prohibited’, and ‘O - Optional’. Additional values can be added to the code type |
Table 5-520 (Cont.) Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| manualPriceEntry | No | String (6) | Determines whether the price can/should be entered manually on a POS for this item at the location. Valid values are in the code_type ‘RPO’. Current values include ’R - required’, ‘P - Prohibited’, and ‘O - Optional’. Additional values can be added. |
| depositCode | No | String (6) | Indicates whether a deposit is associated with this item at the location. Values are in the code_type ‘DEPO’. The only processing in Merchandising is downloading it to the POS. Examples are None (NONE), Maine - 0.10 (ME2) and Maine - 0.05 (ME1). |
| foodStampInd | No | String (1) | Indicates whether the item is approved for food stamps at the location. This value will be downloaded to the POS. |
| wicInd | No | String (1) | Indicates whether the item is approved for WIC at the location. This value will be downloaded to the POS. |
| proportionalTarePerce nt | No | Number (12,4) | For items sold by weight, this is the proportion of the total weight of a unit of an item that is packaging. |
| fxedTareValue | No | Number (12,4) | Holds the weight of the packaging in items sold by weight at the location; i. e. if the tare item is bulk candy, this is weight of the bag and twist tie). The only processing Merchandising does is to download it to POS. |
Table 5-520 (Cont.) Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fxedTareUom | No | String (4) | Holds the unit of measure value associated with the tare value. The only processing Merchandising does involving the fxed tare value and UOM is downloading it to the POS. Fixed tare is not subtracted from items sold by weight when sales are uploaded to Merchandising, etc |
| rewardEligibleInd | No | String (1) | Holds whether the item is legally valid for various types of bonus point/award programs at the location. This value will be downloaded to the POS. |
| nationalBrandCompeti torItem | No | String (25) | Holds the nationally branded item to which you would like to compare the current item. This nationally branded item must exist as an item in Merchandising (i. e. on the item_master table). |
| returnPolicy | No | String (6) | The return policy for the item at the location. Valid values are in the code_type ’RETP’. This value will be downloaded to the POS. Examples are All returns accepted (ALL), Customer ID needed for return (ID) and Manager approval needed for return (MNGR). |
| stopSaleInd | No | String (1) | Indicates that sale of the item should be stopped immediately at the location (i. e. in case of recall etc). This value will be downloaded to the POS. |
Table 5-520 (Cont.) Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| electronicMarketClubs | No | String (6) | Code for the marketing clubs to which the item belongs at the location. Valid values are in the code_type ’MTKC’. Examples are Baby Club (B), Baby/ Family Clubs (BF) and Deli Club (D). |
| reportCode | No | String (6) | Code to determine which reports the location should run. Values are in the code type REPC (Report Code). Examples are All Locations Reports(ALL) and No Location Report (NO). |
| requiredShelfLifeOnSe lection | No | Number (4) | Holds the required shelf life for an item on selection in days. This feld is not required. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate this value to external systems that may need it. |
| requiredShelfLifeOnRe ceipt | No | Number (4) | Holds the required shelf life for an item on receipt in days. This feld is not required. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate this value to external systems that may need it for processing |
| investmentBuyShelfLif e | No | Number (4) | The Investment Buy- specifc shelf life for the item/location |
Table 5-520 (Cont.) Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| storeReorderableInd | No | String (1) | A code (Y or N) to indicate whether the store may re-order the item. Will default to N. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate this value to external systems. |
| rackSize | No | String (6) | Indicates the rack size that should be used for the item. Valid values for the feld are in the code_type ‘RACK’. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate to external systems. Examples are large (L), Medium (M) and Small (S). |
| fullPalletItem | No | String (1) | A code (Y or N) to indicate whether a store must reorder an item in full pallets only. Will default to N. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate to external systems. |
Table 5-520 (Cont.) Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inStoreMarketBasket | No | String (6) | The in store market basket code for this item/location. Valid values for the feld are in the code_type ’STMB’. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate this value to external systems. Examples are A item at this loc (A), B item at this loc (B) and C item at this loc (C). |
| storageLocation | No | String (7) | Holds the current storage location or bin number for the item at the location. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate this value to external systems that may need it for processing. |
| alternateStorageLocati on | No | String (7) | Holds the preferred alternate storage location or bin number for the item at the location. No Merchandising processing is based on the value in this feld. It is clients responsibility to communicate this value to external systems that may need it for processing |
| returnableInd | No | String (1) | This feld will contain a value of ‘Y’es when the item can be returned to the location |
| refundableInd | No | String (1) | This feld will contain a value of ‘Y’es when the item is refundable at the location. |
Table 5-520 (Cont.) Trait - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| backOrderInd | No | String (1) | This feld will contain a value of ‘Y’es when the item can be back ordered to the location |
Table 5-521 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-522 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-523 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100000024",
"hierarchyLevel": "S",
"locations": [
{
"hierarchyValue": 6000,
"primarySupplier": 6100,
"primaryCountry": "US",
"localItemDescription": "100000024 at 6000",
"status": "I",
"storeOrderMultiple": "E",
"receiveAsType": null,
"taxableInd": "N",
"ti": 1,
"hi": 1,
"dailyWastePercent": 1,
"localShortDescription": "100000024 at 6000",
"uinType": null,
"uinLabel": null,
"captureTime": null,
"externalUinInd": "N",
"sourceMethod": "S",
"sourceWarehouse": null,
"promotableInd": "N",
"rfidInd": "N",
"ticketMeasureOfAnEach": 2,
"ticketPerCount": 1,
"ticketUom": "EA",
"primaryVariant": "100100090",
"primaryCostPack": "100100080",
"inboundHandlingDays": 1,
"rangedInd": "Y",
"costingLocation": 199,
"sellingPhaseStartDate": "2001-12-31",
"updSellDateOnStOrdRcpt": "N",
"updSellDateOnWh2stRcpt": "N",
"updSellDateOnSt2stRcpt": "N",
"minUnitsForSellDateReset": 50,
"mfgSugRetailInclTax": 20,
"mfgSugRetailExclTax": 18.16,
"postingClassifier": "String",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": null
}
],
"trait": {
"launchDate": "2001-12-31",
"quantityKeyOptions": null,
"manualPriceEntry": null,
"depositCode": null,
"foodStampInd": "N",
"wicInd": "N",
"proportionalTarePercent": 3,
"fixedTareValue": 3,
"fixedTareUom": "EA",
"rewardEligibleInd": "N",
"nationalBrandCompetitorItem": null,
"returnPolicy": null,
"stopSaleInd": "N",
"electronicMarketClubs": null,
"reportCode": null,
"requiredShelfLifeOnSelection": 1000,
"requiredShelfLifeOnReceipt": 1000,
"investmentBuyShelfLife": 1000,
"storeReorderableInd": "Y",
"rackSize": null,
"fullPalletItem": null,
"inStoreMarketBasket": null,
"storageLocation": null,
"alternateStorageLocation": null,
"returnableInd": "N",
"refundableInd": "N",
"backOrderInd": "N"
},
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Item Number Reservation Upload Service
The following services are included in this functional area:
- Generate and Reserve Item Numbers
Manage Item Numbers
Functional Area
Items - Item Definition
Business Overview
This service allows external systems to create or delete item number reservations. A list of item identifiers can be provided to be reserved (or removed from reservation) within Merchandising. These pre-reserved numbers will not be considered for any auto-generated item numbers or manual item entry in Merchandising. Reserved numbers can be used as identifiers on new items through Item spreadsheet upload by providing the desired reserved item identifier and setting the Pre-Reserved flag to Yes on the Item_Master worksheet. During upload into Merchandising, the system will validate that the number exists as a reserved number. If found, the new item will be uploaded with the reserved number as its identifier and the reserved number will be deleted from the item reservation table ( SVC_ITEM_RESERVATION ).
-
With an Action of
CREATE, this service accepts one or more item numbers to be reserved. If the Action is left blank, it will be assumed to beCREATE.- The provided item identifiers must not correspond to existing items in Merchandising, nor should they be an existing reserved item number.
-
With an Action of
DELETE, this service accepts one or more currently reserved item numbers. These reservations will be removed, freeing up the identifiers for future item creation in Merchandising.- The provided item identifiers must be existing reserved item numbers.
Service Type
POST
ReST URL
MerchIntegrations/services/item/itemNumbers/manage
Input Payload Details
Table 5-524 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items identifers to be reserved. |
Table 5-525 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (10) | This optional feld should be used to delete an existing reserved item number. Valid values are CREATE or DELETE. If this is not provided, it is defaulted to CREATE. |
| item | Yes | String (25) | References the item identifer that the external system wants to reserve. This item identifer should not exist in item_masterandsvc_item_reservationtable. |
Table 5-526 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | Reference the item identifer that |
failed business validation | |||
| errorMessage | Yes | String (2000) | Contains the error message |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"action": "CREATE",
"item": "1000012332"
}
]
}
Response Code: 200 (Success) 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 do not match the schema definition for this service. The element businessError will be present if the payload passes schema validation but an exception is caught while processing the business logic.
Table 5-527 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | Reference the item identifer that |
| failed business validation | |||
| errorMessage | Yes | String (2000) | Contains the error message |
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": [
{
"item": "1000012332",
"errorMessage": "An item with this number is already in use"
}
]
}
Generate and Reserve Item Numbers
Functional Area
Items - Item Definition
Business Overview
This service allows external systems such as Oracle Retail Assortment Planning (AP) to send a request to Merchandising to generate and reserve one or more item numbers. The next available item numbers are generated by Merchandising and are sent back to the calling solution as a response. These reserved numbers will not be considered for any auto-generated item numbers or manual item entry in Merchandising.
-
This service allows the calling system to ask for 1 to n item numbers where n cannot exceed the ‘Maximum Item Reserved Quantity’, which is defined in the ‘Coresvc_Item_Configuration’ worksheet of the ‘Item Data Loading Configuration’ foundation data spreadsheet template, which is listed under the ‘Administration’ template type.
-
The service generates the numbers and they are considered reserved until they expire. The calling system can specify for how long the numbers are reserved. The days until expiry cannot exceed the ‘Maximum Item Expiry Days’, which is defined in the ‘Coresvc_Item_Configuration’ worksheet of the ‘Item Data Loading Configuration’ foundation data spreadsheet template, which is listed under the ‘Administration’ template type.
-
The generated numbers can be of any item number type for which Merchandising supports auto-generation: ITEM, UPC-A, UPC-AS, EAN13, or EAN13S.
-
Reserved numbers are stored in the Item Reservation table (SVC_ITEM_RESERVATION).
-
Reserved numbers can be used as identifiers on new items through Item spreadsheet upload by providing the desired, reserved item identifier and setting the Pre-Reserved flag to Yes on the Item_Master worksheet. During upload into Merchandising, the system will validate that the number exists as a reserved number. If found, the new item will be uploaded with the reserved number as its identifier and the reserved number will be deleted from the item reservation table (SVC_ITEM_RESERVATION).
Service Type
POST
ReST URL
MerchIntegrations/services/item/itemNumbers/reserve
Input Payload Details
Table 5-528 Reserve - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemNumberType | Yes | String (6) | Contains the type of item number to reserve. It must be a valid number type in RMS that supports auto generation of item numbers, including ITEM, UPC-A, UPC-AS, EAN13. |
| quantity | Yes | Number (10) | Contains the number of item numbers to reserve. The maximum number of items that can be requested is confgurable using Item Service confguration. |
| daysUntilExpiry | Yes | Number (10) | Indicates how long the calling solution wants Merchandising to retain the reservation. After this many days, the reservation will be released allowing these numbers to be used for other purposes. This is required and must be a value greater than 0. The max number of days is confgurable using Item Service confguration. |
Sample Input Message
{
"itemNumberType": "ITEM",
"quantity": 50,
"daysUntilExpiry": 14
}
Response Code: 200 (Success)
Table 5-529 ReserveResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of | This is collection record. Refer to |
| Object | corresponding record details |
Table 5-530 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Contains the unique item number reserved in RMS. |
| itemNumberType | Yes | String (6) | Contains the type of item number in the item feld. |
| expiryDate | Yes | date | The date when the reserved item number will expire. |
Sample Response Message
{
"items": [
{
"item": "100100076",
"itemNumberType": "UPC-A",
"expiryDate": "2001-12-31"
}
]
}
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"
]
}
Item Placeholder Upload Service
The following services are included in this functional area:
- Create Placeholder Items
Create Placeholder Items
Functional Area
Items - Item Definition
Business Overview
This service supports subscribing to new placeholder items (Style/Color or Styles) created in A&IP as part of the slow item creation workflow. Using this service, A&IP can create items in the Item induction staging area within Merchandising with partial information of the item that can be enriched at a later point using the item induction process. The item number fetched using the Reserve item number service for the placeholder item number is used by A&IP.
The following item attributes are defaulted in this service -
-
The transaction level of the item will be 2.
-
The item will be a regular (non-pack, non-catchweight), sellable, orderable, inventoried, merchandise one.
-
The item will be created in the Worksheet status
-
The standard UOM will be set to Each (EA)
-
The Store order multiple will be set to ‘E’ (Eaches).
-
The item number type will be Manual.
-
The aggregate indictors for the 2nd, 3rd and 4th differentiators will be set to ‘N’.
-
The pallet/case/inner name will be set to PAL/CS/INR respectively.
-
The only UDA supported is LV (List of Values)
Service Type
POST
ReST URL
MerchIntegrations/services/item/placeholderItems/create
Input Payload Details
Table 5-531 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | It’s a collection of Items record. Refer |
| Object | to items details |
Table 5-532 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| itemParent | No | String (25) | The item at the level above this item. This value must be predefned as an item on the ITEM_MASTER table. |
| itemLevel | Yes | Number (1) | The level of the item. Valid values are 1 - Style item, 2 - Sku |
Table 5-532 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diff1 | No | String (10) | A differentiator id which differentiates a transaction level item from its parent item. If the item on the message is a parent this feld may hold a differentiator group id. |
| dept | Yes | Number (4) | The number of the department to which this item belongs. This value must be predefned on the DEPS table. It cannot be modifed. |
| class | Yes | Number (4) | The number of the class to which the item belongs. This value must be predefned on the CLASS table. It cannot be modifed. |
| subclass | Yes | Number (4) | The number of the subclass to which the item belongs. This value must be predefned on the SUBCLASS table. It cannot be modifed. |
| itemDescription | Yes | String (250) | The long description of the item. |
| itemSuppliers | No | Collection of Object | It is a collection of ItemSupplier record. Refer to itemSupplier details |
| itemUdas | No | Collection of Object | It is a collection of ItemUda’s record. Refer to itemUdas details |
| itemAggregateInd | No | String (1) | Indicator to aggregate inventory and sales for the item. |
| diff1AggregateInd | No | String (1) | Indicator for the corresponding diff. Indicator to aggregate inventory and sales for an item at Parent/Diff level (e.g Style/Color or Style/Size). |
| brand | No | String (120) | This is added to capture the brand information of an item. |
Table 5-533 ItemSuppliers - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | Number (10) | The identifer of the supplier who sources the item. This value must be |
| predefned on the SUPS table. |
Table 5-534 ItemUdas - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | Yes | Number (5) | This feld contains a number identifying the User-Defned Attribute of type List of Value |
| udaValue | No | String (30) | This feld contains value of the Used Defned attribute for the item. |
Sample Input Message
{
"items": [
{
"item": "100100076",
"itemParent": null,
"itemLevel": "1",
"diff1": "BLACK",
"dept": 3041,
"class": 1,
"subclass": 1,
"itemDescription": "Placeholder item",
"itemSuppliers": [
{
"supplier": 2400
}
],
"itemUdas": [
{
"udaId": 25021,
"udaValue": "10"
}
],
"itemAggregateInd": "Y",
"diff1AggregateInd": "Y",
"brand": null
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Item Sourcing Upload Service
The following services are included in this functional area:
-
Create Item Supplier Countries
-
Create Item Supplier Countries of Manufacture
-
Create Item Supplier Country Dimensions
-
Create Item Supplier Country Locations
-
Create Item Supplier Translations
-
Create Item Suppliers
-
Delete Item Supplier Countries
-
Delete Item Supplier Countries of Manufacture
-
Delete Item Supplier Country Dimensions
-
Delete Item Supplier Country Locations
-
Delete Item Supplier Translations
-
Delete Item Suppliers
-
Update Item Supplier Countries
-
Update Item Supplier Countries of Manufacture
-
Update Item Supplier Country Dimensions
-
Update Item Supplier Country Locations
-
Update Item Supplier Translations
-
Update Item Suppliers
Create Item Supplier Countries
Functional Area
Items - Item Definition
Business Overview
This service is used to add country information to existing item supplier in Merchandising. The item supplier must already exist in Merchandising, else an error will be returned. Item supplier country can also be created together with the creation of a new item. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/supplier/countries/create
Input Payload Details
Table 5-535 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-536 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-537 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
| countryOfSourcing | No | Collection of Object | References a collection of country of sourcing of the item. |
Table 5-538 CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | Yes | String (3) | The identifer for the country where the item is sourced. This value must be predefned on the COUNTRY table. |
| primaryCountryInd | No | String (1) | This indicates if the country is the primary country for the item supplier. Valid values are Y (yes) and N (no). |
Table 5-538 (Cont.) CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| unitCost | No | Number (20,4) | The current corporate unit cost for the item in the supplier’s currency. This feld will only be used to establish the item supplier country unit cost; it cannot be modifed. |
| leadTime | No | Number (4) | This feld contains the number of days that will elapse between the date an order is written and the delivery to the store or warehouse from the supplier. This feld is defaulted from the default lead time set at the supplier level. |
| pickupLeadTime | No | Number (4) | Contains time it takes to get the item from the Supplier to the Initial Receiving Location. This value will be defaulted to the item_supp_country_loc pickup lead time feld. The ordering dialog will reference the item/supplier/country/ location pickup lead time as the value may vary by location. |
| mininumOrderQuantity | No | Number (12,4) | This feld contains the minimum quantity that can be ordered at one time from the supplier for the item. |
| maximumOrderQuantity | No | Number (12,4) | This feld contains the maximum quantity that can be ordered at one time from the supplier for the item. |
| supplierHierarchyLevel1 | No | String (10) | Highest level of supplier hierarchy (e. g. manufacturer). This will be used for assigning rebates that come from a level in the supply chain that is higher than the supplier. This information is stored on item_supp_country for defaulting into item_supp_country_loc. |
| supplierHierarchyLevel2 | No | String (10) | Second highest level of supplier hierarchy. This information is stored on item_supp_country for defaulting into item_supp_country_loc. |
| supplierHierarchyLevel3 | No | String (10) | Third highest level of supplier hierarchy. This information is stored on item_supp_country for defaulting into item_supp_country_loc. |
| defaultUop | No | String (6) | Contains the default unit of purchase for the item/supplier/country. Valid values include: Standard Units of Measure C for Case P for Pallet |
| supplierPackSize | No | Number (12,4) | Contains the quantity that orders must be placed in multiples of for the supplier for the item. |
| innerPackSize | No | Number (12,4) | This feld contains the break pack size for this item from the supplier. |
Table 5-538 (Cont.) CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| ti | No | Number (12) | Number of shipping units (cases) that make up one tier of a pallet. Multiply TI x HI to get total number of units (cases) for a pallet. |
| hi | No | Number (12) | Number of tiers that make up a complete pallet (height). Multiply TI x HI to get total number of units (cases) for a pallet. |
| costUom | No | String (4) | Unit of measure associated with the item cost. It is held to allow costs to be managed in a separate UOM from the standard UOM. |
| toleranceType | No | String (6) | The unit of the tolerances for catch weight simple packs: A - actual, P - percent. |
| minimumTolerance | No | Number (12,4) | The minimum tolerance value for a catch weight simple pack. |
| maximumTolerance | No | Number (12,4) | The maximum tolerance value for a catch weight simple pack. |
| supplierHierarchyType1 | No | String (6) | Identifes partner type of supplier hierarchy level 1 for the foreign key to the partner table. |
| supplierHierarchyType2 | No | String (6) | Identifes partner type of supplier hierarchy level 2 for the foreign key to the partner table. |
| supplierHierarchyType3 | No | String (6) | Identifes partner type of supplier hierarchy level 3 for the foreign key to the partner table. |
| roundLevel | No | String (6) | This column will be used to determine how order quantities will be rounded to Case, Layer and Pallet. |
| roundToInnerPercentage | No | Number (12,4) | The Inner Rounding Threshold value. Used to determine whether to round partial Inner quantities up or down. |
| roundToCasePercentage | No | Number (12,4) | The Case Rounding Threshold value. Used to determine whether to round partial Case quantities up or down. |
| roundToLayerPercentage | No | Number (12,4) | The Layer Rounding Threshold value. Used to determine whether to round partial Layer quantities up or down. |
| roundToPalletPercentage | No | Number (12,4) | The Pallet Rounding Threshold value. Used to determine whether to round partial Pallet quantities up or down. |
| packingMethod | No | String (6) | This feld indicates whether the packing method of the item in the container is Flat or Hanging. Values for this feld are defned in PKMT code type. Examples are: FLAT - Flat, HANG - Hanging. |
Table 5-538 (Cont.) CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| defaultExpenseProflesInd | No | String (1) | This feld indicates whether expense profles will be defaulted to new item- supplier-country relationship. |
| purchaseType | No | String (1) | This contains a code to indicate whether the item is normal merchandise (i. e. owned by the retailer), consignment stock or a concession item. Valid values are 0 - Owned, 1 - Consignment, 2 - Concession. |
| calculationBasis | No | String (1) | This indicates if the cost for the consignment/concession item will be managed either based on cost per unit or as a percentage of retail. Valid values are C - Cost per Unit, P - Purchase Rate. |
| purchaseRate | No | Number (12,4) | This column contains the percentage of the retail price which will determine the cost paid to the supplier for a consignment or concession item. |
| pricingControl | No | String (1) | This indicates whether the price for the consignment/concession item will be managed by supplier or by retailer when supplier-controlled pricing for Consignment/Concession ownership model is used within the Merchandising suite of solutions. Valid values are: R – Retailer S – Supplier If no value is provided for consignment/concession items, this will be defaulted based on the default pricing control at supplier site level. |
| dimension | No | Collection of Object | References a collection of item supplier country dimensions. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-539 Dimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dimensionObject | Yes | String (6) | Specifc object whose dimensions are specifed in this record (e. g. case, pallet, each). Valid codes are defned in the DIMO code type. Examples are: CA - Case, EA - Each. |
| tareWeight | No | Number (12,4) | Amount of weight to be subtracted for packaging materials. Used to calculate the true net weight of the dimensionObject. |
| tareType | No | String (6) | Indicates if tare weight for this dimensionObject is wet or dry. Valid values are defned in the TARE code type. Examples are: W - Wet tare weight, D - Dry tare weight. |
| lwhUom | No | String (4) | Unit of measurement for length, width, and height (e. g. inches, centimeters, feet). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = DIMEN. |
| length | No | Number (12,4) | Length of dim_object measured in units specifed in lwh_uom. |
| width | No | Number (12,4) | Width of dim_object measured in units specifed in lwh_uom. |
| height | No | Number (12,4) | Height of dim_object measured in units specifed in lwh_uom. |
| liquidVolume | No | Number (12,4) | Liquid volume, or capacity, of dim_object measured in units specifed in volume_uom. Liquid volumes are only convertible to other liquid volumes. |
| liquidVolumeUom | No | String (4) | Unit of measurement for liquid_volume (e. g. ounces, liters). Liquid volumes are only convertible to other liquid volumes. Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = LVOL. |
| statisticalCase | No | String (12) | Statistical value of the dim_objects dimensions to be used for loading purposes. |
| weightUom | No | String (4) | Unit of measurement for weight (e. g. pounds, kilograms). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = MASS. |
| weight | No | Number (12,4) | Weight of dim_object measured in units specifed in weight_uom. |
Table 5-539 (Cont.) Dimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| netWeight | No | Number (12,4) | Unit of measurement for length, width, and height (e. g. inches, centimeters, feet). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = DIMEN. |
| presentationMethod | No | String (6) | Describes the packaging (if any) being taken into consideration in the specifed dimensions. Valid codes are defned in the PCKT code type. Examples are: JHOOK - Peggable Packaging, STACK - Stackable Packaging. |
Table 5-540 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-541 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-542 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"countryOfSourcing": [
{
"originCountry": "US",
"primaryCountryInd": "Y",
"unitCost": 9.65,
"leadTime": 1,
"pickupLeadTime": 1,
"mininumOrderQuantity": 1,
"maximumOrderQuantity": 1,
"supplierHierarchyLevel1": null,
"supplierHierarchyLevel2": null,
"supplierHierarchyLevel3": null,
"defaultUop": null,
"supplierPackSize": 1,
"innerPackSize": 1,
"ti": 1,
"hi": 1,
"costUom": "EA",
"toleranceType": null,
"minimumTolerance": 76.00,
"maximumTolerance": 69.00,
"supplierHierarchyType1": null,
"supplierHierarchyType2": null,
"supplierHierarchyType3": null,
"roundLevel": "C",
"roundToInnerPercentage": 50,
"roundToCasePercentage": 50,
"roundToLayerPercentage": 50,
"roundToPalletPercentage": 50,
"packingMethod": "HANG",
"defaultExpenseProfilesInd": "Y",
"purchaseType": "0",
"calculationBasis": null,
"purchaseRate": 18.00,
"pricingControl": "R",
"dimension": [
{
"dimensionObject": "CA",
"tareWeight": 3,
"tareType": "D",
"lwhUom": "IN",
"length": 3,
"width": 3,
"height": 3,
"liquidVolume": 3,
"liquidVolumeUom": "EA",
"statisticalCase": null,
"weightUom": "EA",
"weight": 3,
"netWeight": 11.00,
"presentationMethod": null
}
],
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Item Supplier Countries of Manufacture
Functional Area
Items - Item Definition
Business Overview
This service is used to add item supplier manufacturing country to an existing item supplier in Merchandising. The item supplier must already exist in Merchandising, else an error will be returned. Item supplier manufacturing country can also be created together with the creation of a new item. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/supplier/countriesOfManufacture/create
Input Payload Details
Table 5-543 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-544 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
Table 5-544 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
| localizationExtensions | No | Collection of | Holds optional localization attributes |
| Object | that will be processed by the localization extension module. |
Table 5-545 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
| countryOfManufacture | No | Collection of Object | References a collection of country of manufacture of the item. |
Table 5-546 CountryOfManufacture - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| manufacturerCountry | Yes | String (23) | Country ID of manufacturer. |
| primaryManufacturerCount ryInd | No | String (1) | Indicates if it’s the primary country of manufacturer. |
Table 5-547 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-548 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100300001",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"countryOfManufacture": [
{
"manufacturerCountry": "BR",
"primaryManufacturerCountryInd": "N"
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Item Supplier Country Dimensions
Functional Area
Items - Item Definition
Business Overview
This service is used to add dimensions to an existing item supplier country in Merchandising. Dimensions are not required for an item. However, if non-standard units of measure will be used for the item there must be a case-type dimension provided. For example, for a selling unit retail to be defined in ounces there must be a dimension defined containing the liquid and volume to be used when converting between a unit and an ounce. The item supplier country must already exist in Merchandising, else an error will be returned. Item supplier country dimension can also be created together with the creation of a new item. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/supplier/country/dimensions/create
Input Payload Details
Table 5-549 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-550 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-551 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
| countryOfSourcing | No | Collection of Object | References a collection of country of sourcing of the item. |
Table 5-552 CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | Yes | String (3) | The identifer for the country where the item is sourced. This value must be predefned on the COUNTRY table. |
| dimension | No | Collection of Object | References a collection of item supplier country dimensions. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-553 Dimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dimensionObject | Yes | String (6) | Specifc object whose dimensions are specifed in this record (e. g. case, pallet, each). Valid codes are defned in the DIMO code type. Examples are: CA - Case, EA - Each. |
| tareWeight | No | Number (12,4) | Amount of weight to be subtracted for packaging materials. Used to calculate the true net weight of the dimensionObject. |
| tareType | No | String (6) | Indicates if tare weight for this dimensionObject is wet or dry. Valid values are defned in the TARE code type. Examples are: W - Wet tare weight, D - Dry tare weight. |
| lwhUom | No | String (4) | Unit of measurement for length, width, and height (e. g. inches, centimeters, feet). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = DIMEN. |
| length | No | Number (12,4) | Length of dim_object measured in units specifed in lwh_uom. |
| width | No | Number (12,4) | Width of dim_object measured in units specifed in lwh_uom. |
| height | No | Number (12,4) | Height of dim_object measured in units specifed in lwh_uom. |
Table 5-553 (Cont.) Dimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| liquidVolume | No | Number (12,4) | Liquid volume, or capacity, of dim_object measured in units specifed in volume_uom. Liquid volumes are only convertible to other liquid volumes. |
| liquidVolumeUom | No | String (4) | Unit of measurement for liquid_volume (e. g. ounces, liters). Liquid volumes are only convertible to other liquid volumes. Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = LVOL. |
| statisticalCase | No | String (12) | Statistical value of the dim_objects dimensions to be used for loading purposes. |
| weightUom | No | String (4) | Unit of measurement for weight (e. g. pounds, kilograms). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = MASS. |
| weight | No | Number (12,4) | Weight of dim_object measured in units specifed in weight_uom. |
| netWeight | No | Number (12,4) | Unit of measurement for length, width, and height (e. g. inches, centimeters, feet). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = DIMEN. |
| presentationMethod | No | String (6) | Describes the packaging (if any) being taken into consideration in the specifed dimensions. Valid codes are defned in the PCKT code type. Examples are: JHOOK - Peggable Packaging, STACK - Stackable Packaging. |
Table 5-554 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-555 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
Table 5-555 (Cont.) Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "102250001",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"countryOfSourcing": [
{
"originCountry": "US",
"dimension": [
{
"dimensionObject": "CA",
"tareWeight": 3,
"tareType": "D",
"lwhUom": "IN",
"length": 3,
"width": 3,
"height": 3,
"liquidVolume": 3,
"liquidVolumeUom": "EA",
"statisticalCase": null,
"weightUom": "EA",
"weight": 3,
"netWeight": 11.00,
"presentationMethod": null
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Item Supplier Country Locations
Functional Area
Items - Item Definition
Business Overview
This service is used to add location information to an existing item supplier country in Merchandising. Records are not required at this level for an item however, if provided the values override those defined at the item/supplier/country level for the specified location(s). The item supplier country must already exist in Merchandising, else an error will be returned.
Item supplier country location can also be created together with the creation of a new item. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/supplier/country/locations/create
Input Payload Details
Table 5-556 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-557 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| itemSuppCountryLocHierarc hyLevel | No | String (2) | The level of the organizational hierarchy used to create item supplier country location relationships. Valid values are: ‘AS’ - All Store, ‘S’ - Store, ‘DW’- Default Warehouse, ‘AW’ - All Warehouses, ‘W’ - Warehouse, ‘PW’ - Physical Warehouse, ‘D’ - District, ‘R’ - Region, ‘A’ - Area, ‘T’ - Transfer zone, ‘L’ - Location trait. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-558 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
Table 5-558 (Cont.) Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| countryOfSourcing | No | Collection of | References a collection of country of |
| Object | sourcing of the item. |
Table 5-559 CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | Yes | String (3) | The identifer for the country where the item is sourced. This value must be predefned on the COUNTRY table. |
| location | No | Collection of Object | References a collection of item supplier country locations. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-560 Location - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyId | No | Number (10) | The specifc location id for this Item Supplier Country Loc message. Corresponds with the value used in the iscloc_hier_level feld. |
| unitCost | No | Number (20,4) | The unit cost for the item at the item supplier country loc level in the supplier’s currency. This feld will be used for creating new records, not updating existing records. |
| negotiatedItemCost | No | Number (20,4) | This will hold the supplier negotiated item cost. |
| pickupLeadTime | No | Number (4) | Contains time it takes to get the item from the Supplier to the Initial Receiving Location. This value will be defaulted to the item_supp_country_loc pickup lead time feld. The ordering dialog will reference the item/supplier/country/ location pickup lead time as the value may vary by location. |
| roundLevel | No | String (6) | This column will be used to determine how order quantities will be rounded to Case, Layer and Pallet. |
| roundToCasePercentage | No | Number (12,4) | The Case Rounding Threshold value. Used to determine whether to round partial case quantities up or down. |
| roundToLayerPercentage | No | Number (12,4) | The Layer Rounding Threshold value. Used to determine whether to round partial Layer quantities up or down. |
Table 5-560 (Cont.) Location - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| roundToPalletPercentage | No | Number (12,4) | The Pallet Rounding Threshold value. Used to determine whether to round partial Pallet quantities up or down. |
| roundToInnerPercentage | No | Number (12,4) | The Inner Rounding Threshold value. Used to determine whether to round partial Inner quantities up or down. |
| supplierHierarchyLevel1 | No | String (10) | Highest level of supplier hierarchy (e. g. manufacturer). This will be used forassigning rebates that come from a level in the supply chain that is higher than the supplier. |
| supplierHierarchyLevel2 | No | String (10) | Second highest level of supplier hierarchy. Rebates at this level will include all eligible supplier/item/ country/loc records assigned to this supplier hierarchy level. |
| supplierHierarchyLevel3 | No | String (10) | Third highest level of supplier hierarchy, used for assigning rebates by a level other than supplier. |
| costUom | No | String (4) | Unit of measure associated with the item cost. It is held to allow costs to be managed in a separate UOM from the standard UOM. |
| purchaseType | No | String (1) | This contains a code to indicate whether the item is normal merchandise (i. e. owned by the retailer), consignment stock or a concession item. Valid values are 0 - Owned, 1 - Consignment, 2 - Concession. |
| calculationBasis | No | String (1) | This indicates if the cost for the consignment/concession item will be managed either based on cost per unit or as a percentage of retail. Valid values are C - Cost per Unit, P - Purchase Rate. |
| purchaseRate | No | Number (12,4) | This column contains the percentage of the retail price which will determine the cost paid to the supplier for a consignment or concession item. |
Table 5-560 (Cont.) Location - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| pricingControl | No | String (1) | This indicates whether the price for the consignment/concession item will be managed by supplier or by retailer when supplier-controlled pricing for Consignment/Concession ownership model is used within the Merchandising suite of solutions. Valid values are: |
| • R – Retailer | |||
| • S – Supplier If no value is provided for consignment/concession items, this will be defaulted based on the default pricing control at supplier site level. | |||
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named, fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
Table 5-561 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-562 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-563 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100041",
"itemSuppCountryLocHierarchyLevel": "S",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"countryOfSourcing": [
{
"originCountry": "US",
"location": [
{
"hierarchyId": 1521,
"unitCost": 9.65,
"negotiatedItemCost": 9.65,
"pickupLeadTime": 1,
"roundLevel": "C",
"roundToCasePercentage": 50,
"roundToLayerPercentage": 50,
"roundToPalletPercentage": 50,
"roundToInnerPercentage": 50,
"supplierHierarchyLevel1": null,
"supplierHierarchyLevel2": null,
"supplierHierarchyLevel3": null,
"costUom": "EA",
"purchaseType": "0",
"calculationBasis": null,
"purchaseRate": 3,
"pricingControl": "R",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Item Supplier Translations
Functional Area
Items - Item Definition
Business Overview
If translations have been defined for items, at the supplier level, then they can be integrated as part of this service. This service will accept the language and the description specified in the language to add supplier level translations to an existing item in Merchandising.
Service Type
POST
ReST URL
MerchIntegrations/services/item/supplier/translations/create
Input Payload Details
Table 5-564 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-565 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-566 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
| translation | No | Collection of Object | References a collection of translations of item supplier description felds. |
Table 5-567 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This is the language ID. |
Table 5-567 (Cont.) Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplierDiff1 | No | String (120) | This feld contains the frst supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff2 | No | String (120) | This feld contains the second supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff3 | No | String (120) | This feld contains the third supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff4 | No | String (120) | This feld contains the fourth supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierLabel | No | String (15) | The supplier label for the item. |
Table 5-568 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-569 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"translation": [
{
"language": 13,
"supplierDiff1": "1",
"supplierDiff2": "2",
"supplierDiff3": "3",
"supplierDiff4": "4",
"supplierLabel": ""
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Item Suppliers
Functional Area
Items - Item Definition
Business Overview
This service is used to add item suppliers to an existing item in Merchandising. The item must already exist in Merchandising, else an error will be returned. Item supplier can also be created together with the creation of a new item. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/suppliers/create
Input Payload Details
Table 5-570 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-571 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestinatio n | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-572 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
| primarySupplierInd | No | String (3) | Indicates if the supplier is the primary supplier for the item. Valid values are Y (yes) and N (no). |
| vpn | No | String (30) | The vendor product number associated with the item. |
| supplierLabel | No | String (15) | The supplier label for the item. |
| consignmentRate | No | Number (12,4) | This feld contains the consignment rate for this item for the supplier. |
| supplierDiscontinueDa te | No | date | Date which the supplier discontinues an item. The retailor should be aware that the supplier is able to reuse a UPC after 30 months and should work to ensure that no data exists in RMS for a UPC 30 months after it has been discontinued. |
| directShipInd | No | String (1) | Contains a value of Yes to indicate that any item asssociated with this supplier is eligible for a direct shipment from the supplier to the customer. |
| palletName | No | String (6) | Code referencing the name used to refer to the pallet. Valid codes are defned in the PALN code type. Examples are FLA - Flat, PAL - Pallet. |
Table 5-572 (Cont.) Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| caseName | No | String (6) | Code referencing the name used to refer to the case. Valid codes are defned in the CASN code type. Examples are PACK - Pack, BX - Box, BG - Bag. |
| innerName | No | String (6) | Code referencing the name used to refer to the inner. Valid codes are defned in the INRN code type. Examples are SCS - Sub-Case, SPACK - Sub- Pack. |
| primaryCaseSize | No | String (6) | Used only if AIP is interfaced. Indicates the primary case size for the item supplier when an orderable item is confgured for informal case types. |
| supplierDiff1 | No | String (120) | This feld contains the frst supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff2 | No | String (120) | This feld contains the second supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff3 | No | String (120) | This feld contains the third supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff4 | No | String (120) | This feld contains the fourth supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
Table 5-572 (Cont.) Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| concessionRate | No | Number (12,4) | The concession rate is the margin that a particular supplier receives for the sale of a concession item. |
| defaultExpenseProfles Ind | No | String (1) | This feld indicates whether expense profles will be defaulted to new item- supplier relationship. Valid values are Y (yes) and N (no). |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
| translation | No | Collection of Object | References a collection of translations of item supplier description felds. |
| countryOfSourcing | No | Collection of Object | References a collection of country of sourcing of the item. |
| countryOfManufactur e | No | Collection of Object | References a collection of country of manufacture of the item. |
| uom | No | Collection of Object | Child node holding miscellaneous units of measure (UOM) for an item/supplier combination. |
Table 5-573 CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | Yes | String (3) | The identifer for the country where the item is sourced. This value must be predefned on the COUNTRY table. |
| primaryCountryInd | No | String (1) | This indicates if the country is the primary country for the item supplier. Valid values are Y (yes) and N (no). |
| unitCost | No | Number (20,4) | The current corporate unit cost for the item in the supplier’s currency. This feld will only be used to establish the item supplier country unit cost; it cannot be modifed. |
| leadTime | No | Number (4) | This feld contains the number of days that will elapse between the date an order is written and the delivery to the store or warehouse from the supplier. This feld is defaulted from the default lead time set at the supplier level. |
| pickupLeadTime | No | Number (4) | Contains time it takes to get the item from the Supplier to the Initial Receiving Location. This value will be defaulted to the item_supp_country_loc pickup lead time feld. The ordering dialog will reference the item/supplier/country/ location pickup lead time as the value may vary by location. |
| mininumOrderQuantit y | No | Number (12,4) | This feld contains the minimum quantity that can be ordered at one time from the supplier for the item. |
Table 5-573 (Cont.) CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| maximumOrderQuant ity | No | Number (12,4) | This feld contains the maximum quantity that can be ordered at one time from the supplier for the item. |
| supplierHierarchyLev el1 | No | String (10) | Highest level of supplier hierarchy (e. g. manufacturer). This will be used for assigning rebates that come from a level in the supply chain that is higher than the supplier. This information is stored on item_supp_country for defaulting into item_supp_country_loc . |
| supplierHierarchyLev el2 | No | String (10) | Second highest level of supplier hierarchy. This information is stored on item_supp_country for defaulting into item_supp_country_loc . |
| supplierHierarchyLev el3 | No | String (10) | Third highest level of supplier hierarchy. This information is stored on item_supp_country for defaulting into item_supp_country_loc . |
| defaultUop | No | String (6) | Contains the default unit of purchase for the item/supplier/ country. Valid values include: Standard Units of Measure C for Case P for Pallet |
| supplierPackSize | No | Number (12,4) | Contains the quantity that orders must be placed in multiples of for the supplier for the item. |
| innerPackSize | No | Number (12,4) | This feld contains the break pack size for this item from the supplier. |
Table 5-573 (Cont.) CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| ti | No | Number (12) | Number of shipping units (cases) that make up one tier of a pallet. Multiply TI x HI to get total number of units (cases) for a pallet. |
| hi | No | Number (12) | Number of tiers that make up a complete pallet (height). Multiply TI x HI to get total number of units (cases) for a pallet. |
| costUom | No | String (4) | Unit of measure associated with the item cost. It is held to allow costs to be managed in a separate UOM from the standard UOM. |
| toleranceType | No | String (6) | The unit of the tolerances for catch weight simple packs: A - actual, P - percent. |
| minimumTolerance | No | Number (12,4) | The minimum tolerance value for a catch weight simple pack. |
| maximumTolerance | No | Number (12,4) | The maximum tolerance value for a catch weight simple pack. |
| supplierHierarchyTyp e1 | No | String (6) | Identifes partner type of supplier hierarchy level 1 for the foreign key to the partner table. |
| supplierHierarchyTyp e2 | No | String (6) | Identifes partner type of supplier hierarchy level 2 for the foreign key to the partner table. |
| supplierHierarchyTyp e3 | No | String (6) | Identifes partner type of supplier hierarchy level 3 for the foreign key to the partner table. |
| roundLevel | No | String (6) | This column will be used to determine how order quantities will be rounded to Case, Layer and Pallet. |
Table 5-573 (Cont.) CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| roundToInnerPercenta ge | No | Number (12,4) | The Inner Rounding Threshold value. Used to determine whether to round partial Inner quantities up or down. |
| roundToCasePercentag e | No | Number (12,4) | The Case Rounding Threshold value. Used to determine whether to round partial Case quantities up or down. |
| roundToLayerPercent age | No | Number (12,4) | The Layer Rounding Threshold value. Used to determine whether to round partial Layer quantities up or down. |
| roundToPalletPercenta ge | No | Number (12,4) | The Pallet Rounding Threshold value. Used to determine whether to round partial Pallet quantities up or down. |
| packingMethod | No | String (6) | This feld indicates whether the packing method of the item in the container is Flat or Hanging. Values for this feld are defned in PKMT code type. Examples are: FLAT - Flat, HANG - Hanging. |
| defaultExpenseProfles Ind | No | String (1) | This feld indicates whether expense profles will be defaulted to new item- supplier-country relationship. |
| purchaseType | No | String (1) | This contains a code to indicate whether the item is normal merchandise (i. e. owned by the retailer), consignment stock or a concession item. Valid values are 0 - Owned, 1 - Consignment, 2 - Concession. |
Table 5-573 (Cont.) CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| calculationBasis | No | String (1) | This indicates if the cost for the consignment/ concession item will be managed either based on cost per unit or as a percentage of retail. Valid values are C - Cost per Unit, P - Purchase Rate. |
| purchaseRate | No | Number (12,4) | This column contains the percentage of the retail price which will determine the cost paid to the supplier for a consignment or concession item. |
| pricingControl | No | String (1) | This indicates whether the price for the consignment/ concession item will be managed by supplier or by retailer when supplier- controlled pricing for Consignment/ Concession ownership model is used within the Merchandising suite of solutions.Valid values are:R - Retailer, S - Supplier.If no value is provided for consignment/ concession items, this will be defaulted based on the default pricing control at supplier site level. |
| dimension | No | Collection of Object | References a collection of item supplier country dimensions. |
Table 5-573 (Cont.) CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-574 Dimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dimensionObject | Yes | String (6) | Specifc object whose dimensions are specifed in this record (e. g. case, pallet, each). Valid codes are defned in the DIMO code type. Examples are: CA - Case, EA - Each. |
| tareWeight | No | Number (12,4) | Amount of weight to be subtracted for packaging materials. Used to calculate the true net weight of the dimensionObject. |
| tareType | No | String (6) | Indicates if tare weight for this dimensionObject is wet or dry. Valid values are defned in the TARE code type. Examples are: W - Wet tare weight, D - Dry tare weight. |
Table 5-574 (Cont.) Dimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| lwhUom | No | String (4) | Unit of measurement for length, width, and height (e. g. inches, centimeters, feet). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = DIMEN. |
| length | No | Number (12,4) | Length of dim_object measured in units specifed in lwh_uom. |
| width | No | Number (12,4) | Width of dim_object measured in units specifed in lwh_uom. |
| height | No | Number (12,4) | Height of dim_object measured in units specifed in lwh_uom. |
| liquidVolume | No | Number (12,4) | Liquid volume, or capacity, of dim_object measured in units specifed in volume_uom. Liquid volumes are only convertible to other liquid volumes. |
| liquidVolumeUom | No | String (4) | Unit of measurement for liquid_volume (e. g. ounces, liters). Liquid volumes are only convertible to other liquid volumes. Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = LVOL. |
| statisticalCase | No | String (12) | Statistical value of the dim_objects dimensions to be used for loading purposes. |
| weightUom | No | String (4) | Unit of measurement for weight (e. g. pounds, kilograms). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = MASS. |
Table 5-574 (Cont.) Dimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| weight | No | Number (12,4) | Weight of dim_object measured in units specifed in weight_uom. |
| netWeight | No | Number (12,4) | Unit of measurement for length, width, and height (e. g. inches, centimeters, feet). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = DIMEN. |
| presentationMethod | No | String (6) | Describes the packaging (if any) being taken into consideration in the specifed dimensions. Valid codes are defned in the PCKT code type. Examples are: JHOOK - Peggable Packaging, STACK - Stackable Packaging. |
Table 5-575 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-576 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-577 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-578 CountryOfManufacture - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| manufacturerCountry | Yes | String (23) | Country ID of manufacturer. |
| primaryManufacturer CountryInd | No | String (1) | Indicates if it’s the primary country of manufacturer. |
Table 5-579 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This is the language ID. |
| supplierDiff1 | No | String (120) | This feld contains the frst supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff2 | No | String (120) | This feld contains the second supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff3 | No | String (120) | This feld contains the third supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
Table 5-579 (Cont.) Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplierDiff4 | No | String (120) | This feld contains the fourth supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierLabel | No | String (15) | The supplier label for the item. |
Table 5-580 Uom - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| uom | Yes | String (4) | Contains the unit of measure that the item is being measured in. |
| value | Yes | Number (20,4) | Contains the equivalent value of the Item/Suppliers shipping carton in the associated unit of measure. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"primarySupplierInd": "Y",
"vpn": null,
"supplierLabel": null,
"consignmentRate": 3,
"supplierDiscontinueDate": "2001-12-31",
"directShipInd": "Y",
"palletName": "PAL",
"caseName": "CS",
"innerName": "INR",
"primaryCaseSize": null,
"supplierDiff1": null,
"supplierDiff2": null,
"supplierDiff3": null,
"supplierDiff4": null,
"concessionRate": 1,
"defaultExpenseProfilesInd": "Y",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"translation": [
{
"language": 2,
"supplierDiff1": null,
"supplierDiff2": null,
"supplierDiff3": null,
"supplierDiff4": null,
"supplierLabel": null
}
],
"countryOfSourcing": [
{
"originCountry": "US",
"primaryCountryInd": "Y",
"unitCost": 9.65,
"leadTime": 1,
"pickupLeadTime": 1,
"mininumOrderQuantity": 1,
"maximumOrderQuantity": 1,
"supplierHierarchyLevel1": null,
"supplierHierarchyLevel2": null,
"supplierHierarchyLevel3": null,
"defaultUop": "EA",
"supplierPackSize": 1,
"innerPackSize": 1,
"ti": 1,
"hi": 1,
"costUom": "EA",
"toleranceType": null,
"minimumTolerance": 76.00,
"maximumTolerance": 69.00,
"supplierHierarchyType1": null,
"supplierHierarchyType2": null,
"supplierHierarchyType3": null,
"roundLevel": "C",
"roundToInnerPercentage": 50,
"roundToCasePercentage": 50,
"roundToLayerPercentage": 50,
"roundToPalletPercentage": 50,
"packingMethod": "HANG",
"defaultExpenseProfilesInd": "Y",
"purchaseType": "0",
"calculationBasis": null,
"purchaseRate": 18.00,
"pricingControl": "R",
"dimension": [
{
"dimensionObject": "PA",
"tareWeight": 17.00,
"tareType": "D",
"lwhUom": "IN",
"length": 3,
"width": 3,
"height": 3,
"liquidVolume": 3,
"liquidVolumeUom": null,
"statisticalCase": null,
"weightUom": "LBS",
"weight": 3,
"netWeight": 11.00,
"presentationMethod": null
}
],
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
],
"countryOfManufacture": [
{
"manufacturerCountry": "BR",
"primaryManufacturerCountryInd": "N"
}
],
"uom": [
{
"uom": "STK",
"value": 10
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Create Item Supplier UOM
Functional Area
Items - Item Definition
Business Overview
Service to create miscellaneous units of measure (UOM) for an item/supplier combination. Supplier UOM can also be added together with the creation of a new item. This UOM indicates the equivalent of one unit of the item in the specified UOM.
For example, if the item is a single package of cigars, and the single package sold in stores contains 10 cigar ‘sticks’. The standard UOM of the item will be EA, and one Each of the item is a package of 10 cigar sticks. The retailer can create a MISC UOM of ‘Sticks’ and in Item Supplier UOM, the UOM would be set to ‘Sticks’ and a Value = 10 because there are 10 sticks in a single unit of the item. This definition will allow expense, assessment and/or up charge components to be created to calculate a tax. So, if the tax is 0.13 USD per stick, then the system will use the item supplier UOM record for Sticks to determine that 1 unit of the item is 10 sticks and will therefore calculate the cost component as 0.13 x 10 sticks = 1.30 USD for one package of cigars.
Service Type
POST
ReST URL
MerchIntegrations/services/item/supplier/uom/create
Input Payload Details
Table 5-581 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-582 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestinatio n | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
Table 5-583 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
| uom | No | Collection of Object | Child node holding miscellaneous units of measure (UOM) for an item/supplier combination. |
Table 5-584 Uom - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| uom | Yes | String (4) | Contains the unit of measure that the item is being measured in. |
| value | Yes | Number (20,4) | Contains the equivalent value of the Item/Suppliers shipping carton in the associated unit of measure. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"uom": [
{
"uom": "STK",
"value": 10
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Delete Item Supplier Countries
Functional Area
Items - Item Definition
Business Overview
This service is used to delete existing item/supplier/country level information from Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/supplier/countries/delete
Input Payload Details
Table 5-585 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-586 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| supplier | No | Collection of | References a collection of item |
| Object | supplier. |
Table 5-587 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | Item Supplier affected by the deletion activity. |
| countryOfSourcing | No | Collection of Object | References a collection of item supplier country information. |
Table 5-588 CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | Yes | String (3) | The supplier country affected by the deletion activity. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"supplier": [
{
"supplier": "2400",
"countryOfSourcing": [
{
"originCountry": "US"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Supplier Countries of Manufacture
Functional Area
Items - Item Definition
Business Overview
This service is used to delete an existing item supplier country of manufacturing information from Merchandising. In order to delete an item supplier manufacturing country, the supplier manufacturing country must exist for the item in Merchandising, otherwise, an error will be returned.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/supplier/countriesOfManufacture/delete
Input Payload Details
Table 5-589 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-590 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| supplier | No | Collection of | References a collection of item |
| Object | supplier. |
Table 5-591 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | Item Supplier affected by the deletion activity. |
| countryOfManufacture | No | Collection of Object | References a collection of country of manufacture of the item. |
Table 5-592 CountryOfManufacture - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| manufacturerCountry | Yes | String (23) | Country ID of manufacturer. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100000059",
"supplier": [
{
"supplier": "2400",
"countryOfManufacture": [
{
"manufacturerCountry": "BR"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Supplier Country Dimensions
Functional Area
Items - Item Definition
Business Overview
This service is used to delete item supplier country dimensions in Merchandising. In order to delete an item supplier country dimension, the supplier country dimension must exist for the item in Merchandising, otherwise, an error will be returned.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/supplier/country/dimensions/delete
Input Payload Details
Table 5-593 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-594 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| supplier | No | Collection of | References a collection of item |
| Object | supplier. |
Table 5-595 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | Item Supplier affected by the deletion activity. |
| countryOfSourcing | No | Collection of Object | References a collection of item supplier country information. |
Table 5-596 CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | Yes | String (3) | The supplier country affected by the deletion activity. |
| dimension | No | Collection of Object | References a collection of item supplier country dimension. |
Table 5-597 Dimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dimensionObject | Yes | String (6) | The dimension object. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"supplier": [
{
"supplier": "2400",
"countryOfSourcing": [
{
"originCountry": "US",
"dimension": [
{
"dimensionObject": "CA"
}
]
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Supplier Country Locations
Functional Area
Items - Item Definition
Business Overview
This service is used to delete item supplier country locations from an existing item supplier country in Merchandising. To delete an item supplier country location, the supplier country location must exist for the item in Merchandising; otherwise, an error will be returned.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/supplier/country/locations/delete
Input Payload Details
Table 5-598 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-599 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| hierarchyLevel | No | String (2) | The level of the organizational hierarchy used to delete item supplier country location relationships. Valid values are: ‘AS’ - All Store, ‘S’ - Store, ‘DW’- Default Warehouse, ‘AW’ - All Warehouses, ‘W’ - Warehouse, ‘PW’ - Physical Warehouse, ‘AI’ - All internal fnishers, ‘I’ - Internal fnisher, ‘D’ - District, ‘R’ - Region, ‘A’ - Area, ‘T’ - Transfer zone, ‘L’ - Location trait. |
| supplier | No | Collection of Object | References a collection of item supplier. |
Table 5-600 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | Item Supplier affected by the deletion activity. |
| countryOfSourcing | No | Collection of Object | References a collection of item supplier country information. |
Table 5-601 CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | Yes | String (3) | The supplier country affected by the deletion activity. |
| location | No | Collection of | References a collection of item |
| Object | supplier country location. |
Table 5-602 Location - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyId | Yes | Number (10) | The id of the location hierarchy level |
| affected by the message. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100068",
"hierarchyLevel": "S",
"supplier": [
{
"supplier": "2400",
"countryOfSourcing": [
{
"originCountry": "US",
"location": [
{
"hierarchyId": 1111
}
]
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Supplier Translations
Functional Area
Items - Item Definition
Business Overview
This service is used to delete supplier level translations from an existing item in Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/supplier/translations/delete
Input Payload Details
Table 5-603 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-604 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| supplier | No | Collection of Object | References a collection of item supplier. |
Table 5-605 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | Item Supplier affected by the deletion activity. |
| translation | No | Collection of Object | References a collection of translations of item supplier description felds. |
Table 5-606 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | The language ID. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"supplier": [
{
"supplier": "2400",
"translation": [
{
"language": 2
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Suppliers
Functional Area
Items - Item Definition
Business Overview
This service is used to delete supplier details from existing items within Merchandising. In order to delete an item supplier, the specified supplier must exist for the item in Merchandising, else an error will be returned.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/suppliers/delete
Input Payload Details
Table 5-607 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-608 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| supplier | No | Collection of | References a collection of item |
| Object | supplier. |
Table 5-609 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | Item Supplier affected by the deletion activity. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"supplier": [
{
"supplier": "2400"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Supplier UOM
Functional Area
Items - Item Definition
Business Overview
Service to delete miscellaneous units of measure (UOM) for an item/supplier combination.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/supplier/uom/delete
Input Payload Details
Table 5-610 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-611 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| supplier | Yes | Collection of Object | References a collection of item supplier. |
Table 5-612 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | Item Supplier affected by the deletion activity. |
| uom | Yes | Collection of Object | Child node. |
Table 5-613 Uom - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| uom | Yes | String (4) | Contains the unit of measure that the item |
| is being measured in. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"supplier": [
{
"supplier": "2400",
"uom": [
{
"uom": "STK"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Update Item Supplier Countries
Functional Area
Items - Item Definition
Business Overview
This service is used to modify existing item supplier country information in Merchandising. To update item supplier country information, the supplier country must exist for the item in Merchandising; otherwise, an error will be returned.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/supplier/countries/update
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Table 5-614 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-615 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-616 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
| countryOfSourcing | No | Collection of Object | References a collection of country of sourcing of the item. |
Table 5-617 CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | Yes | String (3) | The identifer for the country where the item is sourced. This value must be predefned on the COUNTRY table. |
| primaryCountryInd | No | String (1) | This indicates if the country is the primary country for the item supplier. Valid values are Y (yes) and N (no). |
| unitCost | No | Number (20,4) | The current corporate unit cost for the item in the supplier’s currency. This feld will only be used to establish the item supplier country unit cost; it cannot be modifed. |
Table 5-617 (Cont.) CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| leadTime | No | Number (4) | This feld contains the number of days that will elapse between the date an order is written and the delivery to the store or warehouse from the supplier. This feld is defaulted from the default lead time set at the supplier level. |
| pickupLeadTime | No | Number (4) | Contains time it takes to get the item from the Supplier to the Initial Receiving Location. This value will be defaulted to the item_supp_country_loc pickup lead time feld. The ordering dialog will reference the item/supplier/country/ location pickup lead time as the value may vary by location. |
| mininumOrderQuantity | No | Number (12,4) | This feld contains the minimum quantity that can be ordered at one time from the supplier for the item. |
| maximumOrderQuantity | No | Number (12,4) | This feld contains the maximum quantity that can be ordered at one time from the supplier for the item. |
| supplierHierarchyLevel1 | No | String (10) | Highest level of supplier hierarchy (e. g. manufacturer). This will be used for assigning rebates that come from a level in the supply chain that is higher than the supplier. This information is stored on item_supp_country for defaulting into item_supp_country_loc. |
| supplierHierarchyLevel2 | No | String (10) | Second highest level of supplier hierarchy. This information is stored on item_supp_country for defaulting into item_supp_country_loc. |
| supplierHierarchyLevel3 | No | String (10) | Third highest level of supplier hierarchy. This information is stored on item_supp_country for defaulting into item_supp_country_loc. |
| defaultUop | No | String (6) | Contains the default unit of purchase for the item/supplier/country. Valid values include: Standard Units of Measure C for Case P for Pallet |
| supplierPackSize | No | Number (12,4) | Contains the quantity that orders must be placed in multiples of for the supplier for the item. |
| innerPackSize | No | Number (12,4) | This feld contains the break pack size for this item from the supplier. |
| ti | No | Number (12) | Number of shipping units (cases) that make up one tier of a pallet. Multiply TI x HI to get total number of units (cases) for a pallet. |
Table 5-617 (Cont.) CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hi | No | Number (12) | Number of tiers that make up a complete pallet (height). Multiply TI x HI to get total number of units (cases) for a pallet. |
| costUom | No | String (4) | Unit of measure associated with the item cost. It is held to allow costs to be managed in a separate UOM from the standard UOM. |
| toleranceType | No | String (6) | The unit of the tolerances for catch weight simple packs: A - actual, P - percent. |
| minimumTolerance | No | Number (12,4) | The minimum tolerance value for a catch weight simple pack. |
| maximumTolerance | No | Number (12,4) | The maximum tolerance value for a catch weight simple pack. |
| supplierHierarchyType1 | No | String (6) | Identifes partner type of supplier hierarchy level 1 for the foreign key to the partner table. |
| supplierHierarchyType2 | No | String (6) | Identifes partner type of supplier hierarchy level 2 for the foreign key to the partner table. |
| supplierHierarchyType3 | No | String (6) | Identifes partner type of supplier hierarchy level 3 for the foreign key to the partner table. |
| roundLevel | No | String (6) | This column will be used to determine how order quantities will be rounded to Case, Layer and Pallet. |
| roundToInnerPercentage | No | Number (12,4) | The Inner Rounding Threshold value. Used to determine whether to round partial Inner quantities up or down. |
| roundToCasePercentage | No | Number (12,4) | The Case Rounding Threshold value. Used to determine whether to round partial Case quantities up or down. |
| roundToLayerPercentage | No | Number (12,4) | The Layer Rounding Threshold value. Used to determine whether to round partial Layer quantities up or down. |
| roundToPalletPercentage | No | Number (12,4) | The Pallet Rounding Threshold value. Used to determine whether to round partial Pallet quantities up or down. |
| packingMethod | No | String (6) | This feld indicates whether the packing method of the item in the container is Flat or Hanging. Values for this feld are defned in PKMT code type. Examples are: FLAT - Flat, HANG - Hanging. |
| defaultExpenseProflesInd | No | String (1) | This feld indicates whether expense profles will be defaulted to new item- supplier-country relationship. |
Table 5-617 (Cont.) CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| purchaseType | No | String (1) | This contains a code to indicate whether the item is normal merchandise (i. e. owned by the retailer), consignment stock or a concession item. Valid values are 0 - Owned, 1 - Consignment, 2 - Concession. |
| calculationBasis | No | String (1) | This indicates if the cost for the consignment/concession item will be managed either based on cost per unit or as a percentage of retail. Valid values are C - Cost per Unit, P - Purchase Rate. |
| purchaseRate | No | Number (12,4) | This column contains the percentage of the retail price which will determine the cost paid to the supplier for a consignment or concession item. |
| pricingControl | No | String (1) | This indicates whether the price for the consignment/concession item will be managed by supplier or by retailer when supplier-controlled pricing for Consignment/Concession ownership model is used within the Merchandising suite of solutions. Valid values are: R – Retailer S – Supplier. If no value is provided for consignment/concession items, this will be defaulted based on the default pricing control at supplier site level. |
| dimension | No | Collection of Object | References a collection of item supplier country dimensions. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-618 Dimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dimensionObject | Yes | String (6) | Specifc object whose dimensions are specifed in this record (e. g. case, pallet, each). Valid codes are defned in the DIMO code type. Examples are: CA - Case, EA - Each. |
Table 5-618 (Cont.) Dimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| tareWeight | No | Number (12,4) | Amount of weight to be subtracted for packaging materials. Used to calculate the true net weight of the dimensionObject. |
| tareType | No | String (6) | Indicates if tare weight for this dimensionObject is wet or dry. Valid values are defned in the TARE code type. Examples are: W - Wet tare weight, D - Dry tare weight. |
| lwhUom | No | String (4) | Unit of measurement for length, width, and height (e. g. inches, centimeters, feet). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = DIMEN. |
| length | No | Number (12,4) | Length of dim_object measured in units specifed in lwh_uom. |
| width | No | Number (12,4) | Width of dim_object measured in units specifed in lwh_uom. |
| height | No | Number (12,4) | Height of dim_object measured in units specifed in lwh_uom. |
| liquidVolume | No | Number (12,4) | Liquid volume, or capacity, of dim_object measured in units specifed in volume_uom. Liquid volumes are only convertible to other liquid volumes. |
| liquidVolumeUom | No | String (4) | Unit of measurement for liquid_volume (e. g. ounces, liters). Liquid volumes are only convertible to other liquid volumes. Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = LVOL. |
| statisticalCase | No | String (12) | Statistical value of the dim_objects dimensions to be used for loading purposes. |
| weightUom | No | String (4) | Unit of measurement for weight (e. g. pounds, kilograms). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = MASS. |
| weight | No | Number (12,4) | Weight of dim_object measured in units specifed in weight_uom. |
| netWeight | No | Number (12,4) | Unit of measurement for length, width, and height (e. g. inches, centimeters, feet). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = DIMEN. |
Table 5-618 (Cont.) Dimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| presentationMethod | No | String (6) | Describes the packaging (if any) being taken into consideration in the specifed dimensions. Valid codes are defned in the PCKT code type. Examples are: JHOOK - Peggable Packaging, STACK - Stackable Packaging. |
Table 5-619 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-620 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-621 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"countryOfSourcing": [
{
"originCountry": "US",
"primaryCountryInd": "Y",
"unitCost": 9.65,
"leadTime": 1,
"pickupLeadTime": 1,
"mininumOrderQuantity": 1,
"maximumOrderQuantity": 1,
"supplierHierarchyLevel1": null,
"supplierHierarchyLevel2": null,
"supplierHierarchyLevel3": null,
"defaultUop": null,
"supplierPackSize": 1,
"innerPackSize": 1,
"ti": 1,
"hi": 1,
"costUom": "EA",
"toleranceType": null,
"minimumTolerance": 76.00,
"maximumTolerance": 69.00,
"supplierHierarchyType1": null,
"supplierHierarchyType2": null,
"supplierHierarchyType3": null,
"roundLevel": "C",
"roundToInnerPercentage": 50,
"roundToCasePercentage": 50,
"roundToLayerPercentage": 50,
"roundToPalletPercentage": 50,
"packingMethod": "HANG",
"defaultExpenseProfilesInd": "Y",
"purchaseType": "0",
"calculationBasis": null,
"purchaseRate": 18.00,
"pricingControl": "R",
"dimension": [
{
"dimensionObject": "CA",
"tareWeight": 3,
"tareType": "D",
"lwhUom": "IN",
"length": 3,
"width": 3,
"height": 3,
"liquidVolume": 3,
"liquidVolumeUom": "EA",
"statisticalCase": null,
"weightUom": "EA",
"weight": 3,
"netWeight": 11.00,
"presentationMethod": null
}
],
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item Supplier Countries of Manufacture
Functional Area
Items - Item Definition
Business Overview
This service is used to modify manufacturing country of an existing item supplier in Merchandising. To update item supplier country manufacturing information, the supplier manufacturing country must exist for the item in Merchandising; otherwise, an error will be returned.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/supplier/countriesOfManufacture/update
Input Payload Details
Table 5-622 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-623 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-624 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
| countryOfManufacture | No | Collection of Object | References a collection of country of manufacture of the item. |
Table 5-625 CountryOfManufacture - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| manufacturerCountry | Yes | String (23) | Country ID of manufacturer. |
| primaryManufacturerCount ryInd | No | String (1) | Indicates if it’s the primary country of manufacturer. |
Table 5-626 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-627 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100600020",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"countryOfManufacture": [
{
"manufacturerCountry": "BR",
"primaryManufacturerCountryInd": "N"
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item Supplier Country Dimensions
Functional Area
Items - Item Definition
Business Overview
This service is used to modify dimensions for an existing item supplier country in Merchandising. To update item supplier country dimension information, the supplier country dimension must exist for the item in Merchandising, otherwise, an error will be returned.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/supplier/country/dimensions/update
Input Payload Details
Table 5-628 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-629 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-630 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
| countryOfSourcing | No | Collection of Object | References a collection of country of sourcing of the item. |
Table 5-631 CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | Yes | String (3) | The identifer for the country where the item is sourced. This value must be predefned on the COUNTRY table. |
| dimension | No | Collection of Object | References a collection of item supplier country dimensions. |
Table 5-631 (Cont.) CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| localizationExtensions | No | Collection of | Holds optional localization attributes |
| Object | that will be processed by the localization extension module. |
Table 5-632 Dimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dimensionObject | Yes | String (6) | Specifc object whose dimensions are specifed in this record (e. g. case, pallet, each). Valid codes are defned in the DIMO code type. Examples are: CA - Case, EA - Each. |
| tareWeight | No | Number (12,4) | Amount of weight to be subtracted for packaging materials. Used to calculate the true net weight of the dimensionObject. |
| tareType | No | String (6) | Indicates if tare weight for this dimensionObject is wet or dry. Valid values are defned in the TARE code type. Examples are: W - Wet tare weight, D - Dry tare weight. |
| lwhUom | No | String (4) | Unit of measurement for length, width, and height (e. g. inches, centimeters, feet). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = DIMEN. |
| length | No | Number (12,4) | Length of dim_object measured in units specifed in lwh_uom. |
| width | No | Number (12,4) | Width of dim_object measured in units specifed in lwh_uom. |
| height | No | Number (12,4) | Height of dim_object measured in units specifed in lwh_uom. |
| liquidVolume | No | Number (12,4) | Liquid volume, or capacity, of dim_object measured in units specifed in volume_uom. Liquid volumes are only convertible to other liquid volumes. |
| liquidVolumeUom | No | String (4) | Unit of measurement for liquid_volume (e. g. ounces, liters). Liquid volumes are only convertible to other liquid volumes. Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = LVOL. |
| statisticalCase | No | String (12) | Statistical value of the dim_objects dimensions to be used for loading purposes. |
Table 5-632 (Cont.) Dimension - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| weightUom | No | String (4) | Unit of measurement for weight (e. g. pounds, kilograms). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = MASS. |
| weight | No | Number (12,4) | Weight of dim_object measured in units specifed in weight_uom. |
| netWeight | No | Number (12,4) | Unit of measurement for length, width, and height (e. g. inches, centimeters, feet). Valid values for this feld are contained in uom feld on uom_class table where uom_class feld = DIMEN. |
| presentationMethod | No | String (6) | Describes the packaging (if any) being taken into consideration in the specifed dimensions. Valid codes are defned in the PCKT code type. Examples are: JHOOK - Peggable Packaging, STACK - Stackable Packaging. |
Table 5-633 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-634 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"countryOfSourcing": [
{
"originCountry": "US",
"dimension": [
{
"dimensionObject": "CA",
"tareWeight": 3,
"tareType": "D",
"lwhUom": "IN",
"length": 3,
"width": 3,
"height": 3,
"liquidVolume": 3,
"liquidVolumeUom": "EA",
"statisticalCase": null,
"weightUom": "EA",
"weight": 3,
"netWeight": 11.00,
"presentationMethod": null
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item Supplier Country Locations
Functional Area
Items - Item Definition
Business Overview
This service is used to modify locations of an existing item supplier country in Merchandising. To update item supplier country location information, the supplier country location must exist for the item in Merchandising; otherwise, an error will be returned.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/supplier/country/locations/update
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Table 5-635 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
Table 5-635 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of items. |
Table 5-636 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| itemSuppCountryLocHierarc hyLevel | No | String (2) | The level of the organizational hierarchy used to update item supplier country location relationships. Valid values are: ‘S’ - Store and ‘W’ - Warehouse. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-637 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
| countryOfSourcing | No | Collection of Object | References a collection of country of sourcing of the item. |
Table 5-638 CountryOfSourcing - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountry | Yes | String (3) | The identifer for the country where the item is sourced. This value must be predefned on the COUNTRY table. |
| location | No | Collection of Object | References a collection of item supplier country locations. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-639 Location - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyId | Yes | Number (10) | The specifc location id for this Item Supplier Country Loc message. Corresponds with the value used in the iscloc_hier_level feld. |
| unitCost | No | Number (20,4) | The unit cost for the item at the item supplier country loc level in the supplier’s currency. This feld will be used for creating new records, not updating existing records. |
| negotiatedItemCost | No | Number (20,4) | This will hold the supplier negotiated item cost. |
| pickupLeadTime | No | Number (4) | Contains time it takes to get the item from the Supplier to the Initial Receiving Location. This value will be defaulted to the item_supp_country_loc pickup lead time feld. The ordering dialog will reference the item/supplier/country/ location pickup lead time as the value may vary by location. |
| roundLevel | No | String (6) | This column will be used to determine how order quantities will be rounded to Case, Layer and Pallet. |
| roundToCasePercentage | No | Number (12,4) | The Case Rounding Threshold value. Used to determine whether to round partial case quantities up or down. |
| roundToLayerPercentage | No | Number (12,4) | The Layer Rounding Threshold value. Used to determine whether to round partial Layer quantities up or down. |
| roundToPalletPercentage | No | Number (12,4) | The Pallet Rounding Threshold value. Used to determine whether to round partial Pallet quantities up or down. |
| roundToInnerPercentage | No | Number (12,4) | The Inner Rounding Threshold value. Used to determine whether to round partial Inner quantities up or down. |
| supplierHierarchyLevel1 | No | String (10) | Highest level of supplier hierarchy (e. g. manufacturer). This will be used forassigning rebates that come from a level in the supply chain that is higher than the supplier. |
| supplierHierarchyLevel2 | No | String (10) | Second highest level of supplier hierarchy. Rebates at this level will include all eligible supplier/item/ country/loc records assigned to this supplier hierarchy level. |
| supplierHierarchyLevel3 | No | String (10) | Third highest level of supplier hierarchy, used for assigning rebates by a level other than supplier. |
Table 5-639 (Cont.) Location - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| costUom | No | String (4) | Unit of measure associated with the item cost. It is held to allow costs to be managed in a separate UOM from the standard UOM. |
| purchaseType | No | String (1) | This contains a code to indicate whether the item is normal merchandise (i. e. owned by the retailer), consignment stock or a concession item. Valid values are 0 - Owned, 1 - Consignment, 2 - Concession. |
| calculationBasis | No | String (1) | This indicates if the cost for the consignment/concession item will be managed either based on cost per unit or as a percentage of retail. Valid values are C - Cost per Unit, P - Purchase Rate. |
| purchaseRate | No | Number (12,4) | This column contains the percentage of the retail price which will determine the cost paid to the supplier for a consignment or concession item. |
| pricingControl | No | String (1) | This indicates whether the price for the consignment/concession item will be managed by supplier or by retailer when supplier-controlled pricing for Consignment/Concession ownership model is used within the Merchandising suite of solutions. Valid values are: R – Retailer S – Supplier. If no value is provided for consignment/concession purchase types, this will be defaulted from item/supplier/country of sourcing if purchase type is Consignment/ Concession at item/supplier/country of sourcing level. If purchase type is Owned at item/supplier/country of sourcing level, this will be defaulted based on Default Pricing Control at supplier site level. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
Table 5-640 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-641 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-642 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100068",
"itemSuppCountryLocHierarchyLevel": "S",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"countryOfSourcing": [
{
"originCountry": "US",
"location": [
{
"hierarchyId": 1111,
"unitCost": 9.65,
"negotiatedItemCost": 9.65,
"pickupLeadTime": 1000,
"roundLevel": "C",
"roundToCasePercentage": 50,
"roundToLayerPercentage": 50,
"roundToPalletPercentage": 50,
"roundToInnerPercentage": 50,
"supplierHierarchyLevel1": null,
"supplierHierarchyLevel2": null,
"supplierHierarchyLevel3": null,
"costUom": "EA",
"purchaseType": "0",
"calculationBasis": null,
"purchaseRate": 3,
"pricingControl": "R",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item Supplier Translations
Functional Area
Items - Item Definition
Business Overview
This service is used to modify supplier level translations of an existing item within Merchandising.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/supplier/translations/update
Input Payload Details
Table 5-643 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-644 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-645 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
| translation | No | Collection of Object | References a collection of translations of item supplier description felds. |
Table 5-646 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This is the language ID. |
| supplierDiff1 | No | String (120) | This feld contains the frst supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff2 | No | String (120) | This feld contains the second supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff3 | No | String (120) | This feld contains the third supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff4 | No | String (120) | This feld contains the fourth supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierLabel | No | String (15) | The supplier label for the item. |
Table 5-647 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-648 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "106150023",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"translation": [
{
"language": 2,
"supplierDiff1": "Lieferantenunterschied 1",
"supplierDiff2": "Lieferant Diff 2 Modifiziert",
"supplierDiff3": "Lieferantenunterschied 3",
"supplierDiff4": "Lieferantenunterschied 4",
"supplierLabel": "Lieferantenetikett Geändert"
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item Suppliers
Functional Area
Items - Item Definition
Business Overview
This service is used to update supplier level information linked with an item within Merchandising. The specified supplier must already exist for the item in Merchandising, else an error will be returned.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/suppliers/update
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-649 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-650 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-651 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
| primarySupplierInd | No | String (3) | Indicates if the supplier is the primary supplier for the item. Valid values are Y (yes) and N (no). |
| vpn | No | String (30) | The vendor product number associated with the item. |
| supplierLabel | No | String (15) | The supplier label for the item. |
| consignmentRate | No | Number (12,4) | This feld contains the consignment rate for this item for the supplier. |
| supplierDiscontinueDate | No | date | Date which the supplier discontinues an item. The retailor should be aware that the supplier is able to reuse a UPC after 30 months and should work to ensure that no data exists in RMS for a UPC 30 months after it has been discontinued. |
| directShipInd | No | String (1) | Contains a value of Yes to indicate that any item asssociated with this supplier is eligible for a direct shipment from the supplier to the customer. |
Table 5-651 (Cont.) Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| palletName | No | String (6) | Code referencing the name used to refer to the pallet. Valid codes are defned in the PALN code type. Examples are FLA - Flat, PAL - Pallet. |
| caseName | No | String (6) | Code referencing the name used to refer to the case. Valid codes are defned in the CASN code type. Examples are PACK - Pack, BX - Box, BG - Bag. |
| innerName | No | String (6) | Code referencing the name used to refer to the inner. Valid codes are defned in the INRN code type. Examples are SCS - Sub-Case, SPACK - Sub-Pack. |
| primaryCaseSize | No | String (6) | Used only if AIP is interfaced. Indicates the primary case size for the item supplier when an orderable item is confgured for informal case types. |
| supplierDiff1 | No | String (120) | This feld contains the frst supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff2 | No | String (120) | This feld contains the second supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff3 | No | String (120) | This feld contains the third supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| supplierDiff4 | No | String (120) | This feld contains the fourth supplier differentiator and/or description. This feld may only contain a value for items with an item_parent. |
| concessionRate | No | Number (12,4) | The concession rate is the margin that a particular supplier receives for the sale of a concession item. |
| defaultExpenseProflesInd | No | String (1) | This feld indicates whether expense profles will be defaulted to new item- supplier relationship. Valid values are Y (yes) and N (no). |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
Table 5-652 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-653 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-654 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"primarySupplierInd": "Y",
"vpn": null,
"supplierLabel": null,
"consignmentRate": 3,
"supplierDiscontinueDate": "2001-12-31",
"directShipInd": "Y",
"palletName": "PAL",
"caseName": "CS",
"innerName": "INR",
"primaryCaseSize": null,
"supplierDiff1": null,
"supplierDiff2": null,
"supplierDiff3": null,
"supplierDiff4": null,
"concessionRate": 1,
"defaultExpenseProfilesInd": "Y",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item Supplier UOM
Functional Area
Items - Item Definition
Business Overview
Service to update miscellaneous units of measure (UOM) for an item/supplier combination. This UOM indicates the equivalent of one unit of the item in the specified UOM.
For example, if the item is a single package of cigars, and the single package sold in stores contains 10 cigar ‘sticks’. The standard UOM of the item will be EA, and one Each of the item is a package of 10 cigar sticks. The retailer can create a MISC UOM of ‘Sticks’ and in Item Supplier UOM, the UOM would be set to ‘Sticks’ and a Value = 10 because there are 10 sticks in a single unit of the item. This definition will allow expense, assessment and/or up charge components to be created to calculate a tax. So, if the tax is 0.13 USD per stick, then the system will use the item supplier UOM record for Sticks to determine that 1 unit of the item is 10 sticks and will therefore calculate the cost component as 0.13 x 10 sticks = 1.30 USD for one package of cigars.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/supplier/uom/update
Input Payload Details
Table 5-655 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-656 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestinatio n | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| supplier | No | Collection of Object | References a collection of suppliers associated to the item. |
Table 5-657 Supplier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | Yes | String (10) | The identifer of the supplier who sources the item. This value must be predefned on the SUPS table. |
| uom | No | Collection of Object | Child node holding miscellaneous units of measure (UOM) for an item/supplier combination. |
Table 5-658 Uom - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| uom | Yes | String (4) | Contains the unit of measure that the item is being measured in. |
| value | Yes | Number (20,4) | Contains the equivalent value of the Item/Suppliers shipping carton in the associated unit of measure. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"supplier": [
{
"supplier": "2400",
"uom": [
{
"uom": "STK",
"value": 10
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Item Taxes Upload Service
The following services are included in this functional area:
-
Create Item Taxes
-
Delete Item Taxes
Create Item Taxes
Functional Area
Items - Item Definition
Business Overview
This service is used to add Value Added Tax (VAT) information to an existing item in Merchandising when the tax solution for the system is Simple VAT (SVAT). The item must already exist in Merchandising, else an error will be returned. Item Tax information can also be provided during the creation of a new item. For more details on item creation, see the Item Upload Service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/taxes/create
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-659 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-660 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| itemLevel | No | Number (1) | The level of the item. Valid values are 1 (single level or pack item), 2 (child item), and 3 (grandchild item). |
| tranLevel | No | Number (1) | The transaction level of the item. Valid values are 1, 2, and 3. If this is a transaction item this will equal the item level. If the item is a pack this will equal 1. This value cannot be modifed. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| vat | No | Collection of Object | References a collection of vat information. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-661 Vat - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| vatType | Yes | String (1) | Indicates if the VAT rate is used for purchasing or selling. Valid values are C (cost), R (retail) and B (both). |
| vatRegion | Yes | Number (6) | The identifer for the VAT region. This value must be predefned on the VAT_REGION table. This node is optional, if it is included this feld is required. |
| vatCode | Yes | String (6) | The identifer for the VAT code. This node is optional, if it is included in the message this feld is required. |
| activeDate | Yes | date | The date that the VAT rate became active for the item/VAT region combination. |
Table 5-661 (Cont.) Vat - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| reverseVatInd | No | String (1) | Indicates if the item is subject to |
| reverse charge VAT at the vat region. | |||
| Valid values are Y (yes) and N (no). |
Table 5-662 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-663 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"itemLevel": 1,
"tranLevel": 1,
"dataLoadingDestination": "RMS",
"vat": [
{
"vatType": "B",
"vatRegion": 1000,
"vatCode": "S",
"activeDate": null,
"reverseVatInd": "N"
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Taxes
Functional Area
Items - Item Definition
Business Overview
This service is used to delete VAT (value added tax) information of an existing item in Merchandising when default tax type for the system is SVAT (Simple VAT). In order to delete an item tax, the tax information must exist for the item in Merchandising, otherwise, an error will be returned.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/taxes/delete
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-664 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-665 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| vat | No | Collection of | References a collection of item VAT. |
| Object |
Table 5-666 Vat - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| vatType | Yes | String (1) | The vat type of the vat item info to be deleted. Valid values are C (cost), R (retail) and B (both). |
| vatRegion | Yes | Number (6) | The vat region of the vat item info to be deleted. |
| activeDate | Yes | date | The active date of the vat item info to be deleted. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"vat": [
{
"vatType": "R",
"vatRegion": 1000,
"activeDate": null
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Item Up Charge Download Service
The following services are included in this functional area:
• Get Item Up Charges for Future Date
Get Item Up Charges for Future Date
Functional Area
Items - Item Definition
Business Overview
This service can be used to retrieve the complete list of up charges and the calculated up charge value that is expected to be a part of the future cost for the item, location and future date combination provided in the service call.
The From Location input is optional, and if one is not provided, the system will use the source/ default location of the provided To Location as the From Location in order to determine the list of up charges to be calculated and passed out of the service.
Service Type
POST
ReST URL
MerchIntegrations/services/item/upCharges/futureDate/get
Input Payload Details
Table 5-667 Get - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. The maximum number of the items allowed in a collection is 9999. |
| items | Yes | Collection of Object | References a collection of From Location, To Location, Future Date and Items. |
Table 5-668 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromLocation | No | Number (10) | The source location to fetch the Item Up Charges. This does not need to be provided if the To Location is a franchise location. |
| toLocation | Yes | Number (10) | The destination location to fetch the Item Up Charges. |
| futureDate | Yes | date | The future date to fetch the details of the Future Cost for the given Item/ToLocation combination. The expected date format is YYYY-MM-DD. |
| itemList | Yes | Array of String | The item/items for which the Up Charge details are requested. The maximum number of the items allowed is 9999. |
Table 5-669 GetError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| errors | Yes | Collection of Object |
Table 5-670 Errors - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromLocation | Yes | Number (10) | The source location to fetch the Item Up Charges. |
Table 5-670 (Cont.) Errors - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| toLocation | Yes | Number (10) | The destination location to fetch the Item Up Charges. |
| futureDate | Yes | date | The future date to fetch the details of the Future Cost for the given Item/ToLocation combination. The expected date format is YYYY-MM-DD. |
| errors | Yes | Array of String | List of errors. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"fromLocation": 10003,
"toLocation": 1521,
"futureDate": "2001-12-31",
"itemList": [
"108200021"
]
}
]
}
Response Code: 200 (Success)
Table 5-671 GetResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of From Location, To Location, Item and Upcharge details returned as response. |
Table 5-672 GetResponse.Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromLocation | Yes | Number (10) | The source location to fetch the Item Up Charges. |
| toLocation | Yes | Number (10) | The destination location to fetch the Item Up Charges. |
Table 5-672 (Cont.) GetResponse.Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| futureDate | Yes | date | The future date to fetch the details of the Future Cost for the given Item/ToLocation combination. The expected date format is YYYY-MM-DD. |
| item | Yes | String (25) | The item for which the Up Charge details are requested. |
| totalUpChargeAmount | Yes | Number (20,4) | The Total Up Charge Amount for the given Item/FromLocation/ ToLocation/FutureDate combination. |
| currencyCode | Yes | String (3) | The currency of the ToLocation in which the Total Up Charge Amount is calculated. |
| upCharges | Yes | Collection of Object | Details of the individual Item Up Charge Components. |
Table 5-673 UpCharges - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentId | Yes | String (10) | Up Charge component. |
| componentDescription | Yes | String (250) | Description of the Up Charge component. |
| upChargeGroup | Yes | String (6) | Group to which the Up Charge component belongs. Valid values are defned in code type UCHG (Up Charge Group) with values: A- Admin. Fee, F-Freight, K-Special K Fees, M- Miscellaneous, T- Taxes, W-Franchise. |
| calculationBasis | Yes | String (6) | Indicates whether the component is calculated on a per- unit (Specifc) or ad valorem (Value) basis. Valid values are Value (V) or Specifc (S). |
Table 5-673 (Cont.) UpCharges - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentRate | Yes | Number (20,4) | The rate to be charged against the cost of the Item/To Location combinations. The value in this feld will be a percentage if the calculation basis is V (Value), and a monetary amount if the calculation basis is S (Specifc). |
| costBasis | Yes | String (1) | The basis, the Up Charge will be calculated against. Valid values are defned in code type UCCB (Up Charge Cost Basis) with values: Weighted Average Cost (W) and Supplier Cost (S) and Off-Invoice Net Cost (N). |
| computationValueBase | Yes | String (10) | The Computation Value Basis for the Up Charge component. |
| perCount | Yes | Number (12,4) | The amount of the Per Count Unit of Measure to which the rate applies. This will only contain a value if the calculation basis is S (Specifc). |
| perCountUom | Yes | String (4) | The unit of measure in which the Per Count is specifed. This column will only contain a value if the calculation basis is S (Specifc). |
| componentCurrency | Yes | String (3) | Currency of the Up Charge component. |
| upChargeAmount | Yes | Number (20,4) | The calculated Up Charge Amount for the specifc Up Charge Component. This will be in the currency of the ToLocation. |
Table 5-673 (Cont.) UpCharges - Object. See list of elements for detail
Element Name Required Data Type Description upChargeLevel No String (1) This field contains the level at which the up charge is defined. Valid values are: ‘D’ (up charge is derived from the department level), ‘I’ (up charge is derived from the item level), and ‘F’ (up charge is tied to a Franchise store). Sample Response Message { "items": [ { "fromLocation": 10003, "toLocation": 1521, "futureDate": "2001-12-31", "item": "108200021", "totalUpChargeAmount": 1.5, "currencyCode": "USD", "upCharges": [ { "componentId": "TSFINSUR", "componentDescription": "Transfer Insurance", "upChargeGroup": "M", "calculationBasis": "V", "componentRate": 1.5, "costBasis": "W", "computationValueBase": null, "perCount": null, "perCountUom": null, "componentCurrency": "USD", "upChargeAmount": 1.5, "upChargeLevel": "I" } ] } ] }
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.
Table 5-674 GetError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| errors | Yes | Collection of Object |
Table 5-675 Errors - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromLocation | Yes | Number (10) | The source location to fetch the Item Up Charges. |
| toLocation | Yes | Number (10) | The destination location to fetch the Item Up Charges. |
| futureDate | Yes | date | The future date to fetch the details of the Future Cost for the given Item/ToLocation combination. The expected date format is YYYY-MM-DD. |
| errors | Yes | Array of String | List of errors. |
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": [
{
"errors": [
{
"fromLocation": 10003,
"toLocation": 1521,
"futureDate": "2001-12-31",
"errors": [
"Invalid Item."
]
}
]
}
]
}
Item Upload Service
The following services are included in this functional area:
-
Create Item Description Translations
-
Create Item Image Translations
-
Create Item Images
-
Create Item Seasons
-
Create Item Tickets
-
Create Item UDA Free Form Translations
-
Create Item UDAs
-
Create Item Up Charges
-
Create Items
-
Create Required Documents
-
Delete Item Description Translations
-
Delete Item Image Translations
-
Delete Item Images
-
Delete Item Seasons
-
Delete Item Tickets
-
Delete Item UDA Free Form Translations
-
Delete Item UDAs
-
Delete Item Up Charges
-
Delete Items
-
Delete Required Documents
-
Update Item Attributes Customized
-
Update Item Description Translations
-
Update Item Image Translations
-
Update Item Images
-
Update Item Tickets
-
Update Item UDA Free Form Translations
-
Update Item UDAs
-
Update Item Up Charge Details
-
Update Items
Create Item Description Translations
Functional Area
Items - Item Definition
Business Overview
If translations have been defined for items, at item header level, then they can be integrated as part of this service. This service will accept the language and the description specified in the language to add item description translations to an existing item in Merchandising.
Service Type
POST
ReST URL
MerchIntegrations/services/item/description/translations/create
Input Payload Details
Table 5-676 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-677 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| translation | No | Collection of Object | References a collection of translations of the item description feld. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-678 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This feld will hold the language in which the translated text is maintained. |
| shortDescription | No | String (120) | This feld will hold the translated text of the shortened description of the item. |
| itemDescription | Yes | String (250) | This feld will hold the translated text of the primary description of the item. |
| itemDescriptionSecondary | No | String (250) | This feld will hold the translated text of the secondary description of the item. |
Table 5-678 (Cont.) Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| longDesc | No | String (2000) | Long description of the item. |
Table 5-679 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-680 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{ "collectionSize": 1, "items": [ { "item": "106150023", "dataLoadingDestination": "RMS", "translation": [ { "language": 5, "shortDescription": " 登録項目 ", "itemDescription": " レギュラーアイテム 106150023", "itemDescriptionSecondary": " レギュラーアイテム二次 106150023", "longDesc": "100100076 Item Regular" } ], "localizationExtensions": [ { "country": "BR", "attributes": [ { "name": "SPECIAL_CATEGORY_CODE", "value": "WS_PRC_08", "valueDate": "2001-12-31" } ] } ] }
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Item Image Translations
Functional Area
Items - Item Definition
Business Overview
If translations have been defined for items, at the image level, then they can be integrated as part of this service. The service will accept the language and the description specified in the language to add image level translations to an existing item in Merchandising.
Service Type
POST
ReST URL
MerchIntegrations/services/item/image/translations/create
Input Payload Details
Table 5-681 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
Table 5-681 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of items. |
Table 5-682 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| image | No | Collection of Object | References a collection of item images. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-683 Image - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| imageName | Yes | String (120) | The name of the image. |
| translation | No | Collection of | References a collection of translations |
| Object | of item image description feld. |
Table 5-684 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This is the language ID. |
| imageDescription | Yes | String (40) | The description associated with the image. |
Table 5-685 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-686 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{ "collectionSize": 1, "items": [ { "item": "100100083", "dataLoadingDestination": "RMS", "image": [ { "imageName": "imageName1", "translation": [ { "language": 8, "imageDescription": " 供优商形象优先 " } ] } ], "localizationExtensions": [ { "country": "BR", "attributes": [ { "name": "SPECIAL_CATEGORY_CODE", "value": "WS_PRC_08", "valueDate": "2001-12-31" } ] } ] } ] }
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Item Images
Functional Area
Items - Item Definition
Business Overview
This service is used to add images to an existing item in Merchandising. If translations have been defined for the item image, then these can be integrated as part of this service as well. The supporting node of this integration will accept the language and the related description specified in the language.
Service Type
POST
ReST URL
MerchIntegrations/services/item/images/create
Input Payload Details
Table 5-687 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-688 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
Table 5-688 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| image | No | Collection of Object | References a collection of item images. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-689 Image - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| imageName | Yes | String (120) | The name of the image. |
| imageAddress | No | String (255) | Path where the fle of the image is stored. |
| imageDescription | No | String (40) | The description associated with the image. |
| imageType | No | String (6) | Field indicating the type of the image of the item. Can be H(igh), M(edium), L(ow) and T(humbnail). |
| primaryImageInd | No | String (1) | Field indicating whether the record is a primary image or not. |
| displayPriority | No | Number (4) | Field to specify the display sequence order of images associated to the item per priority. |
| translation | No | Collection of Object | References a collection of translations of item image description feld. |
Table 5-690 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This is the language ID. |
| imageDescription | Yes | String (40) | The description associated with the image. |
Table 5-691 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-692 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"image": [
{
"imageName": "imageName1",
"imageAddress": "http://www.oracle.com/",
"imageDescription": "imageDesc1",
"imageType": "T",
"primaryImageInd": "Y",
"displayPriority": 1,
"translation": [
{
"language": 2,
"imageDescription": "Item Image"
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Item Seasons
Functional Area
Items - Item Definition
Business Overview
This service is used to add seasons to an existing item in Merchandising. Item Seasons can also be created together with the creation of a new item. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/seasons/create
Input Payload Details
Table 5-693 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-694 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| season | No | Collection of Object | References a collection of item seasons. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-695 Season - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| seasonId | Yes | Number (3) | The season identifer. |
| phaseId | Yes | Number (3) | The phase identifer. |
| sequenceNo | No | Number (4) | This feld contains a sequence number that combined with the item number will make each record unique. |
| diffId | No | String (10) | This feld will hold a value for group/ differentiator combination records only. |
Table 5-696 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-697 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"season": [
{
"seasonId": 1,
"phaseId": 1,
"sequenceNo": 1,
"diffId": null
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Item Tickets
Functional Area
Items - Item Definition
Business Overview
This service is used to add tickets to an existing item in Merchandising. Tickets may be created together with the creation of a new item as well. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/tickets/create
Input Payload Details
Table 5-698 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-699 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| ticket | No | Collection of Object | References a collection of item ticket. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-700 Ticket - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| ticketTypeId | Yes | String (4) | This unique identifer for the ticket type which is associated with the item. |
| poPrintType | No | String (1) | This feld indicates when the ticket type for the given item should be printed by default, upon the approval (A) or receipt (R) of the purchase order. |
| printOnPriceChangeInd | No | String (1) | This feld indicates whether or not this type of ticket should be printed for this item when a permanent price change goes into effect. Valid values are Y (yes) and N (no). |
| ticketOverPrintPercentage | No | Number (12,4) | This feld contains a percent which indicates the amount of tickets which should be printed for a given event. |
Table 5-701 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-702 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "102350095",
"dataLoadingDestination": "RMS",
"ticket": [
{
"ticketTypeId": "TKT2",
"poPrintType": "R",
"printOnPriceChangeInd": "Y",
"ticketOverPrintPercentage": 99
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Item UDA Free Form Translations
Functional Area
Items - Item Definition
Business Overview
If translations have been defined for items at the freeform UDA level, they can be included as part of this service. The service will accept both the language and the description specified in the language to add freeform UDA translations to an existing item in Merchandising.
Service Type
POST
ReST URL
MerchIntegrations/services/item/uda/translations/create
Input Payload Details
Table 5-703 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-704 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestinatio n | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| uda | No | Collection of Object | References a collection of item UDAs. |
| localizationExtensions | No | Collection of Object | Holds localization attributes, including Brazil fscal attributes. |
Table 5-705 Uda - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | Yes | Number (5) | This feld contains a number identifying the User-Defned Attribute. |
| displayType | Yes | String (2) | This feld contains the display type (how the UDA values will be displayed to the user) for the given UDA. The valid values are DT - Date, FF - Free From, LV - List of values. |
Table 5-705 (Cont.) Uda - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaText | No | String (250) | This feld contains the text value of the Used Defned attribute for the item. |
| translation | No | Collection of Object | Child node holding translated UDA text values by language for the item. |
Table 5-706 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This feld represents the language in which the translated text is maintained. The language should be from the installed language pack. |
| udaTextDesc | Yes | String (250) | This contains the translated value for the UDA text in the selected language. |
Table 5-707 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| countryId | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-708 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"uda": [
{
"udaId": 10000,
"displayType": "FF",
"udaText": null,
"translation": [
{
"language": 2,
"udaTextDesc": null
}
]
}
],
"localizationExtensions": [
{
"countryId": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Create Item UDAs
Functional Area
Items - Item Definition
Business Overview
This service is used to add user defined attributes (UDAs) of type date, freeform text, or list of values to an existing item in Merchandising. UDAs can also be added to a item as the item is being created. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/uda/create
Input Payload Details
Table 5-709 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-710 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestinatio n | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| uda | No | Collection of Object | References a collection of item UDAs. |
Table 5-710 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-711 Uda - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | Yes | Number (5) | This feld contains a number identifying the User-Defned Attribute. |
| displayType | Yes | String (2) | This feld contains the display type (how the UDA values will be displayed to the user) for the given UDA. The valid values are DT - Date, FF - Free From, LV - List of values. |
| udaDate | No | date | This feld contains the text value of the Used Defned attribute for the item. |
| udaValue | No | String (30) | This feld contains value of the Used Defned attribute for the item. |
| udaText | No | String (250) | This feld contains the text value of the Used Defned attribute for the item. |
| translation | No | Collection of Object | Child node holding translated UDA text values by language for the item. |
Table 5-712 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This feld represents the language in which the translated text is maintained. The language should be from the installed language pack. |
Table 5-712 (Cont.) Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaTextDesc | Yes | String (250) | This contains the translated value for the UDA text in the selected language. |
Table 5-713 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-714 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100087",
"dataLoadingDestination": "RMS",
"uda": [
{
"udaId": 201,
"displayType": "FF",
"udaDate": "2001-12-31",
"udaValue": null,
"udaText": "UDA FF Text 100100087",
"translation": [
{
"language": 2,
"udaTextDesc": null
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Create Item Up Charges
Functional Area
Items - Item Definition
Business Overview
This service is used to add upcharges to an existing item in Merchandising. Upcharges can also be created together with the creation of a new item. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/upCharges/create
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Create - Object. See list of elements for detail
Items - Object. See list of elements for detail
Upcharge - Object. See list of elements for detail
Details - Object. See list of elements for detail
LocalizationExtensions - Object. See list of elements for detail
Attributes - Object. See list of elements for detail
Response Code: 200 (Success)
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.
Create Items
Functional Area
Items - Item Definition
Business Overview
This service is used by an external system to create items in Merchandising.
Item request payload include the detail nodes the suppliers and supplier/countries. If the item is not a non-sellable pack, the item/zone/price node is also required. Optional nodes can be included in the message for supplier/countries, supplier/country/locations, pack components, item/VAT, dimensions, UDAs, seasons, images, translations, HTS, assessments, expenses, and up charges.
This service supports the insertion of data into the Item Induction staging tables without requiring that the data sent to be functionally complete. If a complete set of item data is sent by the external system through this service, then it is possible to automatically trigger the upload of the data directly into Merchandising by setting a flag in the input payload, such that item information is uploaded without further user interaction.
Items must be created and maintained following a logical hierarchy as outlined by the referential integrity of the item database tables: Item parents before child items; item components before items that are packs; items before item-suppliers; item/suppliers before item/supplier/countries; items before item/locations (a separate service), and so on. Failing to do so results in message failure.
The auto-creation of item children using differentiator records attached to an item parent, as currently occurs using Merchandising online processes, is not supported in this service.
When a new item is created, this service will first validate that all required fields are present in the message. After that, business level validation on the input information will be performed. If all the validations are met, then the item is created with the status defined in the message. If
the status in the message is approved, then the item is also subjected to a series of approval checks. For an item to be successfully approved, mandatory information, such as supplier, supplier country, component item information (if item is a pack), is required to be passed as part of the item message. If the item cannot be approved, it is not created. The following information can be included for the item: Expenses, HTS and Assessments, Tickets, UDAs, VAT (for SVAT tax type), Up Charges, Images, Seasons, Item Supplier Country Locations, Item Supplier Countries of Manufacture, and Item Supplier Country Dimensions. If included, these are created simultaneously with the creation of the item.
If item VAT is not populated, item VAT defaults to the corresponding department’s VAT information.
Service Type
POST
ReST URL
MerchIntegrations/services/items/create
Input Payload Details Create - Object. See list of elements for detail Items - Object. See list of elements for detail Supplier - Object. See list of elements for detail CountryOfSourcing - Object. See list of elements for detail Location - Object. See list of elements for detail CustomFlexAttribute - Object. See list of elements for detail Dimension - Object. See list of elements for detail LocalizationExtensions - Object. See list of elements for detail Attributes - Object. See list of elements for detail CountryOfManufacture - Object. See list of elements for detail Translation - Object. See list of elements for detail Uom - Object. See list of elements for detail PackDetail - Object. See list of elements for detail Vat - Object. See list of elements for detail RetailByZone - Object. See list of elements for detail Uda - Object. See list of elements for detail Uda.Translation - Object. See list of elements for detail Season - Object. See list of elements for detail Image - Object. See list of elements for detail Image.Translation - Object. See list of elements for detail Items.Translation - Object. See list of elements for detail Hts - Object. See list of elements for detail
Assessments - Object. See list of elements for detail Expense - Object. See list of elements for detail Ticket - Object. See list of elements for detail Upcharge - Object. See list of elements for detail
Details - Object. See list of elements for detail
ConditionalTariffTreatment - Object. See list of elements for detail
RelatedItems - Object. See list of elements for detail
RelatedItems.Translation - Object. See list of elements for detail RelatedItems.Details - Object. See list of elements for detail
RequiredDocuments - Object. See list of elements for detail
ItemImportAttributes - Object. See list of elements for detail
Response Code: 200 (Success)
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.
Create Item Import Attributes
Functional Area
Items - Item Definition
Business Overview
New service endpoints to create the import specific attributes associated with a given item.
Service Type
POST
ReST URL
MerchIntegrations/services/item/importAttributes/create
Input Payload Details
Table 5-715 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-716 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestinatio n | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| itemImportAttributes | No | Collection of Object | Child node holding import specifc attributes associated with a given item. |
| localizationExtensions | No | Collection of Object | Holds localization attributes, including Brazil fscal attributes. |
Table 5-717 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| countryId | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-718 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-719 ItemImportAttributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| importDescription | No | String (2000) | Contains description of the item used for importing purposes. |
Table 5-719 (Cont.) ItemImportAttributes - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| commodity No | String (6) | Contains the code used to classify the item by their type of merchandise. |
| tooling No | Number (20,4) | Represents the cost associated with a specifc Tooling/Assist charge. The value will be provided in the system’s primary currency. |
| frstOrder No | String (1) | Used to determine if duty is to be paid on the total value of the tooling expense the frst time the item is shipped. |
| amortizeBase No | Number (12,4) | Contains the number of units over which the tooling/assist cost will be amortized. |
| openBalance No | Number (12,4) | Contains the open balance of the number of units yet to be received over which the tooling costs will be amortized. |
| Sample Input Message | ||
{"collectionSize": 1,"items": [{ | ||
"item": "100100076","dataLoadingDestination": "RMS","itemImportAttributes": [ | ||
{ | ||
"importDescription": "import desc","commodity": "A123", | ||
"tooling": 12,"firstOrder": "Y", | ||
"amortizeBase": 12.4568,"openBalance": 12.4568} | ||
],"localizationExtensions": [ | ||
{"countryId": "BR","attributes": [ | ||
{"name": "SPECIAL_CATEGORY_CODE", |
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Create Required Documents
Functional Area
Items - Item Definition
Business Overview
This service is used to add required documents to an existing item in Merchandising. Required documents may be added together with the creation of a new item as well. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/requiredDocuments/create
Input Payload Details
Table 5-720 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-721 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| requiredDocuments | No | Collection of Object | Child node holding documents information of the item. |
| localizationExtensions | No | Collection of Object | Holds localization attributes, including Brazil fscal attributes. |
Table 5-722 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| countryId | Yes | String (3) | ID of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-723 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the |
| attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-724 RequiredDocuments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| documentId | Yes | Number (6) | Unique number used to distinguish the different documents. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"requiredDocuments": [
{
"documentId": 1
}
],
"localizationExtensions": [
{
"countryId": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Description Translations
Functional Area
Items - Item Definition
Business Overview
This service is used to delete header level translations of an existing item in Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/description/translations/delete
Input Payload Details
Table 5-725 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-726 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| translation | No | Collection of | References a collection of translations |
| Object | of item description feld. |
Table 5-727 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | The language ID. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"translation": [
{
"language": 5
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Image Translations
Functional Area
Items - Item Definition
Business Overview
This service is used to delete image level translations from an existing item within Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/image/translations/delete
Input Payload Details
Table 5-728 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-729 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| image | No | Collection of Object | References a collection of item image. |
Table 5-730 Image - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| imageName | Yes | String (120) | The name of the image. |
| translation | No | Collection of | References a collection of translations |
| Object | of item image description feld. |
Table 5-731 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | The language ID. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100000041",
"image": [
{
"imageName": "Omni_Int_Delta_Change",
"translation": [
{
"language": 38
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Images
Functional Area
Items - Item Definition
Business Overview
This service is used to delete an existing item image information from Merchandising. In order to perform this deletion, the image must exist for the item in Merchandising, else an error will be returned.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/images/delete
Input Payload Details
Table 5-732 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-733 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| image | No | Collection of Object | References a collection of item image. |
Table 5-734 Image - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| imageName | Yes | String (120) | The name of the image. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"image": [
{
"imageName": "imageName"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Seasons
Functional Area
Items - Item Definition
Business Overview
This service is used to delete season data from an existing item in Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/seasons/delete
Input Payload Details
Table 5-735 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-736 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| season | No | Collection of | References a collection of item |
| Object | season. |
Table 5-737 Season - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| seasonId | Yes | Number (3) | The season identifer. |
| phaseId | Yes | Number (3) | The phase identifer |
| diffId | No | String (10) | This feld will hold a value for group/ differentiator combination records only. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"season": [
{
"seasonId": 1,
"phaseId": 1,
"diffId": null
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Tickets
Functional Area
Items - Item Definition
Business Overview
This service is used to delete existing item tickets from Merchandising. In order to perform this deletion, the item/ticket type ID must exist within Merchandising, else an error will be returned.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/tickets/delete
Input Payload Details
Table 5-738 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
Table 5-738 (Cont.) Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of items. |
Table 5-739 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| ticket | No | Collection of Object | References a collection of item ticket. |
Table 5-740 Ticket - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| ticketTypeId | Yes | String (4) | Id of the ticket type associated with the item. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"ticket": [
{
"ticketTypeId": "TKT1"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item UDA Free Form Translations
Functional Area
Items - Item Definition
Business Overview
This service is used to delete freeform UDA translation from an existing item in Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/uda/translations/delete
Input Payload Details
Table 5-741 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-742 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| uda | No | Collection of Object | References a collection of item uda. |
Table 5-743 Uda - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | Yes | Number (5) | This feld contains a number uniquely identifying the User- Defned Attribute. |
| displayType | Yes | String (2) | This feld contains the display type (how the UDA values will be displayed to the user) for the given UDA. The valid values are DT - Date, FF - Free From, LV - List of values. |
| udaValue | No | String (250) | This feld contains value of the Used Defned attribute for the item |
| translation | No | Collection of Object | Child node. |
Table 5-744 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This feld represents the language for which the translation needs to be deleted. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"uda": [
{
"udaId": 201,
"displayType": "FF",
"udaValue": null,
"translation": [
{
"language": 2
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Delete Item UDAs
Functional Area
Items - Item Definition
Business Overview
This service is used to delete item UDAs in Merchandising. In order to delete an item UDA, the UDA must exist for the item in Merchandising, otherwise, an error will be returned.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/uda/delete
Input Payload Details
Table 5-745 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-746 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| uda | No | Collection of Object | References a collection of item uda. |
Table 5-747 Uda - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | Yes | Number (5) | This feld contains a number uniquely identifying the User- Defned Attribute. |
| displayType | Yes | String (2) | This feld contains the display type (how the UDA values will be displayed to the user) for the given UDA. The valid values are DT - Date, FF - Free From, LV - List of values. |
| udaDateValueText | No | String (250) | This feld contains value of the Used Defned attribute for the item |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"uda": [
{
"udaId": 201,
"displayType": "FF",
"udaDateValueText": "FF14St"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Delete Item Up Charges
Functional Area
Items - Item Definition
Business Overview
This service is used to delete existing item upcharges from Merchandising. In order to delete item upcharges, the upcharge or upcharge/component id must exist for the item in Merchandising, otherwise, an error will be returned.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/upCharges/delete
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Table 5-748 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
Table 5-748 (Cont.) Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of items. |
Table 5-749 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| upcharge | No | Collection of | References a collection of item |
| Object | upcharge. |
Table 5-750 Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromLocationType | Yes | String (6) | Location type of the from_loc. This can be S - Store,W - Warehouse,A - Area,R - Region,C - Country,AS - All Stores,AW - All Warehouses,PW - Physical Warehouse |
| fromLocation | No | String (10) | Depending on the from_loc_type, this contains the organization hierarchy value of store, warehouse, area, region, or country from which transferring goods will incur upcharges. It will not contain a value when from_loc_type is AS (all stores) or AW (all warehouses). |
| toLocationType | Yes | String (6) | Location_type of the to_loc. This can be S - Store,W - Warehouse,A - Area,R - Region,C - Country,AS - All Stores,AW - All Warehouses,PW - Physical Warehouse |
| toLocation | No | String (10) | Depending on the to_loc_type, this contains the organization hierarchy value of store, warehouse, area, region, or country from which transferring goods will incur upcharges. It will not contain a value when to_loc_type is AS (all stores) or AW (all warehouses). |
| details | No | Collection of Object | References a collection of item upcharge detail records. |
Table 5-751 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentId | Yes | String (10) | This feld contains the unique identifer of the Up Charge component. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "104600060",
"upcharge": [
{
"fromLocationType": "S",
"fromLocation": "1211",
"toLocationType": "S",
"toLocation": "1111",
"details": [
{
"componentId": "WHFEE"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Items
Functional Area
Items - Item Definition
Business Overview
This service is used to delete existing items within Merchandising based on the item number present in the message.
If you are deleting an item, the service will first validate that the item number provided is valid. If the item does not exist in Merchandising, an error message will be returned.
Service Type
DELETE
ReST URL
MerchIntegrations/services/items/delete
Input Payload Details
Table 5-752 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-753 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Required Documents
Functional Area
Items - Item Definition
Business Overview
This service is used to delete required document data from an existing item in Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/requiredDocuments/delete
Input Payload Details
Table 5-754 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-755 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| requiredDocuments | No | Collection of Object | Child node. |
Table 5-756 RequiredDocuments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| documentId | Yes | Number (6) | Unique number used to distinguish the different documents. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"requiredDocuments": [
{
"documentId": 1
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item Description Translations
Functional Area
Items - Item Definition
Business Overview
This service is used to modify header level translations of an existing item in Merchandising.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/description/translations/update
Input Payload Details
Table 5-757 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-758 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| translation | No | Collection of Object | References a collection of translations of the item description feld. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-759 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This feld will hold the language in which the translated text is maintained. |
| shortDescription | No | String (120) | This feld will hold the translated text of the shortened description of the item. |
| itemDescription | Yes | String (250) | This feld will hold the translated text of the primary description of the item. |
| itemDescriptionSecondary | No | String (250) | This feld will hold the translated text of the secondary description of the item. |
Table 5-759 (Cont.) Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| longDesc | No | String (2000) | Long description of the item. |
Table 5-760 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-761 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{ "collectionSize": 1, "items": [ { "item": "106150023", "dataLoadingDestination": "RMS", "translation": [ { "language": 5, "shortDescription": " アイテム 106150023", "itemDescription": " レギュラーアイテム 106150023", "itemDescriptionSecondary": " レギュラーアイテム二次 106150023", "longDesc": "100100076 Item Regular" } ], "localizationExtensions": [ { "country": "BR", "attributes": [ { "name": "SPECIAL_CATEGORY_CODE", "value": "WS_PRC_08", "valueDate": "2001-12-31" } ] } ] }
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item Image Translations
Functional Area
Items - Item Definition
Business Overview
This service is used to modify image level translations of an existing item within Merchandising.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/image/translations/update
Input Payload Details
Table 5-762 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
Table 5-762 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of items. |
Table 5-763 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| image | No | Collection of Object | References a collection of item images. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-764 Image - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| imageName | Yes | String (120) | The name of the image. |
| translation | No | Collection of | References a collection of translations |
| Object | of item image description feld. |
Table 5-765 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This is the language ID. |
| imageDescription | Yes | String (40) | The description associated with the image. |
Table 5-766 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-767 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{ "collectionSize": 1, "items": [ { "item": "100100076", "dataLoadingDestination": "RMS", "image": [ { "imageName": "imageName1", "translation": [ { "language": 20, "imageDescription": " Προηγο قμ ενη εικνα " } ] } ], "localizationExtensions": [ { "country": "BR", "attributes": [ { "name": "SPECIAL_CATEGORY_CODE", "value": "WS_PRC_08", "valueDate": "2001-12-31" } ] } ] } ] }
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item Images
Functional Area
Items - Item Definition
Business Overview
This service is used to update an existing item image within Merchandising. In order to update an item image, the specified image name must exist for the item in Merchandising, else an error will be returned.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/images/update
Input Payload Details
Table 5-768 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-769 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
Table 5-769 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| image | No | Collection of Object | References a collection of item images. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-770 Image - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| imageName | Yes | String (120) | The name of the image. |
| imageAddress | No | String (255) | Path where the fle of the image is stored. |
| imageDescription | No | String (40) | The description associated with the image. |
| imageType | No | String (6) | Field indicating the type of the image of the item. Can be H(igh), M(edium), L(ow) and T(humbnail). |
| primaryImageInd | No | String (1) | Field indicating whether the record is a primary image or not. |
| displayPriority | No | Number (4) | Field to specify the display sequence order of images associated to the item per priority. |
Table 5-771 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-772 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"image": [
{
"imageName": "imageName1",
"imageAddress": "http://www.oracle.com/",
"imageDescription": "imageDesc1",
"imageType": "T",
"primaryImageInd": "Y",
"displayPriority": 1
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item Tickets
Functional Area
Items - Item Definition
Business Overview
This service is used to modify tickets of existing items in Merchandising. In order to update tickets, the item/ticket type id must exist in Merchandising, otherwise, an error will be returned. All item ticket fields except for ticket type ID are updateable and will go through the same validation as in the creation of item tickets.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/tickets/update
Input Payload Details
Table 5-773 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-774 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| ticket | No | Collection of Object | References a collection of item ticket. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-775 Ticket - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| ticketTypeId | Yes | String (4) | This unique identifer for the ticket type which is associated with the item. |
| poPrintType | No | String (1) | This feld indicates when the ticket type for the given item should be printed by default, upon the approval (A) or receipt (R) of the purchase order. |
| printOnPriceChangeInd | No | String (1) | This feld indicates whether or not this type of ticket should be printed for this item when a permanent price change goes into effect. Valid values are Y (yes) and N (no). |
| ticketOverPrintPercentage | No | Number (12,4) | This feld contains a percent which indicates the amount of tickets which should be printed for a given event. |
Table 5-776 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-777 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "102350132",
"dataLoadingDestination": "RMS",
"ticket": [
{
"ticketTypeId": "TKT1",
"poPrintType": "R",
"printOnPriceChangeInd": "N",
"ticketOverPrintPercentage": 3
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item UDA Free Form Translations
Functional Area
Items - Item Definition
Business Overview
This service is used to update freeform item UDA level translations of an existing item within Merchandising.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/uda/translations/update
Input Payload Details
Table 5-778 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-779 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestinatio n | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| uda | No | Collection of Object | References a collection of item UDAs. |
| localizationExtensions | No | Collection of Object | Holds localization attributes, including Brazil fscal attributes. |
Table 5-780 Uda - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | Yes | Number (5) | This feld contains a number identifying the User-Defned Attribute. |
| displayType | Yes | String (2) | This feld contains the display type (how the UDA values will be displayed to the user) for the given UDA. The valid values are DT - Date, FF - Free From, LV - List of values. |
Table 5-780 (Cont.) Uda - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaText | No | String (250) | This feld contains the text value of the Used Defned attribute for the item. |
| translation | No | Collection of Object | Child node holding translated UDA text values by language for the item. |
Table 5-781 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This feld represents the language in which the translated text is maintained. The language should be from the installed language pack. |
| udaTextDesc | Yes | String (250) | This contains the translated value for the UDA text in the selected language. |
Table 5-782 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| countryId | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-783 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"uda": [
{
"udaId": 10000,
"displayType": "FF",
"udaText": null,
"translation": [
{
"language": 2,
"udaTextDesc": null
}
]
}
],
"localizationExtensions": [
{
"countryId": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Update Item UDAs
Functional Area
Items - Item Definition
Business Overview
This service is used to modify UDAs for an existing item in Merchandising. In order to update an item UDA of type date, freeform text, or list of values, the UDA must exist for the item in Merchandising, otherwise, an error will be returned.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/uda/update
Input Payload Details
Table 5-784 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-785 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestinatio n | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| uda | No | Collection of Object | References a collection of item UDAs. |
Table 5-785 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-786 Uda - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | Yes | Number (5) | This feld contains a number identifying the User-Defned Attribute. |
| displayType | Yes | String (2) | This feld contains the display type (how the UDA values will be displayed to the user) for the given UDA. The valid values are DT - Date, FF - Free From, LV - List of values. |
| udaDate | No | date | This feld contains the text value of the Used Defned attribute for the item. |
| udaValue | No | String (30) | This feld contains value of the Used Defned attribute for the item. |
| udaText | No | String (250) | This feld contains the text value of the Used Defned attribute for the item. |
| newUdaDate | No | date | This feld contains the value for modifcation the uda_date of the Used Defned attribute for the item. |
| newUdaValue | No | String (30) | This feld contains the value for modifcation the uda_value of the Used Defned attribute for the item. |
| newUdaText | No | String (250) | This feld contains the value for modifcation the uda_date of the Used Defned attribute for the item. |
Table 5-787 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-788 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"uda": [
{
"udaId": 10000,
"displayType": "FF",
"udaDate": "2001-12-31",
"udaValue": null,
"udaText": null,
"newUdaDate": "2001-12-31",
"newUdaValue": null,
"newUdaText": null
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Update Item Up Charge Details
Functional Area
Items - Item Definition
Business Overview
This service is used to modify details for existing item upcharges in Merchandising. To update an item upcharge detail, the upcharge/component ID must exist for the item in Merchandising; otherwise, an error will be returned.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/upCharge/details/update
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Table 5-789 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-790 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| upcharge | No | Collection of Object | References a collection of item upcharges. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-791 Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromLocationType | Yes | String (6) | Location type of the from_loc. This can be S - Store,W - Warehouse,A - Area,R - Region,C - Country,AS - All Stores,AW - All Warehouses,PW - Physical Warehouse |
| fromLocation | No | String (10) | Depending on the from_loc_type, this contains the organization hierarchy value of store, warehouse, area, region, or country from which transferring goods will incur upcharges. It will not contain a value when from_loc_type is AS (all stores) or AW (all warehouses). |
| toLocationType | Yes | String (6) | Location_type of the to_loc. This can be S - Store,W - Warehouse,A - Area,R - Region,C - Country,AS - All Stores,AW - All Warehouses,PW - Physical Warehouse |
| toLocation | No | String (10) | Depending on the to_loc_type, this contains the organization hierarchy value of store, warehouse, area, region, or country to which transferring goods will incur upcharges. It will not contain a value when to_loc_type is AS (all stores) or AW (all warehouses). |
Table 5-791 (Cont.) Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| details | Yes | Collection of | References a collection of item |
| Object | upcharge detail records. |
Table 5-792 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentId | Yes | String (10) | Up Charge component. |
| componentRate | Yes | Number (20,4) | The rate to be charged against the cost of the Item/To Location combinations within the department. The value in this feld will be a percentage if the calculation basis is V (Value), and a monetary amount if the calculation basis is S. |
| perCount | No | Number (12,4) | count indicating the amount of the Per Count Unit of Measure to which the rate applies. This will only contain a value if the calculation basis is S (Specifc). |
| perCountUom | No | String (4) | contains the unit of measure in which the Per Count is specifed. This column will only contain a value if the calculation basis is S (Specifc). |
| upChargeGroup | Yes | String (6) | group to which the component ID belongs. This can be A-Admin. Fee,F- Freight,K-Special K Fees,M- Miscellaneous,T-Taxes,W-Franchise. |
| componentCurrency | Yes | String (3) | Currency of the Up Charge component. |
| transferAllocationDefaultInd | No | String (1) | Indicates whether all existing transfers and allocations belonging to the hierarchy should be updated or not. |
| computationValueBase | No | String (10) | Contains the Computation Value Basis for the Up Charge component. |
| costBasis | No | String (6) | Contains the basis the Up Charge will be calculated against. Valid values are defned in code type UCCB (Up Charge Cost Basis) with values: Weighted Average Cost (W) and Supplier Cost (S) and Off-Invoice Net Cost (N). |
| includeInTotalUpchargeInd | No | String (1) | Used to determine if the value of the individual up charge component is used to calculate the total up charge (Y) or if it is only used as the basis of calculating another up charge (N). |
Table 5-793 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-794 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100500029",
"dataLoadingDestination": "RMS",
"upcharge": [
{
"fromLocationType": "W",
"fromLocation": "10001",
"toLocationType": "S",
"toLocation": "1231",
"details": [
{
"componentId": "WHFEE",
"componentRate": 3.55,
"perCount": 1,
"perCountUom": "EA",
"upChargeGroup": "A",
"componentCurrency": "USD",
"transferAllocationDefaultInd": "Y",
"computationValueBase": null,
"costBasis": null,
"includeInTotalUpchargeInd": "Y"
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Items
Functional Area
Items - Item Definition
Business Overview
This service is used to modify header level information of existing items in Merchandising.
Updates can be made to the items that are in Worksheet, Submitted, or Approved status. In order to perform the update, the service will validate that the item number included in the message already exists within Merchandising. Only header level fields need to be provided for header level updates. Any item details included in the message will be ignored for a header level update message. There are certain fields that are not allowed to be updated at the header level depending on the status, and if these are still provided in the message, an appropriate error message will be returned. Any custom flexible attributes (CFAS) defined at the item level, can be updated as part of this service. The flexible attributes are treated as a single group and the complete CFAS payload needs to be included in the message for Update.
If an attribute is omitted from the message or is included with an empty (NULL) value, then the existing value will be cleared out.
This service can also be used to reinstate a deleted item back to its previous status. In such a scenario, the status needs to be passed as ‘R’ which will solely reinstate the item to its last defined status and ignore any updates to other fields included in the payload.
Service Type
PUT
ReST URL
MerchIntegrations/services/items/update
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-795 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-796 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| status | No | String (1) | Status of the item. |
| itemDescription | No | String (250) | The long description of the item. |
| shortDescription | No | String (120) | The short description of the item. If this feld is not populated it will default from the long description. |
| itemDescriptionSecondary | No | String (250) | Secondary descriptions of the item. |
| longDesc | No | String (2000) | Long description of the item. |
| standardUom | No | String (4) | The unit of measure at which the item is tracked at the corporate level. This will be defaulted to EA (eaches) if not populated on the message. It cannot be modifed. |
| primaryReferenceItemInd | No | String (1) | This feld indicates whether the sub- transation level item is designated as the primary sub-transaction level item. For transaction level items and above the value in this feld will be No. |
Table 5-796 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diff1 | No | String (10) | Diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group (i.e. Mens pant sizes) or a value (6 oz). |
| diff2 | No | String (10) | Diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group (i.e. Mens pant sizes) or a value (6 oz). |
| diff3 | No | String (10) | Diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group (i.e. Mens pant sizes) or a value (6 oz). |
| diff4 | No | String (10) | Diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this feld may be either a group (i.e. Mens pant sizes) or a value (6 oz). |
| storeOrderMultiple | No | String (1) | The unit type of merchandise shipped from the warehouse to the store for this item. Valid values are C (cases), I (inners), and E (eaches). |
| forecastInd | No | String (1) | Indicates whether the item is forecastable. Valid value are Y (yes) and N (no). This value should be N if the item is a pack. |
| uomConversionFactor | No | Number (20,10) | Conversion factor between an Each and the standard_uom when the standard_uom is not in the quantity class (e. g. if standard_uom = lb and 1 lb = 10 eaches, this factor will be 10). This factor will be used to convert sales and stock data when an item is retailed in eaches but does not have eaches as its standard unit of measure. |
| packageSize | No | Number (12,4) | Holds the size of the product printed on any packaging (i. e. 24 ounces). This feld is used for reporting purposes, as well as by Oracle Retail Price Mangement to determine same sized and different sized items. |
| handlingTemperature | No | String (6) | Holds the temperature information associated with the item. Valid codes are defned in the HTMP code type. Examples are: FRIDGE - Keep Refrigerated, FROZEN - Keep Frozen. |
Table 5-796 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| handlingSensitivity | No | String (6) | Holds the sensitivity information associated with the item. Valid codes are defned in the HSEN code type. Examples are: EXPLOD - Explosive, FRAG - Fragile. |
| manufacturerRecommended Retail | No | Number (20,4) | Manufacturers recommended retail price for the item in primary currency. Used for informational purposes only. |
| wasteType | No | String (6) | Identifes the wastage type as either sales or spoilage wastage. Valid values are: SP - Spoilage, SL - Sales Wastage is not applicable to pack items. |
| averageWastePercentage | No | Number (12,4) | Average percent of wastage for the item over its shelf life. Used in infating the retail price for wastage items. |
| catchWeightInd | No | String (1) | Indiactes whether the item should be weighed when it arives at a location. Valid values for this feld are Y and N. |
| containerItem | No | String (25) | This holds the container item number for a content item. |
| packageUom | No | String (4) | Holds the unit of measure associated with the package size. This feld is used for reporting purposes and by Retek Price Management to determine same sized and different sized items. |
| brandName | No | String (120) | This is added to capture the brand information of an item. |
| productClassifcation | No | String (6) | This defnes which items can be combined (packed or boxed) together. Valid codes are defned in the PCLA code type. Examples are: APP - Apparel, GRC - Grocery. |
| originalRetail | No | Number (20,4) | The original retail price of the item per unit. This feld is stored in the primary currency. |
| retailLabelType | No | String (6) | This feld indicates any special label type assoctiated with an item. Valid codes are defned in the RTLT code type. Examples are: COFF - Cents Off, EXTRA - Extra Product, PREP - Pre- Priced. |
| retailLabelValue | No | Number (20,4) | This feld represents the value associated with the retail label type. |
| defaultWastePercentage | No | Number (12,4) | Default daily wastage percent for spoilage type wastage items. |
Table 5-796 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| itemServiceLevel | No | String (6) | Holds a value that restricts the type of shipment methods that RCOM can select for an item. |
| depositInPricePerUom | No | String (6) | This feld indicates if the deposit amount is included in the price per UOM calculation for a contents item ticket. Valid codes are defned in the DITM code type. Examples are: E - Exclusive of Deposit Amount, I - Inclusive of Deposit Amount. |
| constantDimensionInd | No | String (1) | Indicates that the dimensions of the product are always the same, regardless of the supplier. If this feld is Y, the dimensions for all suppliers will be defaulted to the primary supplier/primary country dimensions. Editing of dimensions for the item will only be allowed for the primary supplier/primary country. |
| giftWrapInd | No | String (1) | This feld will contain a value of ‘Y’ if the item is eligible to be gift wrapped. |
| shipAloneInd | No | String (1) | This feld will contain a value of Y if the item should be shipped to the customer is a seperate package versus being grouped together in a box. |
| aipCaseType | No | String (6) | Only used if AIP is integrated. Determines which case sizes to extract against an item in the AIP interface. Applicable only to non-pack orderable items. Valid values are defned in the AIPT code type. Examples are: F - Formal and I - Informal. |
| transferAllocUpChargeSourc eType | No | String (6) | This feld impacts how up charges default to transfers and allocations when an item is added. When set to ’D’, department-level up charges are applied if item-level up charges are not defned for the item/from- location/to-location combination. When set to ‘I’, only item-level up charges are applied; department-level up charges are not inherited. |
| comments | No | String (2000) | Comments associated with the item. |
| dataLoadingDestination | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
Table 5-796 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-797 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-798 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-799 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"status": "W",
"itemDescription": "Regular Item 100100076",
"shortDescription": "100100076 Item",
"itemDescriptionSecondary": "100100076 Item Regular",
"longDesc": "100100076 Item Regular",
"standardUom": "EA",
"primaryReferenceItemInd": "N",
"diff1": null,
"diff2": null,
"diff3": null,
"diff4": null,
"storeOrderMultiple": "E",
"forecastInd": null,
"uomConversionFactor": 3,
"packageSize": 90.00,
"handlingTemperature": null,
"handlingSensitivity": null,
"manufacturerRecommendedRetail": 12.99,
"wasteType": null,
"averageWastePercentage": 18.00,
"catchWeightInd": "N",
"containerItem": null,
"packageUom": null,
"brandName": null,
"productClassification": null,
"originalRetail": 12.99,
"retailLabelType": null,
"retailLabelValue": null,
"defaultWastePercentage": null,
"itemServiceLevel": null,
"depositInPricePerUom": "I",
"constantDimensionInd": "Y",
"giftWrapInd": "Y",
"shipAloneInd": "Y",
"aipCaseType": null,
"transferAllocUpChargeSourceType": "D",
"comments": null,
"dataLoadingDestination": "RMS",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Item Import Attributes
Functional Area
Items - Item Definition
Business Overview
New service endpoints will be added to modify the import specific attributes associated with a given item.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/importAttributes/update
Input Payload Details
Table 5-800 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the |
| collection. |
Table 5-800 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of Object | References a collection of items. |
Table 5-801 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestinatio n | No | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| itemImportAttributes | No | Collection of Object | Child node holding import specifc attributes associated with a given item. |
| localizationExtensions | No | Collection of Object | Holds localization attributes, including Brazil fscal attributes. |
Table 5-802 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| countryId | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-803 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-804 ItemImportAttributes - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| importDescription No | String (2000) | Contains description of the item used for importing purposes. |
| commodity No | String (6) | Contains the code used to classify the item by their type of merchandise. |
| tooling No | Number (20,4) | Represents the cost associated with a specifc Tooling/Assist charge. The value will be provided in the system’s primary currency. |
| frstOrder No | String (1) | Used to determine if duty is to be paid on the total value of the tooling expense the frst time the item is shipped. |
| amortizeBase No | Number (12,4) | Contains the number of units over which the tooling/assist cost will be amortized. |
| openBalance No | Number (12,4) | Contains the open balance of the number of units yet to be received over which the tooling costs will be amortized. |
| Sample Input Message | ||
{"collectionSize": 1,"items": [{ | ||
"item": "100100076","dataLoadingDestination": "RMS","itemImportAttributes": [{ | ||
"importDescription": "import desc","commodity": "A123","tooling": 12,"firstOrder": "Y","amortizeBase": 12.4568,"openBalance": 12.4568} | ||
],"localizationExtensions": [{ |
"countryId": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Manage Substitute Items
Functional Area
Items - Item Definition
Business Overview
Service endpoint to create, update or delete substitute items for an item.
Service Type
POST
ReST URL
MerchIntegrations/services/item/location/substituteItems/manage
Input Payload Details
Table 5-805 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | |
| items | Yes | Collection of Object |
Table 5-806 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | Yes | String (10) | Describes type of action. |
| item | Yes | String (25) | Alphanumeric identifer for the main item. This item must exist as a main sku on the sub_items_head table. |
| locationHierarchyLeve l | Yes | String (5) | The corresponding ID based on the specifed level of the organizational hierarchy. Valied values are codes from code_type ‘GRTA’. |
| hierarchy | No | String (20) | The level of the organizational hierarchy used for item-location relationships to add substitute item. |
| fllPriority | No | String (1) | This contains the fll priority for the main item. This feld applies only to Warehouses. |
| useSales | No | String (1) | This indicates whether substitute items will be used in calculating the maximum stock for the foating-point replenishment method. |
Table 5-806 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| useStock | No | String (1) | This indicates whether the substitute items will be used in calculating the net inventory at a location when determining the locations need for the main item. When set Yes (‘Y’), the substitute item stock can be used to fulfl a locations warehouse demands for the main item. |
| useForecastSales | No | String (1) | This indicates whether the substitute item be used to determine the required stock at a given location when a forecasting replenishment method is used for the main item. |
| details | No | Collection of Object | Child node containing the details of substitute items. |
Table 5-807 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| substituteItem | Yes | String (25) | This contains unique identifer for the substitute item. |
| primaryReplenishment Pack | No | String (25) | This contains the replenishment pack, which will be used to fulfll the demand of the associated item. |
| pickPriority | No | Number (3) | Contains the pick priority for the substitute item. If there are multiple substitute items for a main item, then the pick priority will determine the order in which the substitute items will fulfll the store’s demand. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"action": "CREATE",
"item": "100100050",
"locationHierarchyLevel": "S",
"hierarchy": "1010",
"fillPriority": "M",
"useSales": "Y",
"useStock": "Y",
"useForecastSales": "Y",
"details": [
{
"substituteItem": "100100068",
"primaryReplenishmentPack": "100100092",
"pickPriority": 1
}
]
}
]
}
Response Code: 200 (Success)
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.
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"
}
]
}
Related Items Upload Service
The following services are included in this functional area:
-
Create Related Items
-
Create Related Item Translations
-
Delete Related Items
-
Delete Related Item Translations
-
Update Related Items
-
Update Related Item Translations
Create Related Items
Functional Area
Items - Related Items
Business Overview
This service is used to add related items to an existing item in Merchandising. Related items can also be added together with the creation of a new item. For more details on item creation, see the Create Items service description.
Service Type
POST
ReST URL
MerchIntegrations/services/item/relatedItems/create
Input Payload Details
Table 5-808 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-809 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestinatio n | Yes | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| relatedItems | Yes | Collection of Object | Child node holding related-item information for the item. |
| localizationExtensions | No | Collection of Object | Holds localization attributes, including Brazil fscal attributes. |
Table 5-810 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-811 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-812 RelatedItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relationshipId | No | Number (20) | Unique identifer for each relationship header. |
| relationshipName | Yes | String (255) | Name given to the relationship. |
| relationshipType | Yes | String (6) | Describes the type of relationship. Values are confgured in code_detail table under code_type IREL. |
| mandatoryInd | No | String (1) | Indicates whether the relationship is mandatory. |
| details | Yes | Collection of Object | Child node containing the details for related item. |
Table 5-813 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relatedItem | Yes | String (25) | Item id of the related item. |
Table 5-813 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| priority | No | Number (4) | Applicable only in case of relationship type SUBS. In case of multiple related substitute items, this column could be used (optional) to defne relative priority. |
| startDate | No | date | From this date related item can be used on transactions. |
| endDate | No | date | Till this date related item can be used on transactions. A value of null means that it is effective forever. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"relatedItems": [
{
"relationshipId": 10001,
"relationshipName": "Related Item Test",
"relationshipType": "SUBS",
"mandatoryInd": "Y",
"details": [
{
"relatedItem": "100100141",
"priority": 1,
"startDate": "2001-12-31",
"endDate": "2001-12-31"
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Create Related Item Translations
Functional Area
Items - Related Items
Business Overview
If translations have been defined for items, at related item level, then they can be integrated as part of this service. The service will accept the language and the description specified in the language to add related item translations to an existing item in Merchandising.
Service Type
POST
ReST URL
MerchIntegrations/services/item/relatedItem/translations/create
Input Payload Details
Table 5-814 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-815 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestinatio n | Yes | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| relateditem | Yes | Collection of Object | Child node holding related-item information for the item. |
Table 5-816 Relateditem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relationshipId | Yes | Number (20) | Unique identifer for each relationship header. |
| translation | Yes | Collection of Object | Child node containing the translated value of the relationship name. |
Table 5-817 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| lang | Yes | Number (6) | This feld contains the language in which the translated text is maintained. |
| relationshipName | Yes | String (255) | The translated text of the relationship name. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"relateditem": [
{
"relationshipId": 10041,
"translation": [
{
"lang": 2,
"relationshipName": "Descripción de la relación"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Delete Related Items
Functional Area
Items - Related Items
Business Overview
This service is used to delete existing item relationship from Merchandising. In order to perform this deletion, the relationship ID must exist within Merchandising, else an error will be returned.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/relatedItems/delete
Input Payload Details
Table 5-818 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-819 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| relatedItem | Yes | Collection of Object | Child node. |
Table 5-820 RelatedItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relationshipId | Yes | Number (20) | Unique identifer for the relationship. |
| details | No | Collection of Object | Child node. |
Table 5-821 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relatedItem | No | String (25) | Item id of the related item. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"relatedItem": [
{
"relationshipId": 10001,
"details": [
{
"relatedItem": "100100141"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Delete Related Item Translations
Functional Area
Items - Related Items
Business Overview
This service is used to delete an existing translation record of a related item relationship in Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/relatedItem/translations/delete
Input Payload Details
Table 5-822 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-823 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer for the item. |
| relatedItem | No | Collection of Object | Child node. |
Table 5-824 RelatedItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relationshipId | Yes | Number (20) | Unique identifer for the relationship. |
| translation | No | Collection of Object | Child node. |
Table 5-825 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| lang | Yes | Number (6) | The language ID. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"relatedItem": [
{
"relationshipId": 10001,
"translation": [
{
"lang": 2
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Update Related Items
Functional Area
Items - Related Items
Business Overview
This service is used to update item relationships of an existing item within Merchandising. In order to update an item relationship, the specified relationship ID must exist for the item in Merchandising, else an error will be returned.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/relatedItems/update
Input Payload Details
Table 5-826 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-827 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestinatio n | Yes | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| relatedItems | Yes | Collection of Object | Child node holding related-item information for the item. |
Table 5-828 RelatedItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relationshipId | Yes | Number (20) | Unique identifer for each relationship header. |
| relationshipName | Yes | String (255) | Name given to the relationship. |
| relationshipType | Yes | String (6) | Describes the type of relationship. Values are confgured in code_detail table under code_type IREL. |
| mandatoryInd | Yes | String (1) | Indicates whether the relationship is mandatory. |
| details | No | Collection of Object | Child node containing the details for related item. |
Table 5-829 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relatedItem | No | String (25) | Item id of the related item. |
| priority | No | Number (4) | Applicable only in case of relationship type SUBS. In case of multiple related substitute items, this column could be used (optional) to defne relative priority. |
| startDate | No | date | From this date related item can be used on transactions. |
| endDate | No | date | Till this date related item can be used on transactions. A value of null means that it is effective forever. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"relatedItems": [
{
"relationshipId": 10001,
"relationshipName": "Related Item Test - Updated",
"relationshipType": "SUBS",
"mandatoryInd": "N",
"details": [
{
"relatedItem": "100100141",
"priority": 2,
"startDate": "2001-12-31",
"endDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Update Related Item Translations
Functional Area
Items - Related Items
Business Overview
This service is used to update related item level translations of an existing item within Merchandising.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/relatedItem/translations/update
Input Payload Details
Table 5-830 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of items. |
Table 5-831 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The unique identifer of the main item on the message. |
| dataLoadingDestinatio n | Yes | String (6) | This feld indicates if the item will be created in Merchandising or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| relatedItem | Yes | Collection of Object | Child node holding related-item information for the item. |
Table 5-832 RelatedItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| relationshipId | Yes | Number (20) | Unique identifer for each relationship header. |
| translation | Yes | Collection of Object | Child node containing the translated value of the relationship name. |
Table 5-833 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| lang | Yes | Number (6) | This feld contains the language in which the translated text is maintained. |
| relationshipName | Yes | String (255) | The translated text of the relationship name. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "100100076",
"dataLoadingDestination": "RMS",
"relatedItem": [
{
"relationshipId": 10041,
"translation": [
{
"lang": 20,
"relationshipName": " ενη μ ερω μق νη περιγραφ της σχσης " } ] } ] } ] }
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Item Foundation
The following services are included in this functional area:
-
Brand Download Service
- Get Brands
-
Brand Upload Service
- Manage Brands
-
Differentiator Download Service
-
Get Differentiator Details
-
Get Differentiator Details for Provided Differentiator
-
Get Differentiator Details for Single Differentiator
-
-
Differentiator Group Download Service
-
Get Differentiator Groups
-
Get Differentiators for Provided Group
-
-
Differentiator Group Upload Service
-
Create Differentiator Group Details
-
Create Differentiator Groups
-
Delete Differentiator Group Details
-
Delete Differentiator Groups
-
Update Differentiator Group Details
-
Update Differentiator Groups
-
-
Differentiator Type Download Service
-
Get Differentiator Type Details for Provided Type
-
Get Differentiator Types
-
-
Differentiator Upload Service
-
Create Differentiators
-
Delete Differentiators
-
Update Differentiators
-
-
Seasons and Phases Download Service
- Get Seasons and Phases Service
-
User Defined Attribute (UDA) Download Service
-
REST Endpoint for UDA details
-
REST Endpoint to Fetch UDA by UDA ID
-
Brand Download Service
The following services are included in this functional area:
- Get Brands
Get Brands
Endpoints
/MerchIntegrations/services/item/brands
Functional Area
Items - Item Foundation
Business Overview
This service retrieves all Brand records. This service supports pagination and the page size of each response is controlled by the query parameter ‘limit’. This service takes an optional query parameter of brand name to retrieve the specified brand.
Service Type
GET
ReST URL
MerchIntegrations/services/item/brands
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| offsetkey | No | String | Offset key (Brand Name) |
| brandName | No | String | Brand Name |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Response Code: 200 (Success)
Table 5-834 PageResultItemsBrand - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-835 Brand - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| brandName | Yes | String (30) | This feld contains the brand name. |
| brandDescription | Yes | String (120) | This feld contains the brand description. |
Table 5-835 (Cont.) Brand - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDatetime | Yes | dateTime | This feld contains the date-time in UTC when this record was created. |
| lastUpdateDatetime | Yes | dateTime | This feld contains the date-time in UTC when this record was updated. |
Table 5-836 LinkItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetches and contains the offsetkey which unique identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"brandName": "ORCL",
"brandDescription": "Oracle",
"createDatetime": "2001-12-31T23:59:59.000Z",
"lastUpdateDatetime": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?limit=1000",
"rel": "self"
}
]
}
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.
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"
}
]
}
Brand Upload Service
The following services are included in this functional area:
- Manage Brands
Manage Brands
Functional Area
Items - Item Foundation
Business Overview
This service allows external system to manage brand data. It supports creating, updating and deleting brand records as well as managing translated brand descriptions.
This service accepts brand data as input. If the delete indicator is set to ‘N’ (or is empty) and the input brand name does not exists in the system, a new brand record will be created. If the brand name already exists, it will update the brand description (if provided) and the provided translation entries.
A value of ‘Y’ in the delete indicator will delete the brand record if the brand is not attached with any item.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/brands/manage
Input Payload Details
Table 5-837 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of Brand Data. |
Table 5-838 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| brandName | Yes | String (30) | This feld contains the brand name. This is maintained in upper case. |
| brandDescription | No | String (120) | This feld contains the description of the brand. This feld is optional and if provided, brand description will be updated for an existing record. This feld is requried for new brand creation and any update request where transalation records are not being maintained. |
| deleteInd | No | String (1) | This optional feld allows for delete of existing brand record provided the brand is not attached to any item. If this is set to Y (Yes), input brand name must exists in the system. Default value is ‘N’ |
| translation | No | Collection of Object | References a collection of translations of the brand description feld. |
Table 5-839 Translation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| language | Yes | Number (6) | This feld contains the language ID. This value must be predefned on the LANG table. This should not be the system primary language id. |
| brandDescription | No | String (120) | This feld contains the translated description of the brand in the provided language id. This feld is optional for delete of an existing transaction entry. |
| deleteInd | No | String (1) | This optional feld allows for delete of existing translation entry for brand. If this is set to Y (Yes), the transalation entry must exists for the input language id. Default value is ‘N’ |
Table 5-840 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| brandName | Yes | String (30) | This feld contains the input brand name for which validation error |
| happened | |||
| errorMessage | Yes | String (2000) | This feld contains the error message. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"brandName": "NEW",
"brandDescription": "New Brand",
"deleteInd": null,
"translation": [
{
"language": 3,
"brandDescription": "Nouvelle marque",
"deleteInd": null
}
]
}
]
}
Response Code: 200 (Success) 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.
Table 5-841 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| brandName | Yes | String (30) | This feld contains the input brand name for which validation error happened |
| errorMessage | Yes | String (2000) | This feld contains the error message. |
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": [
{
"brandName": "NEW",
"errorMessage": "Delete failed because brand is associated with one or
more items"
}
]
}
Differentiator Download Service
The following services are included in this functional area:
-
Get Differentiator Details
-
Get Differentiator Details for Provided Differentiator
-
Get Differentiator Details for Single Differentiator
Get Differentiator Details
Endpoints
MerchIntegrations/services/foundation/diffid
MerchIntegrations/services/foundation/diffid/{diffId}
Functional Area
Items – Item Foundation
Business Overview
This service publishes differentiator master data to downstream consuming systems. It publishes only differentiators whose DIFF_TYPE still resolves to a valid row in DIFF_TYPE.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIFF_IDS
Additional business tables: DIFF_TYPE
JSON cache table: MERCHAPI_EXT_DIFF_IDS
JSON generation view: V_MERCHAPI_EXT_DIFF_IDS_JSON
Builds the payload from DIFF_IDS and joins DIFF_TYPE to add the differentiator type description.
Functionally, that means only differentiators whose DIFF_TYPE still resolves to a valid row in DIFF_TYPE are published.
Initial refresh supports both truncate-and-load and rebuild behavior, and rebuild marks cache rows deleted when the differentiator no longer exists in V_MERCHAPI_EXT_DIFF_IDS_JSON.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_DIFF_IDS_JSON and apply only DIFF_IDS rows with a matching DIFF_TYPE row are published.
Mark cache rows deleted when the differentiator no longer exists in V_MERCHAPI_EXT_DIFF_IDS_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIFF_IDS (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on DIFF_IDS.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_DIFF_ID
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_DIFF_IDS_ADHOC_PROCESS → MERCHAPI_EXT_DIFF_IDS_ADHOC_JOB
Webhook configuration api name: foundation/diffid
Special handling
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/diffid
MerchIntegrations/services/foundation/diffid/{diffId}
Input Parameters for MerchIntegrations/services/foundation/diffId
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key (Diff ID) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-842 Input Parameter for “MerchIntegrations/services/foundation/diffid/{diffId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| diffId | Yes | String | Differentiator Id |
Table 5-842 (Cont.) Input Parameter for “MerchIntegrations/services/foundation/diffid/ {diffId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Input Parameters for MerchIntegrations/services/foundation/diffId/{diffId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| differentiatorId | Yes | String | This feld contains a unique identifer of the differentiator |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output – Diff ID
Table 5-843 PageResultsItemsMerchApiDiffId - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-844 MerchApiDiffId - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for differentiator ID details. |
| diffId | No | String (10) | This feld contains a unique identifer of the differentiator. |
| diffDescription | No | String (120) | This feld contains the description of the differentiator. |
| diffType | No | String (6) | This feld contains a code indicating the type of differentiator, for example C for Color. |
| diffTypeDescription | No | String (120) | This feld contains the description of the differentiator type. |
| industryCode | No | String (10) | This feld is used to hold the unique code used by industry standards to identify the differentiator. |
| industrySubgroup | No | String (10) | This feld is used to hold a sub-grouping code used by industry standards to further identify the differentiator. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the diff ID record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-845 LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description href No String Service URL rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "diffId": "XYZ01", "diffDescription": "diffDesc", "diffType": "C", "diffTypeDescription": null, "industryCode": null, "industrySubgroup": null, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element |
| corresponds to a row in the result set generated by the query. |
| Elements | Description |
|---|---|
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Output
{
"items": [
{
"action": "INSERT",
"diffId": "1",
"diffDescription": "Pot Size",
"diffType": "POTSZ",
"industryCode": null,
"industrySubgroup": null,
"createDateTime": "2005-02-01T00:00:00.000Z",
"updateDateTime": "2005-02-01T00:00:00.000Z",
"cacheTimestamp": "2021-08-31T07:55:38.434Z"
}
],
"hasMore": false,
"limit": 1000,
"count": 1,
"links": [
{
"href": "https://<hostname>:<port>/rgbu-rex-rgbu-dev1-mfcs19-1/
MerchIntegrations/services/foundation/diffid?
limit=10000&since=1970-01-01T00:00:00.001Z&before=2022-03-25T09:17:01.879357+0
0:00",
"rel": "self"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIFF_IDS | Yes | No | Yes | Yes |
| MERCHAPI_EXT_DIFF_IDS | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_DIFF_IDS _JSON | Yes | No | No | No |
Get Differentiator Details for Provided Differentiator
Endpoints
MerchIntegrations/services/foundation/diffid
MerchIntegrations/services/foundation/diffid/{diffId}
Functional Area
Items - Item Foundation
Business Overview
This service can be used by external applications to get all or selected diff IDs and its details from Merchandising.
Service Type
GET
ReST URL
/MerchIntegrations/services/foundation/diffid?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/foundation/diffId/{diffId}
Input Parameters for MerchIntegrations/services/foundation/diffId
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. |
Format:yyyy-mm-dd"T"hh24:mi:ss.fftzh:tzm | |||
| before | No | String | Before Date |
Format:yyyy-mm-dd"T"hh24:mi:ss.fftzh:tzm | |||
| offsetkey | No | String | Offset Key. Valid Value is combination ofsort_order_seqand node ID. |
| limit | No | BigDecimal | Pagination limit. Default Value is1000. |
Input Parameters for MerchIntegrations/services/foundation/diffId/{diffId}
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| differentiatorId | Yes | String | This feld contains a unique |
| identifer of the differentiator |
Output - Diff ID
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for Item details. Valid Values are INSERT, UPDATE and DELETE. |
| diffId | String | This feld contains a unique identifer of the differentiator. |
| diffDescription | String | This feld contains the description of the differentiator. |
| diffType | String | This feld contains a code indicating the type of differentiator, for example C for Color. |
| industryCode | String | This feld is used to hold the unique code used by industry standards to identify the differentiator |
| industrySubgroup | String | This feld is used to hold a sub-grouping code used by industry standards to further identify the differentiator |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| cacheTimestamp | String | This feld specifes date and time when the Diff ID record was last maintained. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. |
| For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. | |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON output:
{
"items": [
{
"action": "INSERT",
"diffId": "1",
"diffDescription": "Pot Size",
"diffType": "POTSZ",
"industryCode": null,
"industrySubgroup": null,
"createDateTime": "2005-02-01T00:00:00.000Z",
"updateDateTime": "2005-02-01T00:00:00.000Z",
"cacheTimestamp": "2021-08-31T07:55:38.434Z"
}
],
"hasMore": false,
"limit": 1000,
"count": 1,
"links": [
{
"href": "https://<hostname>:<port>/rgbu-rex-rgbu-dev1-mfcs19-1/
MerchIntegrations/services/foundation/diffid?
limit=10000&since=1970-01-01T00:00:00.001Z&before=2022-03-25T09:17:01.879357+0
0:00",
"rel": "self"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIFF_IDS | Yes | No | Yes | Yes |
| MERCHAPI_EXT_DIFF_IDS | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_DIFF_IDS _JSON | Yes | No | No | No |
Get Differentiator Details for Single Differentiator
This section describes the Diff Detail service.
Business Overview
Diff Detail service allows user to retrieve Diff description for a selected Diff Id.
Service Type
Get
ReST URL
DiffIds/diffIdDetail?diffId={diffId}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Diff_Id | Yes | Diff ID |
Output
RestDiffIdsRecRDO
Parameter Name Data Type industrySubgroup String diffGroupDesc String diffType String diffDesc String industryCode String diffGroupId String diffTypeDesc String
JSON Structure
{
"industrySubgroup": null,
"diffGroupDesc": null,
"diffType": null,
"diffDesc": "null,
"industryCode": null,
"diffGroupId": null,
"diffTypeDesc": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| DIFF_IDS | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Differentiator Group Download Service
The following services are included in this functional area:
-
Get Differentiator Groups
-
Get Differentiators for Provided Group
Get Differentiator Groups
Endpoints
MerchIntegrations/services/foundation/diffgroup
MerchIntegrations/services/foundation/diffgroup/{diffGroupId}
Functional Area
Items – Item Foundation
Business Overview
This service publishes differentiator group master data to downstream consuming systems. The payload includes the differentiator group definition together with its member differentiator IDs and display sequence. This service only publishes differentiator groups that currently have at least one detail row.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIFF_GROUP_HEAD, DIFF_GROUP_DETAIL
Additional business tables: none
JSON cache table: MERCHAPI_EXT_DIFF_GROUP
JSON generation view: V_MERCHAPI_EXT_DIFF_GROUP_JSON
Builds the header from DIFF_GROUP_HEAD and the detail array from DIFF_GROUP_DETAIL.
The view uses an inner join between the header and aggregated detail rows, so only differentiator groups that currently have at least one detail row are published.
Detail-level changes from DIFF_GROUP_DETAIL are treated as updates to the parent differentiator group, so adds, updates, and deletes on detail rows republish the full group payload.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild apply the same publication rule used by V_MERCHAPI_EXT_DIFF_GROUP_JSON: groups publish only when DIFF_GROUP_HEAD has at least one matching DIFF_GROUP_DETAIL row.
Mark cache rows deleted when the diff group no longer exists in V_MERCHAPI_EXT_DIFF_GROUP_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIFF_GROUP (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on DIFF_GROUP_HEAD, DIFF_GROUP_DETAIL.
DIFF_GROUP_DETAIL inserts, updates, and deletes are treated as updates to the parent diff group.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_DIFF_GROUP
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_DIFF_GROUP_ADHOC_PROCESS → MERCHAPI_EXT_DIFF_GROUP_ADHOC_JOB
Webhook configuration api name: foundation/diffgroup
Special handling
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/diffgroup
MerchIntegrations/services/foundation/diffgroup/{diffGroupId}
Input Parameters for MerchIntegrations/services/foundation/diffgroup
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key (Diff Group ID) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-846 Input Parameter for “MerchIntegrations/services/foundation/diffgroup/ {diffGroupId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| diffGroupId | Yes | String | Differentiator Group Id |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Input Parameters for MerchIntegrations/services/foundation/diffgroup/{diffGroupId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| diffGroupId | Yes | String | Differentiator Group ID |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output – Diff Group Head
Table 5-847 PageResultsItemsMerchApiDiffGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-848 MerchApiDiffGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for differentiator group details. |
| diffGroupId | No | String (10) | This feld contains the ID of the diff group being added or updated. |
| diffGroupDescription | No | String (120) | This feld contains the description of the diff group. |
Table 5-848 (Cont.) MerchApiDiffGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffType | No | String (6) | This feld contains the code for the type of diff contained in this group, such as S for size. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| details | No | Collection of Object | This list holds attributes for diff group details. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the diff group record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-849 DiffGroupDetail - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffId | No | String (10) | This feld contains the ID of the diff that is included in the group. |
| displaySequence | No | Number(4,0) | This feld contains the display sequence for the diff in the group. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
Table 5-850 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-850 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "diffGroupId": "Y21 Colors", "diffGroupDescription": "Year 2021 Colors", "diffType": "C", "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "details": [ { "diffId": "BLACK", "displaySequence": 1, "createDateTime": "2001-12-31T23:59:59.000Z" } ], "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output – Diff Group Details
| Name | Data Type | Description |
|---|---|---|
| diffId | String | This feld contains the ID of the diff that is included in the group. |
| Name | Data Type | Description |
|---|---|---|
| displaySequence | Number | This feld contains the display sequence for the diff in the group. |
| createDateTime | String | This feld holds the record creation date. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Output
{
"items": [
{
"action": "UPDATE",
"diffGroupId": "BASIC CLRS",
"diffGroupDescription": "Basic Color Pallet",
"diffType": "C",
"createDateTime": "2004-10-12T08:52:47.000Z",
"updateDateTime": "2004-10-12T08:52:47.000Z",
"details": [
{
"diffId": "BLACK",
"displaySequence": null,
"createDateTime": "2004-09-27T00:00:00.000Z"
},
{
"diffId": "WHITE",
"displaySequence": null,
"createDateTime": "2005-01-29T00:00:00.000Z"
}
],
"cacheTimestamp": "2022-07-02T00:15:20.548Z"
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>:<port>/MerchIntegrations/services/
foundation/diffgroup?
limit=1&since=1970-01-01T00:00:00.001Z&before=2022-07-18T23:39:19.734588+00:00
",
"rel": "self"
},
{
"href": "http://<hostname>:<port>/MerchIntegrations/services/
foundation/diffgroup?
offsetkey=BASIC+CLRS&limit=1&since=1970-01-01T00:00:00.001Z&before=2022-07-18T
23:39:19.734588+00:00",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIFF_GROUP | Yes | No | Yes | Yes |
| MERCHAPI_EXT_DIFF_GROUP | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_DIFF_GROUP _JSON | Yes | No | No | No |
Get Differentiators for Provided Group
Endpoints
MerchIntegrations/services/foundation/diffgroup
MerchIntegrations/services/foundation/diffgroup/{diffGroupId}
Functional Area
Items - Item Foundation
Business Overview
This service can be used by external applications to get all or selected diff groups and its details from Merchandising.
Service Type
GET
ReST URL
/MerchIntegrations/services/foundation/diffgroup?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/foundation/diffgroup/{diffGroupId}
Input Parameters for MerchIntegrations/services/foundation/diffgroup
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. |
Format:yyyy-mm-dd"T"hh24:mi:ss.fftzh:tzm | |||
| before | No | String | Before Date Format: yyyy-mm-dd"T"hh24:mi:ss.fftzh:tzm |
| offsetkey | No | String | Offset Key. Valid Value is combination ofsort_order_seqand node ID. |
| limit | No | BigDecimal | Pagination limit. Default Value is1000. |
Input Parameters for MerchIntegrations/services/foundation/diffgroup/{diffGroupId}
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| diffGroupId | Yes | String | Differentiator Group ID |
Output – Diff Group Head
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for Item details. Valid Values are INSERT, UPDATE and DELETE. |
| diffGroupId | String | This feld contains the ID of the diff group being added or updated. |
| diffGroupDescription | String | This feld contains the description of the diff group. |
| diffType | String | This feld contains the code for the types of diffs contained in this group, such as S for size. |
| createDateTime | String | This feld holds the record creation date. |
| UpdateDateTime | String | This feld holds the date when the record was last updated. |
| details | This List holds list attributes for Diff Group Details | |
| cacheTimestamp | String | This feld specifes date and time when Diff Group record was last maintained. |
Output – Diff Group Details
| Name | Data Type | Description |
|---|---|---|
| diffId | String | This feld contains the ID of the diff that is included in the group. |
| displaySequence | Number | This feld contains the display sequence for the diff in the group. |
| createDateTime | String | This feld holds the record creation date. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. |
| For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. | |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON output:
{
"items": [
{
"action": "UPDATE",
"diffGroupId": "BASIC CLRS",
"diffGroupDescription": "Basic Color Pallet",
"diffType": "C",
"createDateTime": "2004-10-12T08:52:47.000Z",
"updateDateTime": "2004-10-12T08:52:47.000Z",
"details": [
{
"diffId": "BLACK",
"displaySequence": null,
"createDateTime": "2004-09-27T00:00:00.000Z"
},
{
"diffId": "WHITE",
"displaySequence": null,
"createDateTime": "2005-01-29T00:00:00.000Z"
}
],
"cacheTimestamp": "2022-07-02T00:15:20.548Z"
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "http://<hostname>:<port>/MerchIntegrations/services/
foundation/diffgroup?
limit=1&since=1970-01-01T00:00:00.001Z&before=2022-07-18T23:39:19.734588+00:00
",
"rel": "self"
},
{
"href": "http://<hostname>:<port>/MerchIntegrations/services/
foundation/diffgroup?
offsetkey=BASIC+CLRS&limit=1&since=1970-01-01T00:00:00.001Z&before=2022-07-18T
23:39:19.734588+00:00",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIFF_GROUP | Yes | No | Yes | Yes |
| MERCHAPI_EXT_DIFF_GROUP | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_DIFF_GROUP _JSON | Yes | No | No | No |
Differentiator Group Upload Service
The following services are included in this functional area:
-
Create Differentiator Group Details
-
Create Differentiator Groups
-
Delete Differentiator Group Details
-
Delete Differentiator Groups
-
Update Differentiator Group Details
-
Update Differentiator Groups
Create Differentiator Group Details
Functional Area
Items - Item Foundation
Business Overview
This service is used to create Differentiator Group details for existing Diff Groups in Merchandising. Successful creation of a Differentiator Group detail depends on if all required fields are present in the message and field specific business validations.
Service Type
POST
ReST URL
MerchIntegrations/services/item/differentiator/group/details/create
Input Payload Details
Table 5-851 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | It’s a referenced element. For detailed |
| Object | description, please refer referenced element doc. |
Table 5-852 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffGroupId | Yes | String (10) | A unique differentiator group identifer. |
| details | No | Collection of Object | Description is not available. |
Table 5-853 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffId | Yes | String (10) | The identifer of the differentiator contained within the differentiator group. This id must be unique within the diff group. This must be populated when a diff group is being created since a diff group needs at least one diff id. Value must be predefned in the DIFF_IDS table. |
| displaySequence | No | Number (4) | The order in which the differentiators within the differentiator group are displayed on- line. |
Sample Input Message
{
"items": [
{
"diffGroupId": "Y21 Colors",
"details": [
{
"diffId": "BLACK",
"displaySequence": 1
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Create Differentiator Groups
Functional Area
Items - Item Foundation
Business Overview
This service is used to create Differentiator Groups in Merchandising. Successful creation of a Differentiator Group depends on if all required fields are present in the message and field specific business validations.
Service Type
POST
ReST URL
MerchIntegrations/services/item/differentiator/groups/create
Input Payload Details
Table 5-854 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | References a collection of |
| Object | differentiator groups. |
Table 5-855 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffGroupId | Yes | String (10) | A unique differentiator group identifer. |
| diffType | Yes | String (6) | A differentiator type which is predefned on the DIFF_TYPE table. Each diff group is composed of one diff type. |
| diffGroupDescription | Yes | String (120) | The description of the differentiator group. |
| details | No | Collection of Object | References a collection of differentiators within the differentiator group. |
Table 5-856 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffId | Yes | String (10) | The identifer of the differentiator contained within the differentiator group. This id must be unique within the diff group. This must be populated when a diff group is being created since a diff group needs at least one diff id. Value must be predefned in the DIFF_IDS table. |
| displaySequence | No | Number (4) | The order in which the differentiators within the differentiator group are displayed on- line. |
Sample Input Message
{
"items": [
{
"diffGroupId": "Y21 Colors",
"diffType": "C",
"diffGroupDescription": "Year 2021 Colors",
"details": [
{
"diffId": "BLACK",
"displaySequence": 1
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Delete Differentiator Group Details
Functional Area
Items - Item Foundation
Business Overview
This service is used to delete existing differentiator group details from Merchandising. For successful deletion, validation is performed to ensure that the provided Differentiator is associated with the Differentiator Group.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/differentiator/group/details/delete
Input Payload Details
Table 5-857 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of | It’s a referenced element. For detailed |
| Object | description, please refer referenced element doc. |
Table 5-858 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffGroupId | Yes | String (10) | A unique differentiator group identifer. |
| details | No | Collection of Object | Description is not available. |
Table 5-859 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffId | Yes | String (10) | The identifer of the differentiator contained within the differentiator group. This id must be unique within the diff group. Value must be predefned in the DIFF_IDS table. |
Sample Input Message
{
"items": [
{
"diffGroupId": "Y21 Colors",
"details": [
{
"diffId": "BLACK"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Delete Differentiator Groups
Functional Area
Items - Differentiators
Business Overview
This service is used to delete existing Differentiator Groups from Merchandising. For successful deletion, this API will validate that the Differentiator Group is valid and that it is not associated with any items or diff ranges.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/differentiator/groups/delete
Input Payload Details
Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of | References a collection of |
| Object | differentiator groups. |
Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffGroupId | Yes | String (10) | A unique differentiator group identifer. |
Sample Input Message
{
"items": [
{
"diffGroupId": "Y21 Colors"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
Response Code: 400 (Error)
In case of error, the following standard error response will be returned. The element validationErrors is present when the input payload or input parameters do not match the schema definition for this service. The element businessError is present when the payload passes the schema validation but an exception is caught while processing the 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"
]
}
Update Differentiator Group Details
Functional Area Items - Item Foundation
Business Overview
This service is used to update existing Differentiator Group details in Merchandising. Successful update of a Differentiator Group detail depends on if all required fields are present in the message. Only field that can be updated using this API is Display Sequence.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/differentiator/group/details/update
Input Payload Details
Table 5-860 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | It’s a referenced element. For detailed |
| Object | description, please refer referenced element doc. |
Table 5-861 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffGroupId | Yes | String (10) | A unique differentiator group identifer. |
| items | No | Collection of Object | Description is not available. |
Table 5-862 Items.Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffId | Yes | String (10) | The identifer of the differentiator contained within the differentiator group. This id must be unique within the diff group. This must be populated when a diff group is being created since a diff group needs at least one diff id. Value must be predefned in the DIFF_IDS table. |
| displaySequence | No | Number (4) | The order in which the differentiators within the differentiator group are displayed on- line. |
Sample Input Message
{
"items": [
{
"diffGroupId": "Y21 Colors",
"items": [
{
"diffId": "BLACK",
"displaySequence": 1
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Update Differentiator Groups
Functional Area
Items - Item Foundation
Business Overview
This service is used to update existing Differentiator Groups in Merchandising. When updating a differentiator group, the group ID must already be present in the Merchandising. For a successful update, all of the required header level information needs to be included in the update, similar to that for creating a new Differentiator Group. However, the diff details should not be included in a header only update. Fields that can be updated using this API include:
-
Differentiator type
-
Differentiator group description
Service Type
PUT
ReST URL
MerchIntegrations/services/item/differentiator/groups/update
Input Payload Details
Table 5-863 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | References a collection of |
| Object | differentiator groups. |
Table 5-864 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffGroupId | Yes | String (10) | A unique differentiator group identifer. |
| diffType | Yes | String (6) | A differentiator type which is predefned on the DIFF_TYPE table. Each diff group is composed of one diff type. |
| diffGroupDescription | Yes | String (120) | The description of the differentiator group. |
Sample Input Message
{
"items": [
{
"diffGroupId": "Y21 Colors",
"diffType": "C",
"diffGroupDescription": "Year 2021 Colors"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Differentiator Type Download Service
The following services are included in this functional area:
-
Get Differentiator Type Details for Provided Type
-
Get Differentiator Types
Get Differentiator Type Details for Provided Type
Endpoints
MerchIntegrations/services/foundation/difftype
MerchIntegrations/services/foundation/difftype/{diffType}
Functional Area
Items – Item Foundation
Business Overview
This service publishes all differentiator type master data to downstream consuming systems. Diff Types are used to qualify the diff IDs included in other integration. Examples of diff types are size, color, flavor, etc.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIFF_TYPE
Additional business tables: none
JSON cache table: MERCHAPI_EXT_DIFF_TYPE
JSON generation view: V_MERCHAPI_EXT_DIFF_TYPE_JSON
The JSON view is intentionally simple: it reads directly from DIFF_TYPE and publishes the differentiator type code, description, and audit timestamps.
There is no additional functional filter in the view, so every row in DIFF_TYPE is eligible for publication.
Initial refresh reads the full V_MERCHAPI_EXT_DIFF_TYPE_JSON view, supports both truncate-and-load and rebuild modes, and marks cache rows deleted when a diff type no longer exists in the view.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_DIFF_TYPE_JSON and apply none; all DIFF_TYPE rows are eligible.
Mark cache rows deleted when the diff type no longer exists in V_MERCHAPI_EXT_DIFF_TYPE_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIFF_TYPE (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on DIFF_TYPE.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_DIFF_TYPE
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_DIFF_TYPE_ADHOC_PROCESS → MERCHAPI_EXT_DIFF_TYPE_ADHOC_JOB
Webhook configuration api name: foundation/difftype
Special handling
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/difftype
MerchIntegrations/services/foundation/difftype/{diffType}
Input Parameters for Merchintegrations/services/foundation/difftype
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key (Diff Type) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-865 Input Parameter for “MerchIntegrations/services/foundation/difftype/ {diffType}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| diffType | Yes | String | Differentiator Type |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Input Parameters for Merchintegrations/services/foundation/difftype/{diffType}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| diffType | Yes | String | Differentiator Type |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output – Diff ID
Table 5-866 PageResultsItemsMerchApiDiffType - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-866 (Cont.) PageResultsItemsMerchApiDiffType - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-867 MerchApiDiffType - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for differentiator type details. |
| diffType | No | String (6) | This feld contains a code indicating the type of differentiator, for example C for Color. |
| diffTypeDescription | No | String (120) | This feld holds the description of the diff type (e.g., Color, Size, and so on). |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the record was fetched into the cache for web service publication (UTC). |
Table 5-867 (Cont.) MerchApiDiffType - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-868 LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description href No String Service URL rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "diffType": "C", "diffTypeDescription": null, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Output
{
"items": [
{
"action": "INSERT",
"diffType": "POTSZ",
"diffTypeDescription": "Pot Size",
"createDateTime": "2020-11-23T00:00:00.000Z",
"updateDateTime": "2021-07-13T00:00:00.000Z",
"cacheTimestamp": "2021-08-31T07:51:43.095Z"
}
],
"hasMore": false,
"limit": 10000,
"count": 1,
"links": [
{
"href": "https://rex.retail.us-phoenix-1.ocs.oc-test.com/rgbu-rex-rgbu-
dev1-mfcs19-1/MerchIntegrations/services/foundation/difftype?
limit=10000&since=1970-01-01T00:00:00.001Z&before=2022-03-25T09:27:21.798652+0
0:00",
"rel": "self"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIFF_TYPE | Yes | No | Yes | Yes |
| MERCHAPI_EXT_DIFF_TYPE | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_DIFF_TYPE _JSON | Yes | No | No | No |
Get Differentiator Types
Endpoints
MerchIntegrations/services/foundation/difftype
MerchIntegrations/services/foundation/difftype/{diffType}
Functional Area
Items – Item Foundation
Business Overview
This service can be used by external applications to get all or selected diff types and its details from Merchandising.
Service Type
GET
ReST URL
/MerchIntegrations/services/foundation/difftype?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/foundation/difftype/{diffType}
Input Parameters for Merchintegrations/services/foundation/difftype
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| before | No | String | Before Date Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input Parameters for Merchintegrations/services/foundation/difftype/{diffType}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| diffType | Yes | String | Differentiator Type |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output – Diff ID
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for Item details. Valid Values are INSERT, UPDATE and DELETE. |
| diffType | string | This feld contains a code indicating the type of differentiator, for example C for Color. |
| diffTypeDescription | string | This feld holds the description of the diff type (e.g., Color, Size, and so on). |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| cacheTimestamp | String | This feld specifes date and time when Diff Type record was last maintained. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| Elements | Description |
|---|---|
| links | “self” : This contains URI pointing to current page. |
| “next”: This contains URI pointing to the next page of results. |
Example JSON output:
{
"items": [
{
"action": "INSERT",
"diffType": "POTSZ",
"diffTypeDescription": "Pot Size",
"createDateTime": "2020-11-23T00:00:00.000Z",
"updateDateTime": "2021-07-13T00:00:00.000Z",
"cacheTimestamp": "2021-08-31T07:51:43.095Z"
}
],
"hasMore": false,
"limit": 10000,
"count": 1,
"links": [
{
"href": "https://rex.retail.us-phoenix-1.ocs.oc-test.com/rgbu-rex-rgbu-
dev1-mfcs19-1/MerchIntegrations/services/foundation/difftype?
limit=10000&since=1970-01-01T00:00:00.001Z&before=2022-03-25T09:27:21.798652+0
0:00",
"rel": "self"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIFF_TYPE | Yes | No | Yes | Yes |
| MERCHAPI_EXT_DIFF_TYPE | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_DIFF_TYPE _JSON | Yes | No | No | No |
Differentiator Upload Service
The following services are included in this functional area:
-
Create Differentiators
-
Delete Differentiators
-
Update Differentiators
Create Differentiators
Functional Area
Items - Item Foundation
Business Overview
This service is used to create Differentiators in Merchandising from an external system. For successful creation of a new differentiator, this service will first validate that all required fields are present in the payload. After that, the following business level validation on the input information are performed before creating the differentiator.
-
Verifies if the diff id does not contain white space or underscores
-
Verifies if diff id is not already present as a diff id or diff group id
-
Verifies if the diff type is a valid value in the DIFF_TYPE table
Service Type
POST
ReST URL
MerchIntegrations/services/item/differentiators/create
Input Payload Details
Table 5-869 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | References a collection of |
| Object | differentiators. |
Table 5-870 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffId | Yes | String (10) | The unique identifer of the differentiator. |
| diffType | Yes | String (6) | The identifer of the differentiator type. This value must be predefned on the DIFF_TYPE table. |
| diffDescription | Yes | String (120) | The description of the differentiator. |
| industryCode | No | String (10) | The unique reference number which represents all possible combinations of sizes according to the National Retail Federation. |
Table 5-870 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| industrySubgroup | No | String (10) | The unique reference number to represent a sub-grouping code used by industry standards to further identify the differentiator. For example, in the US, the National Retail Federation uses a subgroup for colors (e.g., purple is defned as 500; dark purple represents a range from 501 - 509, medium purple represents a range from 510 - 519, bright purple represents a range from 520 - 529, etc.). |
Sample Input Message
{
"items": [
{
"diffId": "XYZ02",
"diffType": "C",
"diffDescription": "XYZ02 diffDesc",
"industryCode": null,
"industrySubgroup": null
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Delete Differentiators
Functional Area
Items - Differentiators
Business Overview
This service is used to delete existing Differentiator from Merchandising. For a successful deletion, this service first validates that all required fields are present in the message and if Diff id to be deleted exists in Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/item/differentiators/delete
Input Payload Details
Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of | References a collection of |
| Object | differentiators. |
Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffId | Yes | String (10) | The unique identifer for the |
| differentiator. |
Sample Input Message
{
"items": [
{
"diffId": "XYZ02"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
Response Code: 400 (Error)
In case of error, the following standard error response will be returned. The element validationErrors is present when the input payload or input parameters do not match the schema definition for this service. The element businessError is present when the payload passes the schema validation but an exception is caught while processing the 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"
]
}
Update Differentiators
Functional Area
Items - Item Foundation
Business Overview
This service is used to update existing Differentiator in Merchandising. For a successful update of an existing differentiator, this sevice will first validate that all required fields are present in the payload and business level validations are met. These business level validations are similar to those performed at the time of creation. Please refer to Create Differentiators service description for more details.
Service Type
PUT
ReST URL
MerchIntegrations/services/item/differentiators/update
Input Payload Details
Table 5-871 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | References a collection of |
| Object | differentiators. |
Table 5-872 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| diffId | Yes | String (10) | The unique identifer of the differentiator. |
| diffDescription | Yes | String (120) | The description of the differentiator. |
| industryCode | No | String (10) | The unique reference number which represents all possible combinations of sizes according to the National Retail Federation. |
| industrySubgroup | No | String (10) | The unique reference number to represent a sub-grouping code used by industry standards to further identify the differentiator. For example, in the US, the National Retail Federation uses a subgroup for colors (e.g., purple is defned as 500; dark purple represents a range from 501 - 509, medium purple represents a range from 510 - 519, bright purple represents a range from 520 - 529, etc.). |
Sample Input Message
{
"items": [
{
"diffId": "XYZ02",
"diffDescription": "XYZ02 diffDesc UPdate",
"industryCode": null,
"industrySubgroup": null
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Seasons and Phases Download Service
The following services are included in this functional area:
- Get Seasons and Phases Service
Get Seasons and Phases Service
Endpoints
/MerchIntegrations/services/item/foundation/seasons
Functional Area
Items - Item Foundation
Business Overview
This service returns all seasons and all phases within a season. This service supports pagination, and the page size of each response is controlled by the query parameter ‘limit’. This service additionally supports two optional query parameters.
season - Include season id as a query parameter to restrict the response to a specific season.
status - This optional parameter allows filtering the response based on season start and/or end date. The comparison uses current server date. Following values are supported.
OLD - Retrieves seasons having end date less than system date
ACTIVE - Retrieves seasons having system date between start date (inclusive) and end date (inclusive)
FUTURE - Retrieves seasons having start date greater than system date
ACTIVE_FUTURE - Retrieves seasons having end date greater than or equal to system date
OLD_ACTIVE - Retrieves seasons where start date is less than or equal to system date
Service Type
GET
ReST URL
MerchIntegrations/services/item/foundation/seasons
Input Parameters for MerchIntegrations/services/foundation/seasons
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| offsetkey | No | String | Offset key |
| season | No | String (3) | Season Id |
| status | No | String | Status |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output – Season
Table 5-873 PageResultItemsSeason - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-874 Season - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| season | No | Number | This feld contains the unique identifer for season |
| description | No | String | This feld contains the description associated with the season |
| startDate | No | date | This feld contains the starting date for the season |
| endDate | No | date | This feld contains the ending date for the season |
| phases | No | Collection of Object | List of Phases associated with the season |
Table 5-875 Phases - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| phase | No | Number | This feld contains the identifer for phase that is associated to a season. The combination of season id and phase id makes a phase unique. |
| description | No | String | This feld holds the description of the phase |
| startDate | No | date | This feld contains the starting date for the phase |
| endDate | No | date | This feld contains the ending date for the phase |
Table 5-876 LinkItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-876 (Cont.) LinkItem - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetches and contains the offsetkey which unique identifies the last record of this response. Sample Response Message { "items": [ { "season": 10, "description": "Spring 2023 Collections", "startDate": "2001-12-31", "endDate": "2001-12-31", "phases": [ { "phase": 2, "description": "Spring Break/Easter 2023", "startDate": "2001-12-31", "endDate": "2001-12-31" } ] } ], "hasMore": true, "limit": 1, "count": 1, "links": [ { "href": "https://<server>:<port>/Application/services/resources?limit=1000", "rel": "self" } ] }
Output – Phases
| Name | Data Type | Description |
|---|---|---|
| phase | Number | This feld contains the identifer for phase that is associated with a season. The combination of season ID and phase ID makes a phase unique. |
| description | String | This feld holds the description of the phase |
| startDate | Date | This feld contains the starting date for the phase. Format yyyy-MM-dd |
| Name | Data Type | Description |
|---|---|---|
| endDate | Date | This feld contains the ending date for the phase. |
Formatyyyy-MM-dd |
Elements in JSON Output
Elements Description items The first element is named items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. hasMore This is dependent on the limit value. If the total rows are more than then limit defined, then hasMore is set to true , otherwise it is false . limit This is used to limit the rows to control the paging of result data. Based on the limit , next and previous links are displayed. For example: If limit is set to 25 , internally it tries to fetch 26 rows. If 26th row exists, then 25 rows are returned along with a next link; otherwise, no links are added to the JSON response. links self : This contains a URI pointing to the current page. next : This contains a URI pointing to the next page of results. Example JSON Output { "items": [ { "season": 10, "description": "Spring 2023 Collections", "startDate": "2023-03-20", "endDate": "2023-06-21", "phases": [ { "phase": 2, "description": "Spring Break/Easter 2023", "startDate": "2023-04-03", "endDate": "2023-04-16" } ] } ], "hasMore": true, "limit": 1, "count": 1, "links": [ { "href": "https Server:port/MerchIntegrations/services/item/foundation/ seasons?limit=1", "rel": "self"
},
{
"href": "https Server:port/MerchIntegrations/services/item/foundation/
seasons?offsetkey=10&limit=1",
"rel": "next"
}
]
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SEASONS | Yes | No | No | No |
| PHASES | Yes | No | No | No |
User Defined Attribute (UDA) Download Service
The following services are included in this functional area:
-
REST Endpoint for UDA details
-
REST Endpoint to Fetch UDA by UDA ID
REST Endpoint for UDA details
Endpoints
MerchIntegrations/services/foundation/uda
MerchIntegrations/services/foundation/uda/{udaId}
Functional Area
Items – Item Foundation
Business Overview
This service publishes user-defined attribute master data to downstream consuming systems. It publishes the UDA definition for date, free-form, and list-of-values UDAs, and list-of-values UDAs also include their configured value list. Functionally, there is no additional filter in the view, so every row in UDA is eligible for publication.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: UDA
Additional business tables: UDA_VALUES
JSON cache table: MERCHAPI_EXT_UDA
JSON generation view: V_MERCHAPI_EXT_UDA_JSON
The JSON view reads the UDA header from UDA and left-joins an aggregated UDA_VALUES array to populate udaListOfValues for list-of-values UDAs.
Functionally, there is no additional filter in the view, so every row in UDA is eligible for publication.
Date, free-form, and list-of-values UDAs are all included; only the LOV-style UDAs contribute rows to the udaListOfValues array.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_MERCHAPI_EXT_UDA_JSON. No additional filter criteria were identified beyond the cache-build logic.
Mark cache rows deleted when the UDA no longer exists in V_MERCHAPI_EXT_UDA_JSON.
ICL (Integration Change Log) table: ICL_RMS_UDA (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on UDA.
Queue logic distinguishes UDA versus UDA_VALUES changes through ICL_TABLE_NAME.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_UDA
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_UDA_ADHOC_PROCESS - > MERCHAPI_EXT_UDA_ADHOC_JOB
Webhook configuration api name: foundation/uda
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/uda
MerchIntegrations/services/foundation/uda/{udaId}
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key (UDA Id) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-877 Input Parameter for “MerchIntegrations/services/foundation/uda/{udaId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | Yes | Number | UDA Id |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-878 PageResultsItemsMerchApiUda - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-879 MerchApiUda - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for UDA details. |
| udaId | No | Number(5,0) | This feld contains a unique number identifying the user- defned attribute. |
| udaDescription | No | String (120) | This feld contains a description of the user-defned attribute. |
| displayType | No | String (2) | This feld contains the display type, which is how the UDA values will be displayed to the user. Valid values are DT - Date, FF - Free Form, and LV - List of Values. |
| dataType | No | String (12) | This feld contains the data type of any valid values for the UDA. Valid values are Number, Alphanumeric, and Date. |
| dataLength | No | Number(3,0) | This feld contains the data length of any valid values for the UDA. |
| singleValueInd | No | String (1) | This feld indicates whether or not the UDA should be constrained to having at most one value. Valid values are Y and N. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| udaListOfValues | No | Collection of Object | This list holds the UDA list of values. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the UDA record was fetched into the cache for web service publication (UTC). |
Table 5-879 (Cont.) MerchApiUda - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-880 UdaValues - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| udaValue | No | Number(5,0) | This feld contains a unique number identifying the user- defned attribute value for the UDA. A UDA can have multiple values. |
| udaValueDescription | No | String (250) | This feld contains a description of the user-defned attribute value. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
Table 5-881 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"udaId": 201,
"udaDescription": null,
"displayType": "FF",
"dataType": null,
"dataLength": 1,
"singleValueInd": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"udaListOfValues": [
{
"udaValue": 1,
"udaValueDescription": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| MERCHAPI_EXT_UDA | Yes | Yes | Yes | Yes |
| V_MERCHAPI_EXT_UDA_JSON | Yes | No | No | No |
| ICL_RMS_UDA | Yes | No | Yes | Yes |
REST Endpoint to Fetch UDA by UDA ID
Endpoints
MerchIntegrations/services/foundation/uda
MerchIntegrations/services/foundation/uda/{udaId}
Functional Area
Items – Item Foundation
Business Overview
This service can be used by external applications to get all or selected user defined attributes and its details from Merchandising.
Service Type
GET
ReST URL
/MerchIntegrations/services/foundation/uda?
offsetkey={offsetkey}&limit={limit}&since={since}&before={before}
/MerchIntegrations/services/foundation/uda/{udaId}
Input Parameters
Table 5-882 /MerchIntegrations/services/foundation/uda
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. |
| Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm | |||
| before | No | String | Before Date. |
| Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm | |||
| offsetkey | No | String | Offset Key. Valid Value is a Uda Id. |
| limit | No | BigDecimal | Pagination limit. Default Value is 1000. |
Table 5-883 /MerchIntegrations/services/foundation/uda/{udaId}
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| udaId | Yes | Number | Number identifying the User Defned Attribute. |
Output
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for UDA details. Valid Values are INSERT, UPDATE and DELETE. |
| udaId | Number | Number identifying the User Defned Attribute. |
| udaDescription | String | Description of the User Defned Attribute. |
| displayType | String | This feld contains the display type (how the UDA values will be displayed to the user) for the given UDA. The valid values are DT-Date, FF - Free From, LV - List of values. |
| Name | Data Type | Description |
|---|---|---|
| dataType | String | This feld contains the data type of any valid values for the UDA. Valid values are Number, Alphanumeric and Date. |
| dataLength | Number | This feld contains the data length of any valid values for the UDA. |
| singleValueInd | String | This feld indicates whether or not the UDA should be constrained to having at most one value. Valid values are Y and N. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| udaListOfValues | This list holds the UDA list of values. | |
| cacheTimestamp | String | This feld specifes date and time when the UDA record was last maintained. |
Table 5-884 udaListOfValues
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for UDA Value details. Valid Values are INSERT, UPDATE and DELETE. |
| udaValue | Number | This feld contains a unique number identifying the User Defned Attribute value for the UDA. A UDA can have multiple values. |
| udaValueDescription | String | Description of the User Defned Attribute Values. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
Table 5-885 Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than the limit defned, then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. |
| For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists, then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
Table 5-885 (Cont.) Elements in JSON Output
| Elements | Description |
|---|---|
| links | “self”: This contains URI pointing to current page. |
| “next”: This contains URI pointing to the next page of results. |
Example JSON input:
{
"items": [
{
"action": null,
"udaId": 23,
"udaDescription": "NEW_UDA_MATERIAL",
"displayType": "LV",
"dataType": "ALPHA",
"dataLength": 250,
"singleValueInd": "N",
"createDateTime": "2021-10-04T08:40:53.000Z",
"updateDateTime": "2021-10-04T08:40:53.000Z",
"udaListOfValues": [
{
"udaValue": 3,
"udaValueDescription": "AUTO_ADMIN_Nylon",
"createDateTime": "2021-10-04T08:40:53.000Z",
"updateDateTime": "2021-10-04T08:40:53.000Z"
},
{
"udaValue": 2,
"udaValueDescription": "AUTO_ADMIN_Silk_Cotton",
"createDateTime": "2021-10-04T08:40:53.000Z",
"updateDateTime": "2021-10-04T08:40:53.000Z"
},
{
"udaValue": 1,
"udaValueDescription": "AUTO_ADMIN_100_Synthetic",
"createDateTime": "2021-10-04T08:40:53.000Z",
"updateDateTime": "2021-10-04T08:40:53.000Z"
}
],
"cacheTimestamp": "2021-10-04T08:50:56.868Z"
}
],
"hasMore": false,
"limit": 1,
"count": 1,
"links": null
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| MERCHAPI_EXT_UDA | Yes | Yes | Yes | Yes |
| V_MERCHAPI_EXT_UDA_JSON | Yes | No | No | No |
| ICL_RMS_UDA | Yes | No | Yes | Yes |
Merchandise Hierarchy
The following services are included in this functional area:
-
Class Download Service
-
Get Class Details for Provided Class
-
Get Classes
-
-
Class Upload Service
-
Create Class
-
Delete Class
-
Update Class
-
-
Company Upload Service
- Update Company
-
Department Download Service
-
Get Department Details
-
Get Department Details for Provided Department
-
Get Department Name
-
Get Department Tax Details
-
Get Departments
-
-
Department Upload Service
-
Create Department
-
Create Department Taxes
-
Create Department Up Charge
-
Delete Department
-
Delete Department Up Charge
-
Update Department
-
Update Department Taxes
-
Update Department Up Charge
-
-
Copy Department Up Charges
-
Division Download Service
- Get Division Details for Provided Division
-
Get Divisions
-
• Division Upload Service – Create Division – Delete Division – Update Division
-
• Group Download Service – Get Group for Provided Group
-
– Get Groups
-
• Group Upload Service – Create Group
-
– Delete Group
-
– Update Group
-
• Merchandise Hierarchy Download Service – Get Merchandise Hierarchy
-
• Subclass Download Service – Get Subclass Details for Provided Subclass – Get Subclasses
-
• Subclass Upload Service – Create Subclass – Delete Subclass – Update Subclass
-
• Reclassification
-
Item Reclassification Download Service
-
Item Reclassification Upload Service
-
-
Merchandise Hierarchy Reclassification Upload Service
Copy Department Up Charges
Functional Area
Merchandise Hierarchy
Business Overview
This service allows the user to upload a request to copy the department up charges from one location to another for all departments, all departments in a group or a single department.
Valid Apply To types are defined under the Department Up Charge Apply To (DUAT) code type.
The Copy From and Copy To locations can be a store, virtual warehouse, importer, exporter, internal finisher, or external finisher.
The request to copy up charges will be staged and later processed through asynchronous processing.
Up charges will be copied based on the copy method. Copy methods are defined under the Department Up Charges Copy Methods (DUCM) code type and include:
Full Replace (FR)
For each department specified by the Apply To, this copy method deletes all shipping routes and associated up charges from the Copy To Location, and copies over all routes/up charges from the Copy From Location.
Copy Missing Shipping Routes (CM)
For each department specified by the Apply To, this copy method preserves existing shipping routes and up charges already defined for the Copy To Location, and copies missing shipping routes and associated up charges from the Copy From Location to the Copy To Location.
Merge Shipping Routes / Replace Up Charges (MRRU)
For each department specified by the Apply To, this copy method keeps existing routes on Copy To Location. Where the same route exists for the Copy From Location, the system deletes up charges from the Copy To Location and replaces then with up charges from the Copy From Location for that same route. Lastly, the process copies missing routes and associated up charges from the Copy From Location to the Copy To Location.
Merge Shipping Routes / Add Missing Up Charges (MRAU)
For each department specified by the Apply To, this copy method keeps existing routes defined for Copy To Location and keeps existing up charges, but adds missing charges from the Copy From Location for the same route. Then the process copies missing routes and associated up charges from the Copy From Location to the Copy To Location.
Responses:
Upon successfully staging the copy request, the service will return success status.
If there are validation errors the entire payload will be rejected, the service will return a failure status with the error message.
The service allows to stage a copy request which is duplicate at “copy from location, copy to location and department” level. In this case, the service will return success status with a warning message. The background processing, which processes the data from stage table and copies the up charges to the copy to location, will process the latest request and will ignore the previous duplicate requests.
Service Type
POST
ReST URL
MerchIntegrations/services/merchandiseHierarchy/department/upCharge/copy
Availability During Nightly Batch Cycle
This service will not be available when batches that affect costs are in-progress.
Input Payload Details
Copy - Object. See list of elements for detail
Items - Object. See list of elements for detail
CopyError - Object. See list of elements for detail
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"fromLocationType": "S",
"copyFromLocation": 1521,
"whereCopyFrom": "E",
"toLocationType": "S",
"copyToLocation": 1111,
"copyMethod": "FR",
"applyToType": "D",
"applyTo": 1810
}
]
}
Response Code: 200 (Success)
CopyResponse - Object. See list of elements for detail
CopyUpchargesResponse - Object. See list of elements for detail
Sample Response Message
{
"copyUpchargesResponse": [
{
"fromLocationType": "S",
"copyFromLocation": 1521,
"whereCopyFrom": "E",
"toLocationType": "S",
"copyToLocation": 1111,
"copyMethod": "FR",
"applyToType": "D",
"applyTo": 1810,
"warning": "String"
}
]
}
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.
CopyError - Object. See list of elements for detail
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": [
{
"fromLocationType": "S",
"copyFromLocation": 1521,
"whereCopyFrom": "E",
"toLocationType": "S",
"copyToLocation": 1111,
"copyMethod": "FR",
"applyToType": "D",
"applyTo": 1810,
"errorMessages": [
"String"
]
}
]
}
Class Download Service
The following services are included in this functional area:
-
Get Class Details for Provided Class
-
Get Classes
Get Class Details for Provided Class
Endpoints
MerchIntegrations/services/foundation/merchhier/division/{division}
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/groups/{group}
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/deps/{dept}
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
MerchIntegrations/services/foundation/merchhier/class
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
MerchIntegrations/services/foundation/merchhier/subclass
Functional Area
Merchandise Hierarchy
Business Overview
This service publishes merchandise hierarchy class data to downstream consuming systems. It is the class-level projection of the shared merchandise hierarchy cache and publishes the current class definition together with class name, department, class VAT indicator, inventorylayer identifier type, the unique class identifier, and class custom flex attributes.
The different merchandise level API shares the same underlying technical components. Refer to api documentation of ‘/foundation/merchhier/deps’ for additional details.
Table 5-886 Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| dept | No | String (4) | Department |
| class | No | String (4) | Class |
Table 5-886 (Cont.) Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String (10) | Offset key (Hierarchy ID) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-887 Input Parameter for “MerchIntegrations/services/foundation/merchhier/ class/{uniqueClassId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| uniqueClassId | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Service Type
GET
ReST URLs for Division
/MerchIntegrations/services/foundation/merchhier/division?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/foundation/merchhier/division/{division}
ReST URLs for Groups
/MerchIntegrations/services/foundation/merchhier/groups?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/foundation/merchhier/groups/{group}
ReST URLs for Department
/MerchIntegrations/services/foundation/merchhier/deps?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/foundation/merchhier/deps/{dept}
ReST URLs for Class
MerchIntegrations/services/foundation/merchhier/class
MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
ReST URLs for Subclass
/MerchIntegrations/services/foundation/merchhier/subclass?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&dept={dept}&
class={class}&subclass={subclass}
/MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
Common Input parameters for URLs without path parameter
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| before | No | String | Before Date |
| Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm | |||
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/class
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return classes which belong to this dept |
| class | No | Number | If class is provided, the service will return class(es) matching the input class number. To query a specifc class, value for both dept and class should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/subclass
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return subclasses which belong to this dept |
| class | No | Number | If class is provided, the service will return subclass(es) whose parent class number matches the input class number. |
| subclass | No | Number | If subclass is provided, the service will return subclass(es) matching the input subclass number. To query a specifc subclass, value for dept and class and subclass should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/division/{division}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| division | Yes | Number | This feld contains the number which uniquely identifes the division of the company |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/groups/{group}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| group | Yes | Number | This feld contains the number which uniquely identifes the group. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/deps/{dept}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | This feld contains the number which uniquely identifes the department. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/class/ {uniqueClassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueClassId | Yes | Number | This feld contains the number that uniquely identifes the department/class combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/subclass/ {uniqueSubclassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueSubclassId | Yes | Number | This feld contains the number that uniquely identifes the department/class/ subclass combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Division
Table 5-888 PageResultsItemsMerchApiClass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-889 MerchApiClass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for class details. |
Table 5-889 (Cont.) MerchApiClass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| class | No | Number(4,0) | This feld contains the number which uniquely identifes the class within the department. |
| className | No | String (120) | This feld contains the name of the class which, along with the class number, identifes the class. |
| classVatInd | No | String (1) | This feld indicates whether retail is displayed and held with or without VAT for items within the class. Valid values are Y and N. |
| dept | No | Number(4,0) | This feld contains the number of the department of which the class is a member. |
| uniqueClassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the class in merchandise hierarchy. |
Table 5-889 (Cont.) MerchApiClass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inventoryLayerIdentif erType | No | String (6) | This feld holds the inventory layer identifer type at the class level. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-890 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-891 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-891 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "class": 1, "className": "className", "classVatInd": "Y", "dept": 3041, "uniqueClassId": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "customFlexAttribute": [ { "name": "attribute1", "value": "value1", "valueDate": "2001-12-31", "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z" } ], "inventoryLayerIdentifierType": null, "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output - Groups
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for group details. Valid Values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| group | Number | This feld contains the number which uniquely identifes the group. |
| groupName | String | This feld contains the description which, along with the group number, identifes the group. |
| Buyer | Number | This feld contains the number of the buyer associated with the division. |
| merchantId | String | This feld contains the number of the merchandiser associated with the division. |
| division | Number | This feld contains the number which uniquely identifes the division of the company. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
Output - Department
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for department details. Valid values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| dept | Number | This feld contains the number which uniquely identifes the department. |
| deptName | String | This feld contains the description which identifes the department. |
| buyer | Number | This feld contains the number of the buyer associated with the division. |
| purchaseType | Number | This feld Contains a code which indicates whether items in this department are, by default, owned (normal) merchandise, consignment, or concession. |
| totalMarketAmount | Number | This feld contains the total market amount that is expected for the division. The feld can be used for analytics or reporting. |
| merchantId | String | This feld contains the number of the merchandiser associated with the division. |
| group | Number | This feld contains the number which uniquely identifes the group. |
| budgetMarkup | Number | This feld contains the number of the group in which the department exists. |
| Name | Data Type | Description |
|---|---|---|
| proftCalcType | Number | This feld contains a number which indicates whether proft will be calculated by cost or retail, indicating the accounting method to be used for the department. |
| markupCalcType | String | This feld contains the code which determines how markup is calculated in this department. |
| otbCalcType | String | This feld contains the code which determines how markup is calculated in this department. |
| budgetedIntakePercent | Number | This feld contains maximum average counter will hold the maximum count of days with acceptable data to include in an average for items within the department. |
| deptVatIncludeInd | String | This feld is no longer used by Merchandising and will always be defaulted to Y. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttributes | This list holds custom fex attributes for the Department. | |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
| inventoryLayerIdentiferType | String | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at department level. |
Output - Class
Table 5-892 PageResultsItemsMerchApiClass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-893 MerchApiClass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for class details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| class | No | Number(4,0) | This feld contains the number which uniquely identifes the class within the department. |
| className | No | String (120) | This feld contains the name of the class which, along with the class number, identifes the class. |
| classVatInd | No | String (1) | This feld indicates whether retail is displayed and held with or without VAT for items within the class. Valid values are Y and N. |
| dept | No | Number(4,0) | This feld contains the number of the department of which the class is a member. |
| uniqueClassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
Table 5-893 (Cont.) MerchApiClass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the class in merchandise hierarchy. |
| inventoryLayerIdentif erType | No | String (6) | This feld holds the inventory layer identifer type at the class level. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-894 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-895 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"class": 1,
"className": "className",
"classVatInd": "Y",
"dept": 3041,
"uniqueClassId": 1,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"inventoryLayerIdentifierType": null,
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Subclass
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for subclass details. Valid values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| subclass | Number | This feld Contains the number which uniquely identifes the subclass within the department and class. |
| subclassName | String | This feld Contains the name of the subclass which, along with the subclass number, uniquely identifes the subclass. |
| class | Number | Contains the number which uniquely identifes the class within the department. |
| dept | Number | This feld contains the number of the department of which the class is a member. |
| uniqueSubclassId | Number | This feld contains the number that uniquely identifes the department/class/subclass combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class/subclass key in their hierarchy and item structures. |
| uniqueClassId | Number | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttributes | This list holds custom fex attributes for the Department. | |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
Output - Custom Flex Attribute
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| Name | Data Type | Description |
|---|---|---|
| updateDateTime | String | This feld will hold the date time when the |
| custom fex attribute was last updated. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Output
Division
{
"items": [
{
"action": null,
"hierarchyLevel": "DIVISION",
"division": 1000,
"divisionName": "Grocery",
"buyer": 1002,
"merchantId": "612",
"totalMarketAmount": null,
"company": 1,
"createDateTime": "2020-08-18T08:45:53.000Z",
"updateDateTime": "2021-07-23T11:34:21.000Z",
"cacheTimestamp": "2021-08-19T06:55:11.469Z"
}
],
"hasMore": false,
"limit": 1,
"count": 1,
"links": null
}
Groups
{ "items": [ { "action": null, "hierarchyLevel": "GROUP", "group": 1841, "groupName": "Smoke Group", "buyer": 1003, "merchantId": "845", "division": 3978, "createDateTime": "2020-08-24T17:06:58.000Z", "updateDateTime": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Department { "items": [ { "action": null, "hierarchyLevel": "DEPARTMENT", "dept": 3061, "deptName": "Cats", "buyer": 610, "purchaseType": 0, "totalMarketAmount": null, "merchantId": "840", "group": 306, "budgetedMarkup": 33.3333, "profitCalcType": 1, "markupCalcType": "C", "otbCalcType": "C", "budgetedIntakePercent": 25, "deptVatIncludeInd": "Y", "createDateTime": "2020-08-18T08:45:53.000Z", "updateDateTime": "2021-07-23T12:01:34.000Z", "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null }
Class
{ "items": [ { "action": null, "hierarchyLevel": "CLASS", "class": 1, "className": "Childrens", "classVatInd": "Y", "dept": 3100, "uniqueClassId": 204, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": null, "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Subclass { "items": [ { "action": null, "hierarchyLevel": "SUBCLASS", "subclass": 2, "subclassName": "Reels", "class": 3, "dept": 3032, "uniqueSubclassId": 15, "uniqueClassId": 137, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": "2021-07-23T12:12:17.000Z", "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null }
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIVISION | Yes | No | Yes | Yes |
| ICL_RMS_GROUPS | Yes | No | Yes | Yes |
| ICL_RMS_DEPS | Yes | No | Yes | Yes |
| ICL_RMS_CLASS | Yes | No | Yes | Yes |
| ICL_RMS_SUBCLASS | Yes | No | Yes | Yes |
| COMPHEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| MERCHAPI_EXT_MERCHHIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_MERCH_HIER _JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| MERCHAPI_EXT_CLASS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_DEPS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_SUBCLASS_CFA | Yes | Yes | No | Yes |
| DEPS_CFA_EXT | Yes | No | No | No |
| CLASS_CFA_EXT | Yes | No | No | No |
| SUBCLASS_CFA_EXT | Yes | No | No | No |
Get Classes
Endpoints
MerchIntegrations/services/foundation/merchhier/division/{division}
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/groups/{group}
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/deps/{dept}
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
MerchIntegrations/services/foundation/merchhier/class
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
MerchIntegrations/services/foundation/merchhier/subclass
Functional Area
Merchandise Hierarchy
Business Overview
This service can be used by external applications to get all or selected hierarchy levels and its details from Merchandising.
Service Type
GET
ReST URLs for Division
/MerchIntegrations/services/foundation/merchhier/division?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/foundation/merchhier/division/{division}
ReST URLs for Groups
/MerchIntegrations/services/foundation/merchhier/groups?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/foundation/merchhier/groups/{group}
ReST URLs for Department
/MerchIntegrations/services/foundation/merchhier/deps?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/foundation/merchhier/deps/{dept}
ReST URLs for Class
/MerchIntegrations/services/foundation/merchhier/class?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&dept={dept}&
class={class}
/MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
ReST URLs for Subclass
/MerchIntegrations/services/foundation/merchhier/subclass?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&dept={dept}&
class={class}&subclass={subclass}
/MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
Common Input parameters for URLs without path parameter
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| before | No | String | Before Date Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/class
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return classes which belong to this dept |
| class | No | Number | If class is provided, the service will return class(es) matching the input class number. To query a specifc class, value for both dept and class should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/subclass
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return subclasses which belong to this dept |
| class | No | Number | If class is provided, the service will return subclass(es) whose parent class number matches the input class number. |
| subclass | No | Number | If subclass is provided, the service will return subclass(es) matching the input subclass number. To query a specifc subclass, value for dept and class and subclass should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/division/{division}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| division | Yes | Number | This feld contains the number which uniquely identifes the division of the company |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/groups/{group}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| group | Yes | Number | This feld contains the number which uniquely identifes the group. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/deps/{dept}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | This feld contains the number which uniquely identifes the department. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/class/ {uniqueClassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueClassId | Yes | Number | This feld contains the number that uniquely identifes the department/class combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/subclass/ {uniqueSubclassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueSubclassId | Yes | Number | This feld contains the number that uniquely identifes the department/class/ subclass combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Division
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for division details. Valid Values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| division | Number | This feld contains the number which uniquely identifes the division of the company. |
| divisionName | String | This feld contains the name which, along with the division number, identifes the division of the company. |
| buyer | Number | This feld contains the number of the buyer associated with the division. |
| merchantId | String | This feld contains the number of the merchandiser associated with the division. |
| totalMarketAmount | Number | This feld contains the total market amount that is expected for the division. The feld can be used for analytics or reporting. |
| company | Number | This feld contains the number which uniquely identifes the Company. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
Output - Groups
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for group details. Valid Values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| group | Number | This feld contains the number which uniquely identifes the group. |
| Name | Data Type | Description |
|---|---|---|
| groupName | String | This feld contains the description which, along with the group number, identifes the group. |
| Buyer | Number | This feld contains the number of the buyer associated with the division. |
| merchantId | String | This feld contains the number of the merchandiser associated with the division. |
| division | Number | This feld contains the number which uniquely identifes the division of the company. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
Output - Department
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for department details. Valid values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| dept | Number | This feld contains the number which uniquely identifes the department. |
| deptName | String | This feld contains the description which identifes the department. |
| buyer | Number | This feld contains the number of the buyer associated with the division. |
| purchaseType | Number | This feld Contains a code which indicates whether items in this department are, by default, owned (normal) merchandise, consignment, or concession. |
| totalMarketAmount | Number | This feld contains the total market amount that is expected for the division. The feld can be used for analytics or reporting. |
| merchantId | String | This feld contains the number of the merchandiser associated with the division. |
| group | Number | This feld contains the number which uniquely identifes the group. |
| budgetMarkup | Number | This feld contains the number of the group in which the department exists. |
| proftCalcType | Number | This feld contains a number which indicates whether proft will be calculated by cost or retail, indicating the accounting method to be used for the department. |
| markupCalcType | String | This feld contains the code which determines how markup is calculated in this department. |
| otbCalcType | String | This feld contains the code which determines how markup is calculated in this department. |
| Name | Data Type | Description |
|---|---|---|
| budgetedIntakePercent | Number | This feld contains maximum average counter will hold the maximum count of days with acceptable data to include in an average for items within the department. |
| deptVatIncludeInd | String | This feld is no longer used by Merchandising and will always be defaulted to Y. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttributes | This list holds custom fex attributes for the Department. | |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
| inventoryLayerIdentiferType | String | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at department level. |
Output - Class
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for class details. Valid values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| class | Number | Contains the number which uniquely identifes the class within the department. |
| className | String | This feld contains the name of the class which, along with the class number, identifes the class. |
| classVATInd | String | This feld is no longer used by Merchandising and will always default to N. |
| dept | Number | This feld contains the number of the department of which the class is a member. |
| uniqueClassId | Number | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttributes | This list holds custom fex attributes for the Department. | |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
| inventoryLayerIdentiferType | String | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at class level. |
Output - Subclass
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for subclass details. Valid values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| subclass | Number | This feld Contains the number which uniquely identifes the subclass within the department and class. |
| subclassName | String | This feld Contains the name of the subclass which, along with the subclass number, uniquely identifes the subclass. |
| class | Number | Contains the number which uniquely identifes the class within the department. |
| dept | Number | This feld contains the number of the department of which the class is a member. |
| uniqueSubclassId | Number | This feld contains the number that uniquely identifes the department/class/subclass combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class/subclass key in their hierarchy and item structures. |
| uniqueClassId | Number | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttributes | This list holds custom fex attributes for the Department. | |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
Output - Custom Flex Attribute
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| Name | Data Type | Description |
|---|---|---|
| updateDateTime | String | This feld will hold the date time when the |
| custom fex attribute was last updated. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Output
Division
{
"items": [
{
"action": null,
"hierarchyLevel": "DIVISION",
"division": 1000,
"divisionName": "Grocery",
"buyer": 1002,
"merchantId": "612",
"totalMarketAmount": null,
"company": 1,
"createDateTime": "2020-08-18T08:45:53.000Z",
"updateDateTime": "2021-07-23T11:34:21.000Z",
"cacheTimestamp": "2021-08-19T06:55:11.469Z"
}
],
"hasMore": false,
"limit": 1,
"count": 1,
"links": null
}
Groups
{ "items": [ { "action": null, "hierarchyLevel": "GROUP", "group": 1841, "groupName": "Smoke Group", "buyer": 1003, "merchantId": "845", "division": 3978, "createDateTime": "2020-08-24T17:06:58.000Z", "updateDateTime": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Department { "items": [ { "action": null, "hierarchyLevel": "DEPARTMENT", "dept": 3061, "deptName": "Cats", "buyer": 610, "purchaseType": 0, "totalMarketAmount": null, "merchantId": "840", "group": 306, "budgetedMarkup": 33.3333, "profitCalcType": 1, "markupCalcType": "C", "otbCalcType": "C", "budgetedIntakePercent": 25, "deptVatIncludeInd": "Y", "createDateTime": "2020-08-18T08:45:53.000Z", "updateDateTime": "2021-07-23T12:01:34.000Z", "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null }
Class
{ "items": [ { "action": null, "hierarchyLevel": "CLASS", "class": 1, "className": "Childrens", "classVatInd": "Y", "dept": 3100, "uniqueClassId": 204, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": null, "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Subclass { "items": [ { "action": null, "hierarchyLevel": "SUBCLASS", "subclass": 2, "subclassName": "Reels", "class": 3, "dept": 3032, "uniqueSubclassId": 15, "uniqueClassId": 137, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": "2021-07-23T12:12:17.000Z", "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null }
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIVISION | Yes | No | Yes | Yes |
| ICL_RMS_GROUPS | Yes | No | Yes | Yes |
| ICL_RMS_DEPS | Yes | No | Yes | Yes |
| ICL_RMS_CLASS | Yes | No | Yes | Yes |
| ICL_RMS_SUBCLASS | Yes | No | Yes | Yes |
| COMPHEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| MERCHAPI_EXT_MERCHHIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_MERCH_HIER _JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| MERCHAPI_EXT_CLASS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_DEPS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_SUBCLASS_CFA | Yes | Yes | No | Yes |
| DEPS_CFA_EXT | Yes | No | No | No |
| CLASS_CFA_EXT | Yes | No | No | No |
| SUBCLASS_CFA_EXT | Yes | No | No | No |
Class Upload Service
The following services are included in this functional area:
-
Create Class
-
Delete Class
-
Update Class
Create Class
Functional Area
Merchandise Hierarchy
Business Overview
The merchandise hierarchy allows the retailer to create the relationships that are necessary to support the product management structure of a company. This hierarchy reflects a classification of merchandise into multi-level descriptive categorizations to facilitate the planning, tracking, reporting, and management of merchandise within the company. This service may be used to create the class element of the merchandise hierarchy based on an external system if Merchandising is not the system of record for merchandise hierarchy information.
The merchandise hierarchy must be created from the highest-level down. This means a department is associated with a group; a class is associated with a department; and a subclass
is associated with department/class combination because classes are not unique across departments.
When a new class is created, this service will first validate that all the required fields are present in the request payload. Business level validation on the input information will be performed, which checks whether the class already exists. If the class does not exist, the class is created. Active custom flex attributes that are associated with a class can also be created through this service.
Service Type
POST
ReST URL
MerchIntegrations/services/merchandiseHierarchy/class/create
Input Payload Details
Table 5-896 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| class | Yes | Number (4) | The unique number of the class. This feld cannot be modifed. |
| className | Yes | String (120) | The name of the class. |
| dept | Yes | Number (4) | The number of the department which contains the class. This value must be predefned on the DEPS table. This value cannot be modifed. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
| invLayerIdentiferType | No | String (6) | This feld holds the type of identifer that will be used across systems to manage and identify inventory layers at class level. |
Table 5-897 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"class": 1,
"className": "className",
"dept": 3041,
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"invLayerIdentifierType": "L"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Class
Functional Area
Merchandise Hierarchy
Business Overview
This service may be used to delete the class element of the merchandise hierarchy based on an external system if Merchandising is not the system of record for merchandise hierarchy information. When a class is deleted, this service will add the class to a purging staging table for processing in the Daily Purge of Foundation Data process.
Note: Associated custom flex attributes are deleted when the class is deleted.
For more details on Class, see the Create Class service description.
Service Type
DELETE
ReST URL
MerchIntegrations/services/merchandiseHierarchy/class/delete
Input Payload Details
Table 5-898 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| class | Yes | Number (4) | The unique number of the class. |
| dept | Yes | Number (4) | The ID of the department which which contains the class. |
Sample Input Message
{
"class": 1,
"dept": 3041
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Class
Functional Area
Merchandise Hierarchy
Business Overview
This service may be used to update the class element of the merchandise hierarchy based on an external system if Merchandising is not the system of record for merchandise hierarchy information. When a class is updated, this service first validates that all the required fields are present in the request payload. Business level validation on the input information will be performed, which verifies if the class to be updated already exists. If class already exists, the class details are updated. Active custom flex attributes can also be updated for the class.
For more details on Class, see the Create Class service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/merchandiseHierarchy/class/update
Input Payload Details
Table 5-899 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| class | Yes | Number (4) | The unique number of the class. This feld cannot be modifed. |
| className | Yes | String (120) | The name of the class. |
| dept | Yes | Number (4) | The number of the department which contains the class. This value must be predefned on the DEPS table. This value cannot be modifed. |
Table 5-899 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| invLayerIdentiferType | No | String (6) | This feld holds the type of identifer that will be used across systems to manage and identify inventory layers at class level. |
Table 5-900 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"class": 1,
"className": "className",
"dept": 3041,
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"invLayerIdentifierType": "L"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Company Upload Service
The following services are included in this functional area:
• Update Company
Update Company
Functional Area
Merchandise Hierarchy
Business Overview
This service may be used to update the company element of the merchandise hierarchy based on an external system if Merchandising is not the system of record for merchandise hierarchy information.
When a company is updated, this service will first validate that all the required fields are present in the request payload. Business level validation on the input information will be performed, which verifies if the company ID to be updated already exists. If the company already exists, the details of the company are updated.
Service Type
PUT
ReST URL
MerchIntegrations/services/merchandiseHierarchy/company/update
Input Payload Details
Table 5-901 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| company | Yes | Number (4) | The unique number which identifes the company for which the system is running. This value cannot be modifed. |
| companyName | Yes | String (120) | The name of the company for which the system is running. |
| add1 | Yes | String (240) | The frst line of the company headquarters address. |
| add2 | No | String (240) | The second line of the company headquarters address. |
| add3 | No | String (240) | The third line of the company headquarters address. |
| city | Yes | String (120) | The city the company headquarters. |
| state | No | String (3) | The abbreviation of the state of the company headquarters. This value must be predefned on the STATE table. |
| countryCode | Yes | String (3) | The abbreviation of the country of the company headquarters. This value must be predefned on the COUNTRY table. |
| postalCode | No | String (30) | The postal zip code of the company headquarters. |
Sample Input Message
{
"company": 1000,
"companyName": "companyName",
"add1": "101 First Street",
"add2": "201 Second Street",
"add3": "301 Third Street",
"city": "Minneapolis",
"state": "MN",
"countryCode": "US",
"postalCode": "55555-1234"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Department Download Service
The following services are included in this functional area:
-
Get Department Details
-
Get Department Details for Provided Department
-
Get Department Name
-
Get Department Tax Details
-
Get Departments
Get Department Details
Business Overview
This service retrieves departments with ID or name matching search string.
Service Type
GET
ReST URL
/Common/departmentSearch?
searchString={searchString}&pageSize={pageSize}&pageNumber={pageNumber}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| searchString | Yes | search string for department Id or Name |
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| PageSize | No | Maximum number of records to retrieve | |
| per page | |||
| PageNumber | No | Result page to retrieve |
Output
Table 5-902 MerchHierDeptRDO
| Parameter Name | Data Type |
|---|---|
| department | BigDecimal |
| departmentName | String |
Table 5-903 PagedResultsRDO
| Parameter Name | Data Type |
|---|---|
| totalRecordCount | BigDecimal |
| Next Page URL | String |
| Previous Page URL | String |
JSON Structure:
{
“type": “paginationRDO",
“totalRecordCount": 3512,
“hyperMediaContent": {},
“links" : [],
“results": [{
“departmentId": 3252,
“departmentDescription": “some description"
}]
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_DEPS | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Get Department Details for Provided Department
Endpoints
MerchIntegrations/services/foundation/merchhier/division/{division}
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/groups/{group}
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/deps/{dept}
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
MerchIntegrations/services/foundation/merchhier/class
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
MerchIntegrations/services/foundation/merchhier/subclass
Functional Area
Merchandise Hierarchy
Business Overview
This service publishes merchandise hierarchy department data to downstream consuming systems. It is the department-level projection of the shared merchandise hierarchy cache and publishes the current department definition together with department name, buyer, purchase type, group, budgeting and markup attributes, inventory-layer identifier type, and department custom flex attributes.
The merch hierarchy publication for the different hierarchy level (Division, Gruops, Department, Class and Subclass) shares the same underlying processing logic and each of the level have its own endpoint. The below technical details covers all the hierarchy levels.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on
how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIVISION, GROUPS, DEPS, CLASS, SUBCLASS
Additional business tables: COMPHEAD, DEPS_CFA_EXT, CLASS_CFA_EXT, SUBCLASS_CFA_EXT
JSON cache table: MERCHAPI_EXT_MERCHHIER
JSON generation view: not applicable; this service reads from the shared cache maintained by foundation/merchhier
This service is the department-level child merchapi of the shared foundation/merchhier family.
It publishes only department rows from the shared cache table MERCHAPI_EXT_MERCHHIER, so the source tables, delta drivers, refresh logic, CFA helper handling, batch job, and background-engine controls are the same as the parent merchapi family section above.
Functionally, it is the department-only projection of the current merchandise hierarchy.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_MERCHHIER_JSON and apply no status filter; publishes current hierarchy rows that exist in the source tables.
Rebuild marks cache rows deleted when the hierarchy key no longer exists in V_MERCHAPI_EXT_MERCHHIER_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIVISION, ICL_RMS_GROUPS, ICL_RMS_DEPS, ICL_RMS_CLASS, ICL_RMS_SUBCLASS (ICL consumer name = MERCHAPI)
This service relies on the shared delta-processing flow used by foundation/merchhier.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_MERCHHIER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_MERCH_HIER_ADHOC_PROCESS → MERCHAPI_EXT_MERCH_HIER_ADHOC_JOB
Webhook configuration api name:
Division: foundation/merchhier/division
Groups: foundation/merchhier/groups
Department: foundation/merchhier/deps
Class: foundation/merchhier/class
Subclass: foundation/merchhier/subclass
Special handling
The parent merchapi configuration name for all the hierarchy level is ‘foundation/merchhier’.
Table 5-904 Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String (10) | Offset key (Hierarchy ID) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-905 Input Parameter for “MerchIntegrations/services/foundation/merchhier/ deps/{dept}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Service Type
GET
ReST URLs for Division
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/division/{division}
ReST URLs for Groups
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/groups/{group}
ReST URLs for Department
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/deps/{dept}
ReST URLs for Class
/MerchIntegrations/services/foundation/merchhier/class?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&dept={dept}&
class={class}
/MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
ReST URLs for Subclass
MerchIntegrations/services/foundation/merchhier/subclass
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
Common Input parameters for URLs without path parameter
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| before | No | String | Before Date Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/class
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return classes which belong to this dept |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| class | No | Number | If class is provided, the service will return class(es) matching the input class number. To query a specifc class, value for both dept and class should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/subclass
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return subclasses which belong to this dept |
| class | No | Number | If class is provided, the service will return subclass(es) whose parent class number matches the input class number. |
| subclass | No | Number | If subclass is provided, the service will return subclass(es) matching the input subclass number. To query a specifc subclass, value for dept and class and subclass should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/division/{division}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| division | Yes | Number | This feld contains the number which uniquely identifes the division of the company |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/groups/{group}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| group | Yes | Number | This feld contains the number which uniquely identifes the group. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/deps/{dept}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | This feld contains the number which uniquely identifes the department. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/class/ {uniqueClassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueClassId | Yes | Number | This feld contains the number that uniquely identifes the department/class combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/subclass/ {uniqueSubclassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueSubclassId | Yes | Number | This feld contains the number that uniquely identifes the department/class/ subclass combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Division
Table 5-906 PageResultsItemsMerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-907 MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for division details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
| divisionName | No | String (120) | This feld contains the name which, along with the division number, identifes the division of the company. |
Table 5-907 (Cont.) MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the division. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the division. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the division. The feld can be used for analytics or reporting. |
| company | No | Number(4,0) | This feld contains the number which uniquely identifes the company. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-908 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-908 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "division": 1, "divisionName": "divName", "buyer": 1, "merchantId": 1, "totalMarketAmount": 3, "company": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output - Groups
Table 5-909 PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-909 (Cont.) PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-910 MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for group details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| group | No | Number(4,0) | This feld contains the number which uniquely identifes the group. |
| groupName | No | String (120) | This feld contains the description which, along with the group number, identifes the group. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the group. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the group. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
Table 5-910 (Cont.) MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-911 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"group": 1,
"groupName": "groupName",
"buyer": 1,
"merchantId": 1,
"division": 1,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Department
Table 5-912 PageResultsItemsMerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-913 MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for department details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| dept | No | Number(4,0) | This feld contains the number which uniquely identifes the department. |
Table 5-913 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| deptName | No | String (120) | This feld contains the description which identifes the department. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the department. |
| purchaseType | No | Number(1,0) | This feld contains a code which indicates whether items in this department are, by default, owned (normal) merchandise, consignment stock, or concession stock. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the department. The feld can be used for analytics or reporting. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the department. |
| group | No | Number(4,0) | This feld contains the number of the group to which the department belongs. |
| budgetedMarkup | No | Number(12,4) | This feld contains the budgeted markup percentage. |
| proftCalcType | No | Number(1,0) | This feld contains a number which indicates whether proft will be calculated by cost or retail, indicating the accounting method to be used for the department. |
| markupCalcType | No | String (2) | This feld contains the code which determines how markup is calculated in this department. |
Table 5-913 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| otbCalcType | No | String (1) | This feld contains the code which determines how OTB is calculated in this department. |
| budgetedIntakePercen t | No | Number(12,4) | This feld contains the budgeted intake percentage. |
| deptVatIncludeInd | No | String (1) | This feld indicates the default value for the class VAT indicator. When classes are initially set up they inherit this value. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the department. |
| inventoryLayerIdentif erType | No | String (6) | This feld holds the inventory layer identifer type at the department level. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-914 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
Table 5-914 (Cont.) CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-915 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"dept": 3041,
"deptName": "deptName",
"buyer": 1,
"purchaseType": 1,
"totalMarketAmount": 3,
"merchantId": 1,
"group": 1,
"budgetedMarkup": 3,
"profitCalcType": 1,
"markupCalcType": null,
"otbCalcType": null,
"budgetedIntakePercent": 3,
"deptVatIncludeInd": "Y",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"inventoryLayerIdentifierType": null,
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Class
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for class details. Valid values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| class | Number | Contains the number which uniquely identifes the class within the department. |
| className | String | This feld contains the name of the class which, along with the class number, identifes the class. |
| classVATInd | String | This feld is no longer used by Merchandising and will always default to N. |
| dept | Number | This feld contains the number of the department of which the class is a member. |
| uniqueClassId | Number | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| Name | Data Type | Description |
|---|---|---|
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttributes | This list holds custom fex attributes for the Department. | |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
| inventoryLayerIdentiferType | String | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at class level. |
Output - Subclass
Table 5-916 PageResultsItemsMerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-917 MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for subclass details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| subclass | No | Number(4,0) | This feld contains the number which uniquely identifes the subclass within the department and class. |
Table 5-917 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| subclassName | No | String (120) | This feld contains the name of the subclass which, along with the subclass number, uniquely identifes the subclass. |
| class | No | Number(4,0) | This feld contains the number which uniquely identifes the class within the department. |
| dept | No | Number(4,0) | This feld contains the number of the department of which the subclass is a member. |
| uniqueSubclassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class/ subclass combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class/ subclass key in their hierarchy and item structures. |
| uniqueClassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
Table 5-917 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the subclass in merchandise hierarchy. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-918 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-919 LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description href No String Service URL rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "subclass": 1, "subclassName": "subclassName", "class": 1, "dept": 3041, "uniqueSubclassId": 1, "uniqueClassId": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "customFlexAttribute": [ { "name": "attribute1", "value": "value1", "valueDate": "2001-12-31", "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z" } ], "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output – Custom Flex Attribute
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| updateDateTime | String | This feld will hold the date time when the custom fex attribute was last updated. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Output
Division
{
"items": [
{
"action": null,
"hierarchyLevel": "DIVISION",
"division": 1000,
"divisionName": "Grocery",
"buyer": 1002,
"merchantId": "612",
"totalMarketAmount": null,
"company": 1,
"createDateTime": "2020-08-18T08:45:53.000Z",
"updateDateTime": "2021-07-23T11:34:21.000Z",
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Groups { "items": [ { "action": null, "hierarchyLevel": "GROUP", "group": 1841, "groupName": "Smoke Group", "buyer": 1003, "merchantId": "845", "division": 3978, "createDateTime": "2020-08-24T17:06:58.000Z", "updateDateTime": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Department { "items": [ { "action": null, "hierarchyLevel": "DEPARTMENT", "dept": 3061, "deptName": "Cats", "buyer": 610, "purchaseType": 0, "totalMarketAmount": null, "merchantId": "840", "group": 306, "budgetedMarkup": 33.3333, "profitCalcType": 1, "markupCalcType": "C", "otbCalcType": "C", "budgetedIntakePercent": 25, "deptVatIncludeInd": "Y", "createDateTime": "2020-08-18T08:45:53.000Z", "updateDateTime": "2021-07-23T12:01:34.000Z", "customFlexAttribute": null,
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Class { "items": [ { "action": null, "hierarchyLevel": "CLASS", "class": 1, "className": "Childrens", "classVatInd": "Y", "dept": 3100, "uniqueClassId": 204, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": null, "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Subclass { "items": [ { "action": null, "hierarchyLevel": "SUBCLASS", "subclass": 2, "subclassName": "Reels", "class": 3, "dept": 3032, "uniqueSubclassId": 15, "uniqueClassId": 137, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": "2021-07-23T12:12:17.000Z", "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1,
"links": null
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIVISION | Yes | No | Yes | Yes |
| ICL_RMS_GROUPS | Yes | No | Yes | Yes |
| ICL_RMS_DEPS | Yes | No | Yes | Yes |
| ICL_RMS_CLASS | Yes | No | Yes | Yes |
| ICL_RMS_SUBCLASS | Yes | No | Yes | Yes |
| COMPHEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| MERCHAPI_EXT_MERCHHIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_MERCH_HIER _JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| MERCHAPI_EXT_CLASS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_DEPS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_SUBCLASS_CFA | Yes | Yes | No | Yes |
| DEPS_CFA_EXT | Yes | No | No | No |
| CLASS_CFA_EXT | Yes | No | No | No |
| SUBCLASS_CFA_EXT | Yes | No | No | No |
Get Department Name
Business Overview
This service retrieves departments’ name of input IDs.
Service Type
GET
ReST URL
/Common/departmentLoad?departments={departments}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| departments | Yes | Comma separated values for Departments | NA |
Output
Table 5-920 MerchHierDeptRDO
| Parameter Name | Data Type |
|---|---|
| department | BigDecimal |
| departmentName | String |
JSON Structure:
{
"departmentId": 3252,
"departmentDescription": "some description"
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_DEPS | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Get Department Tax Details
This section describes the VAT Detail service.
Business Overview
VAT Detail service allows user to retrieve VAT information for a selected department.
Service Type
Get
ReST URL
Vat/vatDetail?department={departmentNumber}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Department | Yes | Department ID |
Output
RestVatRecRDO
| Parameter Name | Data Type |
|---|---|
| vatRegion | BigDecimal |
| vatRegionName | String |
| vatRegionType | String |
| vatType | String |
| vatCode | String |
| vatCodeDesc | String |
| vatRate | BigDecimal |
JSON Structure: | |
{"vatRegion": null, | |
"vatRegionName": null, | |
"vatRegionType": null, | |
"vatType": null, | |
"vatCode": null,"vatCodeDesc": null,"vatRate": null,"links": [], | |
"hyperMediaContent": {"linkRDO": []}} |
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_DEPS | Yes | No | No | No |
| VAT_DEPS | Yes | No | No | No |
| VAT_REGION | Yes | No | No | No |
| V_VAT_REGION_TL | Yes | No | No | No |
| V_VAT_CODES_TL | Yes | No | No | No |
| VAT_CODE_RATES | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Get Departments
Endpoints
MerchIntegrations/services/foundation/merchhier/division/{division}
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/groups/{group}
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/deps/{dept}
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
MerchIntegrations/services/foundation/merchhier/class
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
MerchIntegrations/services/foundation/merchhier/subclass
Functional Area
Merchandise Hierarchy
Business Overview
This service publishes merchandise hierarchy department data to downstream consuming systems. It is the department-level projection of the shared merchandise hierarchy cache and publishes the current department definition together with department name, buyer, purchase type, group, budgeting and markup attributes, inventory-layer identifier type, and department custom flex attributes.
The merch hierarchy publication for the different hierarchy level (Division, Gruops, Department, Class and Subclass) shares the same underlying processing logic and each of the level have its own endpoint. The below technical details covers all the hierarchy levels.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on
how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIVISION, GROUPS, DEPS, CLASS, SUBCLASS
Additional business tables: COMPHEAD, DEPS_CFA_EXT, CLASS_CFA_EXT, SUBCLASS_CFA_EXT
JSON cache table: MERCHAPI_EXT_MERCHHIER
JSON generation view: not applicable; this service reads from the shared cache maintained by foundation/merchhier
This service is the department-level child merchapi of the shared foundation/merchhier family.
It publishes only department rows from the shared cache table MERCHAPI_EXT_MERCHHIER, so the source tables, delta drivers, refresh logic, CFA helper handling, batch job, and background-engine controls are the same as the parent merchapi family section above.
Functionally, it is the department-only projection of the current merchandise hierarchy.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_MERCHHIER_JSON and apply no status filter; publishes current hierarchy rows that exist in the source tables.
Rebuild marks cache rows deleted when the hierarchy key no longer exists in V_MERCHAPI_EXT_MERCHHIER_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIVISION, ICL_RMS_GROUPS, ICL_RMS_DEPS, ICL_RMS_CLASS, ICL_RMS_SUBCLASS (ICL consumer name = MERCHAPI)
This service relies on the shared delta-processing flow used by foundation/merchhier.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_MERCHHIER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_MERCH_HIER_ADHOC_PROCESS → MERCHAPI_EXT_MERCH_HIER_ADHOC_JOB
Webhook configuration api name:
Division: foundation/merchhier/division
Groups: foundation/merchhier/groups
Department: foundation/merchhier/deps
Class: foundation/merchhier/class
Subclass: foundation/merchhier/subclass
Special handling
The parent merchapi configuration name for all the hierarchy level is ‘foundation/merchhier’.
Table 5-921 Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String (10) | Offset key (Hierarchy ID) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-922 Input Parameter for “MerchIntegrations/services/foundation/merchhier/ deps/{dept}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Service Type
GET
ReST URLs for Division
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/division/{division}
ReST URLs for Groups
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/groups/{group}
ReST URLs for Department
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/deps/{dept}
ReST URLs for Class
/MerchIntegrations/services/foundation/merchhier/class?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&dept={dept}&
class={class}
/MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
ReST URLs for Subclass
MerchIntegrations/services/foundation/merchhier/subclass
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
Common Input parameters for URLs without path parameter
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| before | No | String | Before Date Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/class
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return classes which belong to this dept |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| class | No | Number | If class is provided, the service will return class(es) matching the input class number. To query a specifc class, value for both dept and class should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/subclass
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return subclasses which belong to this dept |
| class | No | Number | If class is provided, the service will return subclass(es) whose parent class number matches the input class number. |
| subclass | No | Number | If subclass is provided, the service will return subclass(es) matching the input subclass number. To query a specifc subclass, value for dept and class and subclass should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/division/{division}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| division | Yes | Number | This feld contains the number which uniquely identifes the division of the company |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/groups/{group}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| group | Yes | Number | This feld contains the number which uniquely identifes the group. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/deps/{dept}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | This feld contains the number which uniquely identifes the department. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/class/ {uniqueClassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueClassId | Yes | Number | This feld contains the number that uniquely identifes the department/class combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/subclass/ {uniqueSubclassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueSubclassId | Yes | Number | This feld contains the number that uniquely identifes the department/class/ subclass combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Division
Table 5-923 PageResultsItemsMerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-924 MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for division details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
| divisionName | No | String (120) | This feld contains the name which, along with the division number, identifes the division of the company. |
Table 5-924 (Cont.) MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the division. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the division. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the division. The feld can be used for analytics or reporting. |
| company | No | Number(4,0) | This feld contains the number which uniquely identifes the company. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-925 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-925 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "division": 1, "divisionName": "divName", "buyer": 1, "merchantId": 1, "totalMarketAmount": 3, "company": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output - Groups
Table 5-926 PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-926 (Cont.) PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-927 MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for group details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| group | No | Number(4,0) | This feld contains the number which uniquely identifes the group. |
| groupName | No | String (120) | This feld contains the description which, along with the group number, identifes the group. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the group. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the group. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
Table 5-927 (Cont.) MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-928 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"group": 1,
"groupName": "groupName",
"buyer": 1,
"merchantId": 1,
"division": 1,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Department
Table 5-929 PageResultsItemsMerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-930 MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for department details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| dept | No | Number(4,0) | This feld contains the number which uniquely identifes the department. |
Table 5-930 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| deptName | No | String (120) | This feld contains the description which identifes the department. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the department. |
| purchaseType | No | Number(1,0) | This feld contains a code which indicates whether items in this department are, by default, owned (normal) merchandise, consignment stock, or concession stock. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the department. The feld can be used for analytics or reporting. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the department. |
| group | No | Number(4,0) | This feld contains the number of the group to which the department belongs. |
| budgetedMarkup | No | Number(12,4) | This feld contains the budgeted markup percentage. |
| proftCalcType | No | Number(1,0) | This feld contains a number which indicates whether proft will be calculated by cost or retail, indicating the accounting method to be used for the department. |
| markupCalcType | No | String (2) | This feld contains the code which determines how markup is calculated in this department. |
Table 5-930 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| otbCalcType | No | String (1) | This feld contains the code which determines how OTB is calculated in this department. |
| budgetedIntakePercen t | No | Number(12,4) | This feld contains the budgeted intake percentage. |
| deptVatIncludeInd | No | String (1) | This feld indicates the default value for the class VAT indicator. When classes are initially set up they inherit this value. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the department. |
| inventoryLayerIdentif erType | No | String (6) | This feld holds the inventory layer identifer type at the department level. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-931 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
Table 5-931 (Cont.) CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-932 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"dept": 3041,
"deptName": "deptName",
"buyer": 1,
"purchaseType": 1,
"totalMarketAmount": 3,
"merchantId": 1,
"group": 1,
"budgetedMarkup": 3,
"profitCalcType": 1,
"markupCalcType": null,
"otbCalcType": null,
"budgetedIntakePercent": 3,
"deptVatIncludeInd": "Y",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"inventoryLayerIdentifierType": null,
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Class
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for class details. Valid values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| class | Number | Contains the number which uniquely identifes the class within the department. |
| className | String | This feld contains the name of the class which, along with the class number, identifes the class. |
| classVATInd | String | This feld is no longer used by Merchandising and will always default to N. |
| dept | Number | This feld contains the number of the department of which the class is a member. |
| uniqueClassId | Number | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| Name | Data Type | Description |
|---|---|---|
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttributes | This list holds custom fex attributes for the Department. | |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
| inventoryLayerIdentiferType | String | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at class level. |
Output - Subclass
Table 5-933 PageResultsItemsMerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-934 MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for subclass details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| subclass | No | Number(4,0) | This feld contains the number which uniquely identifes the subclass within the department and class. |
Table 5-934 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| subclassName | No | String (120) | This feld contains the name of the subclass which, along with the subclass number, uniquely identifes the subclass. |
| class | No | Number(4,0) | This feld contains the number which uniquely identifes the class within the department. |
| dept | No | Number(4,0) | This feld contains the number of the department of which the subclass is a member. |
| uniqueSubclassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class/ subclass combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class/ subclass key in their hierarchy and item structures. |
| uniqueClassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
Table 5-934 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the subclass in merchandise hierarchy. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-935 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-936 LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description href No String Service URL rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "subclass": 1, "subclassName": "subclassName", "class": 1, "dept": 3041, "uniqueSubclassId": 1, "uniqueClassId": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "customFlexAttribute": [ { "name": "attribute1", "value": "value1", "valueDate": "2001-12-31", "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z" } ], "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output – Custom Flex Attribute
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| updateDateTime | String | This feld will hold the date time when the custom fex attribute was last updated. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Output
Division
{
"items": [
{
"action": null,
"hierarchyLevel": "DIVISION",
"division": 1000,
"divisionName": "Grocery",
"buyer": 1002,
"merchantId": "612",
"totalMarketAmount": null,
"company": 1,
"createDateTime": "2020-08-18T08:45:53.000Z",
"updateDateTime": "2021-07-23T11:34:21.000Z",
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Groups { "items": [ { "action": null, "hierarchyLevel": "GROUP", "group": 1841, "groupName": "Smoke Group", "buyer": 1003, "merchantId": "845", "division": 3978, "createDateTime": "2020-08-24T17:06:58.000Z", "updateDateTime": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Department { "items": [ { "action": null, "hierarchyLevel": "DEPARTMENT", "dept": 3061, "deptName": "Cats", "buyer": 610, "purchaseType": 0, "totalMarketAmount": null, "merchantId": "840", "group": 306, "budgetedMarkup": 33.3333, "profitCalcType": 1, "markupCalcType": "C", "otbCalcType": "C", "budgetedIntakePercent": 25, "deptVatIncludeInd": "Y", "createDateTime": "2020-08-18T08:45:53.000Z", "updateDateTime": "2021-07-23T12:01:34.000Z", "customFlexAttribute": null,
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Class { "items": [ { "action": null, "hierarchyLevel": "CLASS", "class": 1, "className": "Childrens", "classVatInd": "Y", "dept": 3100, "uniqueClassId": 204, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": null, "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Subclass { "items": [ { "action": null, "hierarchyLevel": "SUBCLASS", "subclass": 2, "subclassName": "Reels", "class": 3, "dept": 3032, "uniqueSubclassId": 15, "uniqueClassId": 137, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": "2021-07-23T12:12:17.000Z", "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1,
"links": null
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIVISION | Yes | No | Yes | Yes |
| ICL_RMS_GROUPS | Yes | No | Yes | Yes |
| ICL_RMS_DEPS | Yes | No | Yes | Yes |
| ICL_RMS_CLASS | Yes | No | Yes | Yes |
| ICL_RMS_SUBCLASS | Yes | No | Yes | Yes |
| COMPHEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| MERCHAPI_EXT_MERCHHIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_MERCH_HIER _JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| MERCHAPI_EXT_CLASS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_DEPS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_SUBCLASS_CFA | Yes | Yes | No | Yes |
| DEPS_CFA_EXT | Yes | No | No | No |
| CLASS_CFA_EXT | Yes | No | No | No |
| SUBCLASS_CFA_EXT | Yes | No | No | No |
Department Upload Service
The following services are included in this functional area:
-
Create Department
-
Create Department Taxes
-
Create Department Up Charge
-
Delete Department
-
Delete Department Up Charge
-
Update Department
-
Update Department Taxes
-
Update Department Up Charge
Create Department
Functional Area
Merchandise Hierarchy
Business Overview
The merchandise hierarchy allows the retailer to create the relationships that are necessary to support the product management structure of a company. This hierarchy reflects a classification of merchandise into multi-level descriptive categorizations to facilitate the planning, tracking, reporting, and management of merchandise within the company. This service may be used to create the department element of the merchandise hierarchy based on an external system if Merchandising is not the system of record for merchandise hierarchy information,
When a new department is created, this service will first validate that all required fields are present in the request payload. Business level validation on the input information will be performed to:
-
Verify if the department is not already present.
-
Verify if total market amount is received. If received then it should be at least 1000.
-
Verify the child details, if included, have their required fields present. The child detail contains the VAT and up charge details for a department.
If all the validations are completed successfully, then the department data is created. Active custom flex attributes that are associated with a department can also be created through this service.
Service Type
POST
ReST URL
MerchIntegrations/services/merchandiseHierarchy/department/create
Input Payload Details
Table 5-937 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number (4) | The number which uniquely identifes the department. This value cannot be modifed. |
| deptName | Yes | String (120) | The name of the department. |
| buyer | No | Number (4) | The number of the buyer associated to the department. This value must be predefned on the BUYER table. |
| purchaseType | Yes | Number (1) | The code which indicates whether items in this department are normal merchandise (0) or consignment stock (1). |
Table 5-937 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| totalMarketAmount | No | Number (24,4) | The total market amount that is expected for the department. This value cannot be less than 1000. |
| merchandiser | No | Number (4) | The number of the merchandiser that is associated to the department. This value must be predefned on the MERCHANT table. |
| groupNo | Yes | Number (4) | The number of the group to which the department belongs. This value must be predefned on the GROUPS table. |
| budgetedMarkup | No | Number (12,4) | The budgeted markup percentage. The markup percent of cost. If this value is not populated on the message it will be calculated to be the inverse of the budgeted intake percentage. This column will hold 70% as 70, not. 70. |
| proftCalcType | Yes | Number (1) | The number which indicates whether proft will be calculated by direct cost (1) or retail inventory (2). |
| markupCalcType | Yes | String (2) | The code letter that indicates how markup is calculated in this department. Valid values are cost (C) and retail (R). |
| otbCalcType | No | String (1) | The code letter which indicates how OTB is calculated for this department. Valid values are cost (C) and retail (R). |
| maximumAverageCounter | No | Number (5) | The maximum count of days with acceptable data to include in an average for items within the department. |
| averageTolerancePercent | No | Number (12,4) | The tolerance percentage value used in averaging for items within this value. This column will hold 70% as 70, not. 70. |
| budgetedIntakePercent | No | Number (12,4) | The budgeted intake percentage. The percent of the total take that is income. If this feld is not populated on the message it will be calculated as the inverse of the budgeted markup percentage. This column will hold 70% as 70, not. 70. |
| vat | No | Collection of Object | References a collection of department VAT information. |
Table 5-937 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| upcharge | No | Collection of Object | References a collection of department upcharges. |
| invLayerIdentiferType | No | String (6) | This feld holds the type of identifer that will be used across systems to manage and identify inventory layers at department level. |
| applyInvIdentiferType | No | String (1) | This feld determines whether the values at the class level should be overwritten with department-level values. |
Table 5-938 Vat - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| vatRegion | Yes | Number (4) | The number of the VAT region to which this department is associated. This value must be predefned on the VAT_REGION table. |
| vatCode | Yes | String (6) | The alphanumeric identifer of the VAT code. This value must be predefned on the VAT_CODES table. |
| vatType | Yes | String (1) | Indicates if the VAT rate is used for purchasing (C), selling (R), or both (B). |
| reverseVatInd | No | String (1) | Indicates if items in the department are subject to reverse charge VAT at the vat region. Valid values are Y and N. |
Table 5-939 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-940 Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromLocation | No | String (10) | Contains the source location from which goods will be transferred. This column can contain Country/Area/ Region IDs when From Location Type is ‘C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when From Location Type is ‘S’, ‘W’ or ‘PW’. Otherwise, it should be left blank when From Location Type is either ‘AS’ or ‘AW’. |
| toLocation | No | String (10) | Contains the destination location to which goods will be transferred. This column can contain Country/Area/ Region IDs when To Location Type is ’C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when To Location Type is ‘S’, ‘W’ or ’PW’. Otherwise, it should be left blank when To Location Type is either ‘AS’ or ‘AW’. |
| fromLocationType | Yes | String (6) | Contains the type of source location from which goods will be transferred. Valid values are defned in code type ’LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses |
| toLocationType | Yes | String (6) | Contains the type of destination location to which goods will be transferred. Valid values are defned in code type ‘LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses. |
| details | No | Collection of Object | References a collection of department upcharge detail information. |
Table 5-941 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| component | Yes | String (10) | This feld contains the unique identifer of the Up Charge component. |
| componentRate | Yes | Number (20,4) | This feld contains the rate to be charged against the cost of the Item/To Location combinations within the department. |
| perCount | No | Number (12,4) | This feld contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. |
Table 5-941 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| perCountUom | No | String (4) | This feld contains the unit of measure in which the Per Count is specifed. |
| upChargeGroup | Yes | String (6) | This feld contains the up charge group to which the component ID belongs. Valid values can be found on the codes table with a code type of UCHG. Examples are Admin. Fee (A), Freight (F) and Special K Fees (K). |
| componentCurrency | Yes | String (3) | This feld contains the currency of the Up Charge component. |
| effectiveDate | No | date | The date from which the new values are effective in the system. |
| itemDefaultInd | No | String (1) | Indicates if component rate information is updated or not for existing items under the department. |
| transferAllocationDefaultInd | No | String (1) | Indicates if component rate information is updated or not for existing transfers and allocations under the department. |
| computationValueBase | No | String (10) | Contains the Computation Value Basis for the Up Charge component. |
| costBasis | No | String (6) | Contains the basis the Up Charge will be calculated against. Valid values are defned in code type UCCB (Up Charge Cost Basis) with values: Weighted Average Cost (W), Supplier Cost (S) and Off-Invoice Net Cost (N). |
| includeInTotalUpChargeInd | No | String (1) | Used to determine if the value of the individual up charge component is used to calculate the total up charge (Y) or if it is only used as the basis of calculating another up charge (N). This column will default to the value in the ELC_COMP table but can be updated at the department level. |
Sample Input Message
{
"dept": 3041,
"deptName": "deptName",
"buyer": 610,
"purchaseType": 1,
"totalMarketAmount": 1010,
"merchandiser": 810,
"groupNo": 300,
"budgetedMarkup": 3,
"profitCalcType": 1,
"markupCalcType": "C",
"otbCalcType": "C",
"maximumAverageCounter": 42,
"averageTolerancePercent": 3,
"budgetedIntakePercent": 3,
"vat": [
{
"vatRegion": 1000,
"vatCode": "S",
"vatType": "B",
"reverseVatInd": "Y"
}
],
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"upcharge": [
{
"fromLocation": "1231",
"toLocation": "3111",
"fromLocationType": "S",
"toLocationType": "S",
"details": [
{
"component": "UC1",
"componentRate": 3.55,
"perCount": 3,
"perCountUom": "EA",
"upChargeGroup": "A",
"componentCurrency": "USD",
"effectiveDate": "2001-12-31",
"itemDefaultInd": "Y",
"transferAllocationDefaultInd": "Y",
"computationValueBase": "C1",
"costBasis": "S",
"includeInTotalUpChargeInd": "N"
}
]
}
],
"invLayerIdentifierType": "L",
"applyInvIdentifierType": "N"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Department Taxes
Functional Area
Merchandise Hierarchy
Business Overview
If you are configured to run Merchandising using the Simple VAT (SVAT) setup for your default tax type, then you can set the VAT rates by region for the department using this service. VAT details can be passed in the Department create service payload, or they can be passed in specifically using this service. VAT region and VAT codes records must exist prior to creating department VAT records. Also, when passing in a new VAT region to an existing department with attached items, the VAT information will default to all items.
Service Type
POST
ReST URL
MerchIntegrations/services/merchandiseHierarchy/department/tax/create
Input Payload Details
Table 5-942 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number (4) | The number which uniquely |
| identifes the department. This value cannot be modifed. |
Table 5-942 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| vat | No | Collection of Object | References a collection of department VAT information. |
| invLayerIdentiferType | No | String (6) | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at department level. |
| applyInvIdentiferType | No | String (1) | This feld will determine if the values at the class level should be overwritten with department level values. |
Table 5-943 Vat - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| vatRegion | Yes | Number (4) | The number of the VAT region to which this department is associated. This value must be predefned on the VAT_REGION table. |
| vatCode | Yes | String (6) | The alphanumeric identifer of the VAT code. This value must be predefned on the VAT_CODES table. |
| vatType | Yes | String (1) | Indicates if the VAT rate is used for purchasing (C), selling (R), or both (B). |
| reverseVatInd | No | String (1) | Indicates if items in the department are subject to reverse charge VAT at the vat region. Valid values are Y and N. |
Sample Input Message
{
"dept": 3041,
"vat": [
{
"vatRegion": 1000,
"vatCode": "S",
"vatType": "C",
"reverseVatInd": "Y"
}
],
"invLayerIdentifierType": "L",
"applyInvIdentifierType": "N"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Department Up Charge
Functional Area
Merchandise Hierarchy
Business Overview
This service is used to create up charges for a department.
This service first validates the set of required fields, including the from-locations and tolocations in the request payload. If no up-charge record is found, this message creates the upcharge for the department and from/to location combination. As part of the addition, you can indicate in the payload if you want to have the up-charges added to existing items or only added for new items. Similarly, there is a flag in the message to indicate whether the new up charges need to be cascaded to transfers and allocations which are unshipped and not in closed or deleted status. The department up charges will be created as soon as the request payload is consumed, but the new up charges will be cascaded to items, transfers, and allocations via batches which runs at the end of every business day.
Service Type
POST
ReST URL
MerchIntegrations/services/merchandiseHierarchy/department/upCharge/create
Input Payload Details
Table 5-944 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number (4) | The number which uniquely identifes the department. This value cannot be modifed. |
| upcharge | No | Collection of Object | References a collection of department upcharges. |
| invLayerIdentiferTyp e | No | String (6) | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at department level. |
| applyInvIdentiferTyp e | No | String (1) | This feld will determine if the values at the class level should be overwritten with department level values. |
Table 5-945 Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromLocation | No | String (10) | Contains the source location from which goods will be transferred. This column can contain Country/Area/Region IDs when From Location Type is ‘C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when From Location Type is ‘S’, ‘W’ or ‘PW’. Otherwise, it should be left blank when From Location Type is either ’AS’ or ‘AW’. |
Table 5-945 (Cont.) Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| toLocation | No | String (10) | Contains the destination location to which goods will be transferred. This column can contain Country/Area/Region IDs when To Location Type is ‘C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when To Location Type is ‘S’, ‘W’ or ‘PW’. Otherwise, it should be left blank when To Location Type is either ‘AS’ or ’AW’. |
| fromLocationType | Yes | String (6) | Contains the type of source location from which goods will be transferred. Valid values are defned in code type ‘LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses |
| toLocationType | Yes | String (6) | Contains the type of destination location to which goods will be transferred. Valid values are defned in code type ‘LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses. |
| details | No | Collection of Object | References a collection of department upcharge detail information. |
Table 5-946 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| component | Yes | String (10) | This feld contains the unique identifer of the Up Charge component. |
| componentRate | Yes | Number (20,4) | This feld contains the rate to be charged against the cost of the Item/To Location combinations within the department. |
| perCount | No | Number (12,4) | This feld contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. |
| perCountUom | No | String (4) | This feld contains the unit of measure in which the Per Count is specifed. |
| upChargeGroup | Yes | String (6) | This feld contains the up charge group to which the component ID belongs. Valid values can be found on the codes table with a code type of UCHG. Examples are Admin. Fee (A), Freight (F) and Special K Fees (K). |
| componentCurrency | Yes | String (3) | This feld contains the currency of the Up Charge component. |
| effectiveDate | No | date | The date from which the new values are effective in the system. |
| itemDefaultInd | No | String (1) | Indicates if component rate information is updated or not for existing items under the department. |
| transferAllocationDefa ultInd | No | String (1) | Indicates if component rate information is updated or not for existing transfers and allocations under the department. |
| computationValueBase | No | String (10) | Contains the Computation Value Basis for the Up Charge component. |
Table 5-946 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| costBasis | No | String (6) | Contains the basis the Up Charge will be calculated against. Valid values are defned in code type UCCB (Up Charge Cost Basis) with values: Weighted Average Cost (W), Supplier Cost (S) and Off-Invoice Net Cost (N). |
| includeInTotalUpChar geInd | No | String (1) | Used to determine if the value of the individual up charge component is used to calculate the total up charge (Y) or if it is only used as the basis of calculating another up charge (N). This column will default to the value in the ELC_COMP table but can be updated at the department level. |
Sample Input Message
{
"dept": 3041,
"upcharge": [
{
"fromLocation": "1231",
"toLocation": "6000",
"fromLocationType": "S",
"toLocationType": "S",
"details": [
{
"component": "UC1",
"componentRate": 6.2,
"perCount": 3,
"perCountUom": "EA",
"upChargeGroup": "A",
"componentCurrency": "USD",
"effectiveDate": "2001-12-31",
"itemDefaultInd": "N",
"transferAllocationDefaultInd": "Y",
"computationValueBase": "C1",
"costBasis": "S",
"includeInTotalUpChargeInd": "N"
}
]
}
],
"invLayerIdentifierType": "L",
"applyInvIdentifierType": "Y"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Delete Department
Functional Area
Merchandise Hierarchy
Business Overview
This service may be used to delete the department element of the merchandise hierarchy based on an external system if Merchandising is not the system of record for merchandise hierarchy information. When a department is deleted, this service will add the department to a purge staging table for processing in the Daily Purge of Foundation Data process.
Note: Associated custom flex attributes are also deleted when the department is deleted.
For more details on Departments, see the Create Department service description.
Service Type
DELETE
ReST URL
MerchIntegrations/services/merchandiseHierarchy/department/delete
Input Payload Details
Table 5-947 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number (4) | The number which uniquely identifes the department. |
Sample Input Message
{
"dept": 3041
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Department Up Charge
Functional Area
Merchandise Hierarchy
Business Overview
This service is used to delete up charges linked with a department. When a request containing an up charge is received, the set of required fields is validated. If the up charge record exists for the department, then this gets deleted. If no up charge component is provided, the system will delete all the up charge components along with the from location / to location combination. Deleting up charges from a department does not automatically remove them from the items or transfers and allocations for items in the department.
Service Type
DELETE
ReST URL
MerchIntegrations/services/merchandiseHierarchy/department/upCharge/delete
Input Payload Details
Table 5-948 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number (4) | The number which uniquely identifes the department. |
| upcharge | No | Collection of Object | References a collection of department upcharge information. |
Table 5-949 Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromLocation | No | String (10) | Contains the source location from which goods will be transferred. This column can contain Country/Area/Region IDs when From Location Type is ‘C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when From Location Type is ‘S’, ‘W’ or ‘PW’. Otherwise, it should be left blank when From Location Type is either ’AS’ or ‘AW’. |
Table 5-949 (Cont.) Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| toLocation | No | String (10) | Contains the destination location to which goods will be transferred. This column can contain Country/Area/Region IDs when To Location Type is ‘C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when To Location Type is ‘S’, ‘W’ or ‘PW’. Otherwise, it should be left blank when To Location Type is either ‘AS’ or ’AW’. |
| fromLocationType | Yes | String (6) | Contains the type of source location from which goods will be transferred. Valid values are defned in code type ‘LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses. |
| toLocationType | Yes | String (6) | Contains the type of destination location to which goods will be transferred. Valid values are defned in code type ‘LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses. |
| details | No | Collection of Object | References a collection of department upcharge detail information. |
Table 5-950 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| component | No | String (10) | This feld contains the unique identifer of the Up Charge component. |
| itemDefaultInd | No | String (1) | Indicates if component rate information is deleted or not for existing items under the department. |
Sample Input Message
{
"dept": 3041,
"upcharge": [
{
"fromLocation": "1121",
"toLocation": "1311",
"fromLocationType": "S",
"toLocationType": "S",
"details": [
{
"component": "UC1",
"itemDefaultInd": "N"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Update Department
Functional Area
Merchandise Hierarchy
Business Overview
This service may be used to update the department element of the merchandise hierarchy based on an external system if Merchandising is not the system of record for merchandise hierarchy information. When a department is updated, this service will first validate that all the required fields are present in the message. Business level validation on the input information will be performed to:
-
Verify if the department is present.
-
Verify if total market amount is received then it should be at least 1000.
-
Verify the child detail, if included, contain all required fields. The child detail contain VAT and upcharge details for a department.
If all the validations are completed successfully, then the department is updated. Active custom flex attributes can also be updated for the department via this service.
For more details on Department, see the Create Department service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/merchandiseHierarchy/department/update
Input Payload Details
Table 5-951 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number (4) | The number which uniquely identifes the department. This value cannot be modifed. |
| deptName | Yes | String (120) | The name of the department. |
| buyer | No | Number (4) | The number of the buyer associated to the department. This value must be predefned on the BUYER table. |
Table 5-951 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| totalMarketAmount | No | Number (24,4) | The total market amount that is expected for the department. This value cannot be less than 1000. |
| merchandiser | No | Number (4) | The number of the merchandiser that is associated to the department. This value must be predefned on the MERCHANT table. |
| groupNo | Yes | Number (4) | The number of the group to which the department belongs. This value must be predefned on the GROUPS table. |
| budgetedMarkup | No | Number (12,4) | The budgeted markup percentage. The markup percent of cost. If this value is not populated on the message it will be calculated to be the inverse of the budgeted intake percentage. This column will hold 70% as 70, not. 70. |
| markupCalcType | Yes | String (2) | The code letter that indicates how markup is calculated in this department. Valid values are cost (C) and retail (R). |
| maximumAverageCounter | No | Number (5) | The maximum count of days with acceptable data to include in an average for items within the department. |
| averageTolerancePercent | No | Number (12,4) | The tolerance percentage value used in averaging for items within this value. This column will hold 70% as 70, not. 70. |
| budgetedIntakePercent | No | Number (12,4) | The budgeted intake percentage. The percent of the total take that is income. If this feld is not populated on the message it will be calculated as the inverse of the budgeted markup percentage. This column will hold 70% as 70, not. 70. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| invLayerIdentiferType | No | String (6) | This feld holds the type of identifer that will be used across systems to manage and identify inventory layers at department level. |
Table 5-951 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| applyInvIdentiferType | No | String (1) | This feld determine whether the values at the class level should be overwritten with department-level values. |
Table 5-952 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"dept": 3041,
"deptName": "deptName",
"buyer": 1000,
"totalMarketAmount": 3,
"merchandiser": 1000,
"groupNo": 1000,
"budgetedMarkup": 3,
"markupCalcType": "C",
"maximumAverageCounter": 10000,
"averageTolerancePercent": 3,
"budgetedIntakePercent": 3,
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"invLayerIdentifierType": "L",
"applyInvIdentifierType": "N"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Department Taxes
Functional Area
Merchandise Hierarchy
Business Overview
If you are configured to run Merchandising using Simple VAT (SVAT) for your default tax type, then you can update the VAT rates by region for the department using this service. This service will check for all the required fields in the message and updates the VAT information for a department. When updating VAT details for a department containing items, the VAT information will default to all items within the department.
Service Type
PUT
ReST URL
MerchIntegrations/services/merchandiseHierarchy/department/tax/update
Input Payload Details
Table 5-953 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number (4) | The number which uniquely identifes the department. This value cannot be modifed. |
| vat | No | Collection of Object | References a collection of department VAT information. |
Table 5-953 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| invLayerIdentiferType | No | String (6) | This feld holds the type of identifer that will be used across systems to manage and identify inventory layers at department level. |
| applyInvIdentiferType | No | String (1) | This feld determines whether the values at the class level should be overwritten with department-level values. |
Table 5-954 Vat - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| vatRegion | Yes | Number (4) | The number of the VAT region to which this department is associated. This value must be predefned on the VAT_REGION table. |
| vatCode | Yes | String (6) | The alphanumeric identifer of the VAT code. This value must be predefned on the VAT_CODES table. |
| vatType | Yes | String (1) | Indicates if the VAT rate is used for purchasing (C), selling (R), or both (B). |
| reverseVatInd | No | String (1) | Indicates if items in the department are subject to reverse charge VAT at the vat region. Valid values are Y and N. |
Sample Input Message
{
"dept": 3041,
"vat": [
{
"vatRegion": 1000,
"vatCode": "S",
"vatType": "C",
"reverseVatInd": "Y"
}
],
"invLayerIdentifierType": "L",
"applyInvIdentifierType": "N"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Department Up Charge
Functional Area
Merchandise Hierarchy
Business Overview
This service is used to update up charges linked with a department. When a message containing up charge details is received, the set of required fields is validated. If an up charge record exists for a department and the from-location and to-location combination in the request payload, then the up charge details are updated for the department. As part of the update there is also an option to have the up charges updated for items in the department, or unshipped transfers and allocations for items in the department. The department up charges will be updated as soon as the request payload is consumed, but the updates will be cascaded to items, transfers, and allocations via batches which runs at the end of every day.
Service Type
PUT
ReST URL
MerchIntegrations/services/merchandiseHierarchy/department/upCharge/update
Input Payload Details
Table 5-955 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number (4) | The number which uniquely identifes the department. This value cannot be modifed. |
| upcharge | No | Collection of Object | References a collection of department upcharges. |
| invLayerIdentiferTyp e | No | String (6) | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at department level. |
| applyInvIdentiferTyp e | No | String (1) | This feld will determine if the values at the class level should be overwritten with department level values. |
Table 5-956 Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromLocation | No | String (10) | Contains the source location from which goods will be transferred. This column can contain Country/Area/Region IDs when From Location Type is ‘C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when From Location Type is ‘S’, ‘W’ or ‘PW’. Otherwise, it should be left blank when From Location Type is either ’AS’ or ‘AW’. |
Table 5-956 (Cont.) Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| toLocation | No | String (10) | Contains the destination location to which goods will be transferred. This column can contain Country/Area/Region IDs when To Location Type is ‘C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when To Location Type is ‘S’, ‘W’ or ‘PW’. Otherwise, it should be left blank when To Location Type is either ‘AS’ or ’AW’. |
| fromLocationType | Yes | String (6) | Contains the type of source location from which goods will be transferred. Valid values are defned in code type ‘LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses |
| toLocationType | Yes | String (6) | Contains the type of destination location to which goods will be transferred. Valid values are defned in code type ‘LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses. |
| details | No | Collection of Object | References a collection of department upcharge detail information. |
Table 5-957 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| component | Yes | String (10) | This feld contains the unique identifer of the Up Charge component. |
| componentRate | Yes | Number (20,4) | This feld contains the rate to be charged against the cost of the Item/To Location combinations within the department. |
| perCount | No | Number (12,4) | This feld contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. |
| perCountUom | No | String (4) | This feld contains the unit of measure in which the Per Count is specifed. |
| upChargeGroup | Yes | String (6) | This feld contains the up charge group to which the component ID belongs. Valid values can be found on the codes table with a code type of UCHG. Examples are Admin. Fee (A), Freight (F) and Special K Fees (K). |
| componentCurrency | Yes | String (3) | This feld contains the currency of the Up Charge component. |
| effectiveDate | No | date | The date from which the new values are effective in the system. |
| itemDefaultInd | No | String (1) | Indicates if component rate information is updated or not for existing items under the department. |
| transferAllocationDefa ultInd | No | String (1) | Indicates if component rate information is updated or not for existing transfers and allocations under the department. |
| computationValueBase | No | String (10) | Contains the Computation Value Basis for the Up Charge component. |
Table 5-957 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| costBasis | No | String (6) | Contains the basis the Up Charge will be calculated against. Valid values are defned in code type UCCB (Up Charge Cost Basis) with values: Weighted Average Cost (W), Supplier Cost (S) and Off-Invoice Net Cost (N). |
| includeInTotalUpChar geInd | No | String (1) | Used to determine if the value of the individual up charge component is used to calculate the total up charge (Y) or if it is only used as the basis of calculating another up charge (N). This column will default to the value in the ELC_COMP table but can be updated at the department level. |
Sample Input Message
{
"dept": 3041,
"upcharge": [
{
"fromLocation": "1231",
"toLocation": "1521",
"fromLocationType": "S",
"toLocationType": "S",
"details": [
{
"component": "UC1",
"componentRate": 3.55,
"perCount": 3,
"perCountUom": "EA",
"upChargeGroup": "A",
"componentCurrency": "USD",
"effectiveDate": "2001-12-31",
"itemDefaultInd": "N",
"transferAllocationDefaultInd": "Y",
"computationValueBase": null,
"costBasis": "S",
"includeInTotalUpChargeInd": "N"
}
]
}
],
"invLayerIdentifierType": "L",
"applyInvIdentifierType": "N"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Division Download Service
The following services are included in this functional area:
-
Get Division Details for Provided Division
-
Get Divisions
Get Division Details for Provided Division
Endpoints
MerchIntegrations/services/foundation/merchhier/division/{division}
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/groups/{group}
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/deps/{dept}
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
MerchIntegrations/services/foundation/merchhier/class
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
MerchIntegrations/services/foundation/merchhier/subclass
Functional Area
Merchandise Hierarchy
Business Overview
This service publishes merchandise hierarchy department data to downstream consuming systems. It is the department-level projection of the shared merchandise hierarchy cache and publishes the current department definition together with department name, buyer, purchase type, group, budgeting and markup attributes, inventory-layer identifier type, and department custom flex attributes.
The merch hierarchy publication for the different hierarchy level (Division, Gruops, Department, Class and Subclass) shares the same underlying processing logic and each of the level have its own endpoint. The below technical details covers all the hierarchy levels.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on
how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIVISION, GROUPS, DEPS, CLASS, SUBCLASS
Additional business tables: COMPHEAD, DEPS_CFA_EXT, CLASS_CFA_EXT, SUBCLASS_CFA_EXT
JSON cache table: MERCHAPI_EXT_MERCHHIER
JSON generation view: not applicable; this service reads from the shared cache maintained by foundation/merchhier
This service is the department-level child merchapi of the shared foundation/merchhier family.
It publishes only department rows from the shared cache table MERCHAPI_EXT_MERCHHIER, so the source tables, delta drivers, refresh logic, CFA helper handling, batch job, and background-engine controls are the same as the parent merchapi family section above.
Functionally, it is the department-only projection of the current merchandise hierarchy.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_MERCHHIER_JSON and apply no status filter; publishes current hierarchy rows that exist in the source tables.
Rebuild marks cache rows deleted when the hierarchy key no longer exists in V_MERCHAPI_EXT_MERCHHIER_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIVISION, ICL_RMS_GROUPS, ICL_RMS_DEPS, ICL_RMS_CLASS, ICL_RMS_SUBCLASS (ICL consumer name = MERCHAPI)
This service relies on the shared delta-processing flow used by foundation/merchhier.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_MERCHHIER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_MERCH_HIER_ADHOC_PROCESS → MERCHAPI_EXT_MERCH_HIER_ADHOC_JOB
Webhook configuration api name:
Division: foundation/merchhier/division
Groups: foundation/merchhier/groups
Department: foundation/merchhier/deps
Class: foundation/merchhier/class
Subclass: foundation/merchhier/subclass
Special handling
The parent merchapi configuration name for all the hierarchy level is ‘foundation/merchhier’.
Table 5-958 Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String (10) | Offset key (Hierarchy ID) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-959 Input Parameter for “MerchIntegrations/services/foundation/merchhier/ deps/{dept}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Service Type
GET
ReST URLs for Division
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/division/{division}
ReST URLs for Groups
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/groups/{group}
ReST URLs for Department
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/deps/{dept}
ReST URLs for Class
/MerchIntegrations/services/foundation/merchhier/class?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&dept={dept}&
class={class}
/MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
ReST URLs for Subclass
MerchIntegrations/services/foundation/merchhier/subclass
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
Common Input parameters for URLs without path parameter
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| before | No | String | Before Date Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/class
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return classes which belong to this dept |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| class | No | Number | If class is provided, the service will return class(es) matching the input class number. To query a specifc class, value for both dept and class should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/subclass
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return subclasses which belong to this dept |
| class | No | Number | If class is provided, the service will return subclass(es) whose parent class number matches the input class number. |
| subclass | No | Number | If subclass is provided, the service will return subclass(es) matching the input subclass number. To query a specifc subclass, value for dept and class and subclass should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/division/{division}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| division | Yes | Number | This feld contains the number which uniquely identifes the division of the company |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/groups/{group}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| group | Yes | Number | This feld contains the number which uniquely identifes the group. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/deps/{dept}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | This feld contains the number which uniquely identifes the department. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/class/ {uniqueClassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueClassId | Yes | Number | This feld contains the number that uniquely identifes the department/class combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/subclass/ {uniqueSubclassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueSubclassId | Yes | Number | This feld contains the number that uniquely identifes the department/class/ subclass combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Division
Table 5-960 PageResultsItemsMerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-961 MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for division details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
| divisionName | No | String (120) | This feld contains the name which, along with the division number, identifes the division of the company. |
Table 5-961 (Cont.) MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the division. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the division. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the division. The feld can be used for analytics or reporting. |
| company | No | Number(4,0) | This feld contains the number which uniquely identifes the company. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-962 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-962 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "division": 1, "divisionName": "divName", "buyer": 1, "merchantId": 1, "totalMarketAmount": 3, "company": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output - Groups
Table 5-963 PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-963 (Cont.) PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-964 MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for group details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| group | No | Number(4,0) | This feld contains the number which uniquely identifes the group. |
| groupName | No | String (120) | This feld contains the description which, along with the group number, identifes the group. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the group. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the group. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
Table 5-964 (Cont.) MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-965 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"group": 1,
"groupName": "groupName",
"buyer": 1,
"merchantId": 1,
"division": 1,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Department
Table 5-966 PageResultsItemsMerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-967 MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for department details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| dept | No | Number(4,0) | This feld contains the number which uniquely identifes the department. |
Table 5-967 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| deptName | No | String (120) | This feld contains the description which identifes the department. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the department. |
| purchaseType | No | Number(1,0) | This feld contains a code which indicates whether items in this department are, by default, owned (normal) merchandise, consignment stock, or concession stock. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the department. The feld can be used for analytics or reporting. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the department. |
| group | No | Number(4,0) | This feld contains the number of the group to which the department belongs. |
| budgetedMarkup | No | Number(12,4) | This feld contains the budgeted markup percentage. |
| proftCalcType | No | Number(1,0) | This feld contains a number which indicates whether proft will be calculated by cost or retail, indicating the accounting method to be used for the department. |
| markupCalcType | No | String (2) | This feld contains the code which determines how markup is calculated in this department. |
Table 5-967 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| otbCalcType | No | String (1) | This feld contains the code which determines how OTB is calculated in this department. |
| budgetedIntakePercen t | No | Number(12,4) | This feld contains the budgeted intake percentage. |
| deptVatIncludeInd | No | String (1) | This feld indicates the default value for the class VAT indicator. When classes are initially set up they inherit this value. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the department. |
| inventoryLayerIdentif erType | No | String (6) | This feld holds the inventory layer identifer type at the department level. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-968 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
Table 5-968 (Cont.) CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-969 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"dept": 3041,
"deptName": "deptName",
"buyer": 1,
"purchaseType": 1,
"totalMarketAmount": 3,
"merchantId": 1,
"group": 1,
"budgetedMarkup": 3,
"profitCalcType": 1,
"markupCalcType": null,
"otbCalcType": null,
"budgetedIntakePercent": 3,
"deptVatIncludeInd": "Y",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"inventoryLayerIdentifierType": null,
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Class
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for class details. Valid values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| class | Number | Contains the number which uniquely identifes the class within the department. |
| className | String | This feld contains the name of the class which, along with the class number, identifes the class. |
| classVATInd | String | This feld is no longer used by Merchandising and will always default to N. |
| dept | Number | This feld contains the number of the department of which the class is a member. |
| uniqueClassId | Number | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| Name | Data Type | Description |
|---|---|---|
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttributes | This list holds custom fex attributes for the Department. | |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
| inventoryLayerIdentiferType | String | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at class level. |
Output - Subclass
Table 5-970 PageResultsItemsMerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-971 MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for subclass details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| subclass | No | Number(4,0) | This feld contains the number which uniquely identifes the subclass within the department and class. |
Table 5-971 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| subclassName | No | String (120) | This feld contains the name of the subclass which, along with the subclass number, uniquely identifes the subclass. |
| class | No | Number(4,0) | This feld contains the number which uniquely identifes the class within the department. |
| dept | No | Number(4,0) | This feld contains the number of the department of which the subclass is a member. |
| uniqueSubclassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class/ subclass combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class/ subclass key in their hierarchy and item structures. |
| uniqueClassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
Table 5-971 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the subclass in merchandise hierarchy. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-972 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-973 LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description href No String Service URL rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "subclass": 1, "subclassName": "subclassName", "class": 1, "dept": 3041, "uniqueSubclassId": 1, "uniqueClassId": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "customFlexAttribute": [ { "name": "attribute1", "value": "value1", "valueDate": "2001-12-31", "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z" } ], "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output – Custom Flex Attribute
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| updateDateTime | String | This feld will hold the date time when the custom fex attribute was last updated. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Output
Division
{
"items": [
{
"action": null,
"hierarchyLevel": "DIVISION",
"division": 1000,
"divisionName": "Grocery",
"buyer": 1002,
"merchantId": "612",
"totalMarketAmount": null,
"company": 1,
"createDateTime": "2020-08-18T08:45:53.000Z",
"updateDateTime": "2021-07-23T11:34:21.000Z",
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Groups { "items": [ { "action": null, "hierarchyLevel": "GROUP", "group": 1841, "groupName": "Smoke Group", "buyer": 1003, "merchantId": "845", "division": 3978, "createDateTime": "2020-08-24T17:06:58.000Z", "updateDateTime": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Department { "items": [ { "action": null, "hierarchyLevel": "DEPARTMENT", "dept": 3061, "deptName": "Cats", "buyer": 610, "purchaseType": 0, "totalMarketAmount": null, "merchantId": "840", "group": 306, "budgetedMarkup": 33.3333, "profitCalcType": 1, "markupCalcType": "C", "otbCalcType": "C", "budgetedIntakePercent": 25, "deptVatIncludeInd": "Y", "createDateTime": "2020-08-18T08:45:53.000Z", "updateDateTime": "2021-07-23T12:01:34.000Z", "customFlexAttribute": null,
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Class { "items": [ { "action": null, "hierarchyLevel": "CLASS", "class": 1, "className": "Childrens", "classVatInd": "Y", "dept": 3100, "uniqueClassId": 204, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": null, "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Subclass { "items": [ { "action": null, "hierarchyLevel": "SUBCLASS", "subclass": 2, "subclassName": "Reels", "class": 3, "dept": 3032, "uniqueSubclassId": 15, "uniqueClassId": 137, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": "2021-07-23T12:12:17.000Z", "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1,
"links": null
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIVISION | Yes | No | Yes | Yes |
| ICL_RMS_GROUPS | Yes | No | Yes | Yes |
| ICL_RMS_DEPS | Yes | No | Yes | Yes |
| ICL_RMS_CLASS | Yes | No | Yes | Yes |
| ICL_RMS_SUBCLASS | Yes | No | Yes | Yes |
| COMPHEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| MERCHAPI_EXT_MERCHHIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_MERCH_HIER _JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| MERCHAPI_EXT_CLASS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_DEPS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_SUBCLASS_CFA | Yes | Yes | No | Yes |
| DEPS_CFA_EXT | Yes | No | No | No |
| CLASS_CFA_EXT | Yes | No | No | No |
| SUBCLASS_CFA_EXT | Yes | No | No | No |
Get Divisions
Endpoints
MerchIntegrations/services/foundation/merchhier/division/{division}
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/groups/{group}
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/deps/{dept}
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
MerchIntegrations/services/foundation/merchhier/class
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
MerchIntegrations/services/foundation/merchhier/subclass
Functional Area
Merchandise Hierarchy
Business Overview
This service publishes merchandise hierarchy department data to downstream consuming systems. It is the department-level projection of the shared merchandise hierarchy cache and publishes the current department definition together with department name, buyer, purchase type, group, budgeting and markup attributes, inventory-layer identifier type, and department custom flex attributes.
The merch hierarchy publication for the different hierarchy level (Division, Gruops, Department, Class and Subclass) shares the same underlying processing logic and each of the level have its own endpoint. The below technical details covers all the hierarchy levels.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on
how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIVISION, GROUPS, DEPS, CLASS, SUBCLASS
Additional business tables: COMPHEAD, DEPS_CFA_EXT, CLASS_CFA_EXT, SUBCLASS_CFA_EXT
JSON cache table: MERCHAPI_EXT_MERCHHIER
JSON generation view: not applicable; this service reads from the shared cache maintained by foundation/merchhier
This service is the department-level child merchapi of the shared foundation/merchhier family.
It publishes only department rows from the shared cache table MERCHAPI_EXT_MERCHHIER, so the source tables, delta drivers, refresh logic, CFA helper handling, batch job, and background-engine controls are the same as the parent merchapi family section above.
Functionally, it is the department-only projection of the current merchandise hierarchy.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_MERCHHIER_JSON and apply no status filter; publishes current hierarchy rows that exist in the source tables.
Rebuild marks cache rows deleted when the hierarchy key no longer exists in V_MERCHAPI_EXT_MERCHHIER_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIVISION, ICL_RMS_GROUPS, ICL_RMS_DEPS, ICL_RMS_CLASS, ICL_RMS_SUBCLASS (ICL consumer name = MERCHAPI)
This service relies on the shared delta-processing flow used by foundation/merchhier.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_MERCHHIER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_MERCH_HIER_ADHOC_PROCESS → MERCHAPI_EXT_MERCH_HIER_ADHOC_JOB
Webhook configuration api name:
Division: foundation/merchhier/division
Groups: foundation/merchhier/groups
Department: foundation/merchhier/deps
Class: foundation/merchhier/class
Subclass: foundation/merchhier/subclass
Special handling
The parent merchapi configuration name for all the hierarchy level is ‘foundation/merchhier’.
Table 5-974 Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String (10) | Offset key (Hierarchy ID) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-975 Input Parameter for “MerchIntegrations/services/foundation/merchhier/ deps/{dept}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Service Type
GET
ReST URLs for Division
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/division/{division}
ReST URLs for Groups
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/groups/{group}
ReST URLs for Department
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/deps/{dept}
ReST URLs for Class
/MerchIntegrations/services/foundation/merchhier/class?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&dept={dept}&
class={class}
/MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
ReST URLs for Subclass
MerchIntegrations/services/foundation/merchhier/subclass
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
Common Input parameters for URLs without path parameter
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| before | No | String | Before Date Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/class
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return classes which belong to this dept |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| class | No | Number | If class is provided, the service will return class(es) matching the input class number. To query a specifc class, value for both dept and class should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/subclass
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return subclasses which belong to this dept |
| class | No | Number | If class is provided, the service will return subclass(es) whose parent class number matches the input class number. |
| subclass | No | Number | If subclass is provided, the service will return subclass(es) matching the input subclass number. To query a specifc subclass, value for dept and class and subclass should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/division/{division}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| division | Yes | Number | This feld contains the number which uniquely identifes the division of the company |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/groups/{group}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| group | Yes | Number | This feld contains the number which uniquely identifes the group. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/deps/{dept}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | This feld contains the number which uniquely identifes the department. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/class/ {uniqueClassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueClassId | Yes | Number | This feld contains the number that uniquely identifes the department/class combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/subclass/ {uniqueSubclassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueSubclassId | Yes | Number | This feld contains the number that uniquely identifes the department/class/ subclass combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Division
Table 5-976 PageResultsItemsMerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-977 MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for division details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
| divisionName | No | String (120) | This feld contains the name which, along with the division number, identifes the division of the company. |
Table 5-977 (Cont.) MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the division. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the division. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the division. The feld can be used for analytics or reporting. |
| company | No | Number(4,0) | This feld contains the number which uniquely identifes the company. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-978 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-978 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "division": 1, "divisionName": "divName", "buyer": 1, "merchantId": 1, "totalMarketAmount": 3, "company": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output - Groups
Table 5-979 PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-979 (Cont.) PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-980 MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for group details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| group | No | Number(4,0) | This feld contains the number which uniquely identifes the group. |
| groupName | No | String (120) | This feld contains the description which, along with the group number, identifes the group. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the group. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the group. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
Table 5-980 (Cont.) MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-981 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"group": 1,
"groupName": "groupName",
"buyer": 1,
"merchantId": 1,
"division": 1,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Department
Table 5-982 PageResultsItemsMerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-983 MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for department details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| dept | No | Number(4,0) | This feld contains the number which uniquely identifes the department. |
Table 5-983 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| deptName | No | String (120) | This feld contains the description which identifes the department. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the department. |
| purchaseType | No | Number(1,0) | This feld contains a code which indicates whether items in this department are, by default, owned (normal) merchandise, consignment stock, or concession stock. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the department. The feld can be used for analytics or reporting. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the department. |
| group | No | Number(4,0) | This feld contains the number of the group to which the department belongs. |
| budgetedMarkup | No | Number(12,4) | This feld contains the budgeted markup percentage. |
| proftCalcType | No | Number(1,0) | This feld contains a number which indicates whether proft will be calculated by cost or retail, indicating the accounting method to be used for the department. |
| markupCalcType | No | String (2) | This feld contains the code which determines how markup is calculated in this department. |
Table 5-983 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| otbCalcType | No | String (1) | This feld contains the code which determines how OTB is calculated in this department. |
| budgetedIntakePercen t | No | Number(12,4) | This feld contains the budgeted intake percentage. |
| deptVatIncludeInd | No | String (1) | This feld indicates the default value for the class VAT indicator. When classes are initially set up they inherit this value. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the department. |
| inventoryLayerIdentif erType | No | String (6) | This feld holds the inventory layer identifer type at the department level. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-984 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
Table 5-984 (Cont.) CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-985 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"dept": 3041,
"deptName": "deptName",
"buyer": 1,
"purchaseType": 1,
"totalMarketAmount": 3,
"merchantId": 1,
"group": 1,
"budgetedMarkup": 3,
"profitCalcType": 1,
"markupCalcType": null,
"otbCalcType": null,
"budgetedIntakePercent": 3,
"deptVatIncludeInd": "Y",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"inventoryLayerIdentifierType": null,
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Class
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for class details. Valid values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| class | Number | Contains the number which uniquely identifes the class within the department. |
| className | String | This feld contains the name of the class which, along with the class number, identifes the class. |
| classVATInd | String | This feld is no longer used by Merchandising and will always default to N. |
| dept | Number | This feld contains the number of the department of which the class is a member. |
| uniqueClassId | Number | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| Name | Data Type | Description |
|---|---|---|
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttributes | This list holds custom fex attributes for the Department. | |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
| inventoryLayerIdentiferType | String | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at class level. |
Output - Subclass
Table 5-986 PageResultsItemsMerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-987 MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for subclass details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| subclass | No | Number(4,0) | This feld contains the number which uniquely identifes the subclass within the department and class. |
Table 5-987 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| subclassName | No | String (120) | This feld contains the name of the subclass which, along with the subclass number, uniquely identifes the subclass. |
| class | No | Number(4,0) | This feld contains the number which uniquely identifes the class within the department. |
| dept | No | Number(4,0) | This feld contains the number of the department of which the subclass is a member. |
| uniqueSubclassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class/ subclass combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class/ subclass key in their hierarchy and item structures. |
| uniqueClassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
Table 5-987 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the subclass in merchandise hierarchy. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-988 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-989 LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description href No String Service URL rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "subclass": 1, "subclassName": "subclassName", "class": 1, "dept": 3041, "uniqueSubclassId": 1, "uniqueClassId": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "customFlexAttribute": [ { "name": "attribute1", "value": "value1", "valueDate": "2001-12-31", "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z" } ], "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output – Custom Flex Attribute
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| updateDateTime | String | This feld will hold the date time when the custom fex attribute was last updated. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Output
Division
{
"items": [
{
"action": null,
"hierarchyLevel": "DIVISION",
"division": 1000,
"divisionName": "Grocery",
"buyer": 1002,
"merchantId": "612",
"totalMarketAmount": null,
"company": 1,
"createDateTime": "2020-08-18T08:45:53.000Z",
"updateDateTime": "2021-07-23T11:34:21.000Z",
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Groups { "items": [ { "action": null, "hierarchyLevel": "GROUP", "group": 1841, "groupName": "Smoke Group", "buyer": 1003, "merchantId": "845", "division": 3978, "createDateTime": "2020-08-24T17:06:58.000Z", "updateDateTime": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Department { "items": [ { "action": null, "hierarchyLevel": "DEPARTMENT", "dept": 3061, "deptName": "Cats", "buyer": 610, "purchaseType": 0, "totalMarketAmount": null, "merchantId": "840", "group": 306, "budgetedMarkup": 33.3333, "profitCalcType": 1, "markupCalcType": "C", "otbCalcType": "C", "budgetedIntakePercent": 25, "deptVatIncludeInd": "Y", "createDateTime": "2020-08-18T08:45:53.000Z", "updateDateTime": "2021-07-23T12:01:34.000Z", "customFlexAttribute": null,
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Class { "items": [ { "action": null, "hierarchyLevel": "CLASS", "class": 1, "className": "Childrens", "classVatInd": "Y", "dept": 3100, "uniqueClassId": 204, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": null, "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Subclass { "items": [ { "action": null, "hierarchyLevel": "SUBCLASS", "subclass": 2, "subclassName": "Reels", "class": 3, "dept": 3032, "uniqueSubclassId": 15, "uniqueClassId": 137, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": "2021-07-23T12:12:17.000Z", "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1,
"links": null
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIVISION | Yes | No | Yes | Yes |
| ICL_RMS_GROUPS | Yes | No | Yes | Yes |
| ICL_RMS_DEPS | Yes | No | Yes | Yes |
| ICL_RMS_CLASS | Yes | No | Yes | Yes |
| ICL_RMS_SUBCLASS | Yes | No | Yes | Yes |
| COMPHEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| MERCHAPI_EXT_MERCHHIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_MERCH_HIER _JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| MERCHAPI_EXT_CLASS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_DEPS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_SUBCLASS_CFA | Yes | Yes | No | Yes |
| DEPS_CFA_EXT | Yes | No | No | No |
| CLASS_CFA_EXT | Yes | No | No | No |
| SUBCLASS_CFA_EXT | Yes | No | No | No |
Division Upload Service
The following services are included in this functional area:
-
Create Division
-
Delete Division
-
Update Division
Create Division
Functional Area
Merchandise Hierarchy
Business Overview
This service may be used to create the division element of the merchandise hierarchy based on an external system if Merchandising is not the system of record for merchandise hierarchy information. When a new division is created, this service will first validate that all the required
fields are present in the request payload. Business level validation on the input information will be performed to:
-
Verify division is not already present
-
Verify if the total market amount is received, then it should be at least 1000.
If both the above validations are met, the division in the message data is created.
Service Type
POST
ReST URL
MerchIntegrations/services/merchandiseHierarchy/division/create
Input Payload Details
Table 5-990 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| division | Yes | Number (4) | The unique identifer of the division. |
| divisionName | Yes | String (120) | The name of the division. |
| merchandiser | No | Number (4) | The number of the merchant associated with the division. This value must be predefned on the MERCHANT table. |
| buyer | No | Number (4) | The number of the buyer associated with the division. This value must be predefned on the BUYER table. |
| totalMarketAmount | No | Number (24,4) | The total market amount that is expected for the division. If this feld is not null it must be at least 1000. |
Sample Input Message
{
"division": 200,
"divisionName": "Division 200",
"merchandiser": 612,
"buyer": 307,
"totalMarketAmount": 1010
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Division
Functional Area
Merchandise Hierarchy
Business Overview
This service may be used to delete the division element of the merchandise hierarchy based on an external system if Merchandising is not the system of record for merchandise hierarchy information. When a division is deleted, this service will first validate that all required fields are present in the message. Business level validation on the input information will be performed to:
-
Verify the division already exists.
-
Verify the division is not associated to a differentiator group.
-
Verify the division is not associated to a season ID.
-
Verify the division is not associated to a ticket type.
-
Verify the division is not associated to a UDA.
If the information passes the above validations, the division will be deleted in Merchandising. Deletion of a division will get processed immediately upon receipt of the request, assuming that there are no dependent levels below it.
Service Type
DELETE
ReST URL
MerchIntegrations/services/merchandiseHierarchy/division/delete
Input Payload Details
Table 5-991 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| division | Yes | Number (4) | The unique identifer of the division. |
Sample Input Message
{
"division": 1000
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Division
Functional Area
Merchandise Hierarchy
Business Overview
This service may be used to update the division element of the merchandise hierarchy based on an external system if Merchandising is not the system of record for merchandise hierarchy
information. When a division is updated, this service will first validate that all required fields are present in the request payload. Business level validation on the input information will be performed to:
-
Verify division is present.
-
Verify if the total market amount is received, then it should be at least 1000.
If all the validations are met, the details of the division are updated.
For more details on Division, see the Create Division service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/merchandiseHierarchy/division/update
Input Payload Details
Table 5-992 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| division | Yes | Number (4) | The unique identifer of the division. |
| divisionName | Yes | String (120) | The name of the division. |
| merchandiser | No | Number (4) | The number of the merchant associated with the division. This value must be predefned on the MERCHANT table. |
| buyer | No | Number (4) | The number of the buyer associated with the division. This value must be predefned on the BUYER table. |
| totalMarketAmount | No | Number (24,4) | The total market amount that is expected for the division. If this feld is not null it must be at least 1000. |
Sample Input Message
{
"division": 1000,
"divisionName": "divName",
"merchandiser": 1000,
"buyer": 1000,
"totalMarketAmount": 3
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Group Download Service
The following services are included in this functional area:
-
Get Group for Provided Group
-
Get Groups
Get Group for Provided Group
Endpoints
MerchIntegrations/services/foundation/merchhier/division/{division}
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/groups/{group}
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/deps/{dept}
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
MerchIntegrations/services/foundation/merchhier/class
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
MerchIntegrations/services/foundation/merchhier/subclass
Functional Area
Merchandise Hierarchy
Business Overview
This service publishes merchandise hierarchy department data to downstream consuming systems. It is the department-level projection of the shared merchandise hierarchy cache and publishes the current department definition together with department name, buyer, purchase type, group, budgeting and markup attributes, inventory-layer identifier type, and department custom flex attributes.
The merch hierarchy publication for the different hierarchy level (Division, Gruops, Department, Class and Subclass) shares the same underlying processing logic and each of the level have its own endpoint. The below technical details covers all the hierarchy levels.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on
how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIVISION, GROUPS, DEPS, CLASS, SUBCLASS
Additional business tables: COMPHEAD, DEPS_CFA_EXT, CLASS_CFA_EXT, SUBCLASS_CFA_EXT
JSON cache table: MERCHAPI_EXT_MERCHHIER
JSON generation view: not applicable; this service reads from the shared cache maintained by foundation/merchhier
This service is the department-level child merchapi of the shared foundation/merchhier family.
It publishes only department rows from the shared cache table MERCHAPI_EXT_MERCHHIER, so the source tables, delta drivers, refresh logic, CFA helper handling, batch job, and background-engine controls are the same as the parent merchapi family section above.
Functionally, it is the department-only projection of the current merchandise hierarchy.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_MERCHHIER_JSON and apply no status filter; publishes current hierarchy rows that exist in the source tables.
Rebuild marks cache rows deleted when the hierarchy key no longer exists in V_MERCHAPI_EXT_MERCHHIER_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIVISION, ICL_RMS_GROUPS, ICL_RMS_DEPS, ICL_RMS_CLASS, ICL_RMS_SUBCLASS (ICL consumer name = MERCHAPI)
This service relies on the shared delta-processing flow used by foundation/merchhier.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_MERCHHIER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_MERCH_HIER_ADHOC_PROCESS → MERCHAPI_EXT_MERCH_HIER_ADHOC_JOB
Webhook configuration api name:
Division: foundation/merchhier/division
Groups: foundation/merchhier/groups
Department: foundation/merchhier/deps
Class: foundation/merchhier/class
Subclass: foundation/merchhier/subclass
Special handling
The parent merchapi configuration name for all the hierarchy level is ‘foundation/merchhier’.
Table 5-993 Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String (10) | Offset key (Hierarchy ID) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-994 Input Parameter for “MerchIntegrations/services/foundation/merchhier/ deps/{dept}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Service Type
GET
ReST URLs for Division
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/division/{division}
ReST URLs for Groups
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/groups/{group}
ReST URLs for Department
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/deps/{dept}
ReST URLs for Class
/MerchIntegrations/services/foundation/merchhier/class?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&dept={dept}&
class={class}
/MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
ReST URLs for Subclass
MerchIntegrations/services/foundation/merchhier/subclass
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
Common Input parameters for URLs without path parameter
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| before | No | String | Before Date Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/class
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return classes which belong to this dept |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| class | No | Number | If class is provided, the service will return class(es) matching the input class number. To query a specifc class, value for both dept and class should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/subclass
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return subclasses which belong to this dept |
| class | No | Number | If class is provided, the service will return subclass(es) whose parent class number matches the input class number. |
| subclass | No | Number | If subclass is provided, the service will return subclass(es) matching the input subclass number. To query a specifc subclass, value for dept and class and subclass should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/division/{division}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| division | Yes | Number | This feld contains the number which uniquely identifes the division of the company |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/groups/{group}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| group | Yes | Number | This feld contains the number which uniquely identifes the group. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/deps/{dept}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | This feld contains the number which uniquely identifes the department. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/class/ {uniqueClassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueClassId | Yes | Number | This feld contains the number that uniquely identifes the department/class combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/subclass/ {uniqueSubclassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueSubclassId | Yes | Number | This feld contains the number that uniquely identifes the department/class/ subclass combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Division
Table 5-995 PageResultsItemsMerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-996 MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for division details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
| divisionName | No | String (120) | This feld contains the name which, along with the division number, identifes the division of the company. |
Table 5-996 (Cont.) MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the division. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the division. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the division. The feld can be used for analytics or reporting. |
| company | No | Number(4,0) | This feld contains the number which uniquely identifes the company. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-997 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-997 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "division": 1, "divisionName": "divName", "buyer": 1, "merchantId": 1, "totalMarketAmount": 3, "company": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output - Groups
Table 5-998 PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-998 (Cont.) PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-999 MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for group details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| group | No | Number(4,0) | This feld contains the number which uniquely identifes the group. |
| groupName | No | String (120) | This feld contains the description which, along with the group number, identifes the group. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the group. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the group. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
Table 5-999 (Cont.) MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1000 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"group": 1,
"groupName": "groupName",
"buyer": 1,
"merchantId": 1,
"division": 1,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Department
Table 5-1001 PageResultsItemsMerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1002 MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for department details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| dept | No | Number(4,0) | This feld contains the number which uniquely identifes the department. |
Table 5-1002 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| deptName | No | String (120) | This feld contains the description which identifes the department. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the department. |
| purchaseType | No | Number(1,0) | This feld contains a code which indicates whether items in this department are, by default, owned (normal) merchandise, consignment stock, or concession stock. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the department. The feld can be used for analytics or reporting. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the department. |
| group | No | Number(4,0) | This feld contains the number of the group to which the department belongs. |
| budgetedMarkup | No | Number(12,4) | This feld contains the budgeted markup percentage. |
| proftCalcType | No | Number(1,0) | This feld contains a number which indicates whether proft will be calculated by cost or retail, indicating the accounting method to be used for the department. |
| markupCalcType | No | String (2) | This feld contains the code which determines how markup is calculated in this department. |
Table 5-1002 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| otbCalcType | No | String (1) | This feld contains the code which determines how OTB is calculated in this department. |
| budgetedIntakePercen t | No | Number(12,4) | This feld contains the budgeted intake percentage. |
| deptVatIncludeInd | No | String (1) | This feld indicates the default value for the class VAT indicator. When classes are initially set up they inherit this value. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the department. |
| inventoryLayerIdentif erType | No | String (6) | This feld holds the inventory layer identifer type at the department level. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1003 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
Table 5-1003 (Cont.) CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1004 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"dept": 3041,
"deptName": "deptName",
"buyer": 1,
"purchaseType": 1,
"totalMarketAmount": 3,
"merchantId": 1,
"group": 1,
"budgetedMarkup": 3,
"profitCalcType": 1,
"markupCalcType": null,
"otbCalcType": null,
"budgetedIntakePercent": 3,
"deptVatIncludeInd": "Y",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"inventoryLayerIdentifierType": null,
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Class
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for class details. Valid values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| class | Number | Contains the number which uniquely identifes the class within the department. |
| className | String | This feld contains the name of the class which, along with the class number, identifes the class. |
| classVATInd | String | This feld is no longer used by Merchandising and will always default to N. |
| dept | Number | This feld contains the number of the department of which the class is a member. |
| uniqueClassId | Number | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| Name | Data Type | Description |
|---|---|---|
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttributes | This list holds custom fex attributes for the Department. | |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
| inventoryLayerIdentiferType | String | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at class level. |
Output - Subclass
Table 5-1005 PageResultsItemsMerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1006 MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for subclass details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| subclass | No | Number(4,0) | This feld contains the number which uniquely identifes the subclass within the department and class. |
Table 5-1006 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| subclassName | No | String (120) | This feld contains the name of the subclass which, along with the subclass number, uniquely identifes the subclass. |
| class | No | Number(4,0) | This feld contains the number which uniquely identifes the class within the department. |
| dept | No | Number(4,0) | This feld contains the number of the department of which the subclass is a member. |
| uniqueSubclassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class/ subclass combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class/ subclass key in their hierarchy and item structures. |
| uniqueClassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
Table 5-1006 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the subclass in merchandise hierarchy. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1007 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1008 LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description href No String Service URL rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "subclass": 1, "subclassName": "subclassName", "class": 1, "dept": 3041, "uniqueSubclassId": 1, "uniqueClassId": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "customFlexAttribute": [ { "name": "attribute1", "value": "value1", "valueDate": "2001-12-31", "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z" } ], "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output – Custom Flex Attribute
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| updateDateTime | String | This feld will hold the date time when the custom fex attribute was last updated. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Output
Division
{
"items": [
{
"action": null,
"hierarchyLevel": "DIVISION",
"division": 1000,
"divisionName": "Grocery",
"buyer": 1002,
"merchantId": "612",
"totalMarketAmount": null,
"company": 1,
"createDateTime": "2020-08-18T08:45:53.000Z",
"updateDateTime": "2021-07-23T11:34:21.000Z",
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Groups { "items": [ { "action": null, "hierarchyLevel": "GROUP", "group": 1841, "groupName": "Smoke Group", "buyer": 1003, "merchantId": "845", "division": 3978, "createDateTime": "2020-08-24T17:06:58.000Z", "updateDateTime": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Department { "items": [ { "action": null, "hierarchyLevel": "DEPARTMENT", "dept": 3061, "deptName": "Cats", "buyer": 610, "purchaseType": 0, "totalMarketAmount": null, "merchantId": "840", "group": 306, "budgetedMarkup": 33.3333, "profitCalcType": 1, "markupCalcType": "C", "otbCalcType": "C", "budgetedIntakePercent": 25, "deptVatIncludeInd": "Y", "createDateTime": "2020-08-18T08:45:53.000Z", "updateDateTime": "2021-07-23T12:01:34.000Z", "customFlexAttribute": null,
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Class { "items": [ { "action": null, "hierarchyLevel": "CLASS", "class": 1, "className": "Childrens", "classVatInd": "Y", "dept": 3100, "uniqueClassId": 204, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": null, "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Subclass { "items": [ { "action": null, "hierarchyLevel": "SUBCLASS", "subclass": 2, "subclassName": "Reels", "class": 3, "dept": 3032, "uniqueSubclassId": 15, "uniqueClassId": 137, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": "2021-07-23T12:12:17.000Z", "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1,
"links": null
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIVISION | Yes | No | Yes | Yes |
| ICL_RMS_GROUPS | Yes | No | Yes | Yes |
| ICL_RMS_DEPS | Yes | No | Yes | Yes |
| ICL_RMS_CLASS | Yes | No | Yes | Yes |
| ICL_RMS_SUBCLASS | Yes | No | Yes | Yes |
| COMPHEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| MERCHAPI_EXT_MERCHHIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_MERCH_HIER _JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| MERCHAPI_EXT_CLASS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_DEPS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_SUBCLASS_CFA | Yes | Yes | No | Yes |
| DEPS_CFA_EXT | Yes | No | No | No |
| CLASS_CFA_EXT | Yes | No | No | No |
| SUBCLASS_CFA_EXT | Yes | No | No | No |
Get Groups
Endpoints
MerchIntegrations/services/foundation/merchhier/division/{division}
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/groups/{group}
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/deps/{dept}
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
MerchIntegrations/services/foundation/merchhier/class
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
MerchIntegrations/services/foundation/merchhier/subclass
Functional Area
Merchandise Hierarchy
Business Overview
This service publishes merchandise hierarchy department data to downstream consuming systems. It is the department-level projection of the shared merchandise hierarchy cache and publishes the current department definition together with department name, buyer, purchase type, group, budgeting and markup attributes, inventory-layer identifier type, and department custom flex attributes.
The merch hierarchy publication for the different hierarchy level (Division, Gruops, Department, Class and Subclass) shares the same underlying processing logic and each of the level have its own endpoint. The below technical details covers all the hierarchy levels.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on
how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIVISION, GROUPS, DEPS, CLASS, SUBCLASS
Additional business tables: COMPHEAD, DEPS_CFA_EXT, CLASS_CFA_EXT, SUBCLASS_CFA_EXT
JSON cache table: MERCHAPI_EXT_MERCHHIER
JSON generation view: not applicable; this service reads from the shared cache maintained by foundation/merchhier
This service is the department-level child merchapi of the shared foundation/merchhier family.
It publishes only department rows from the shared cache table MERCHAPI_EXT_MERCHHIER, so the source tables, delta drivers, refresh logic, CFA helper handling, batch job, and background-engine controls are the same as the parent merchapi family section above.
Functionally, it is the department-only projection of the current merchandise hierarchy.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_MERCHHIER_JSON and apply no status filter; publishes current hierarchy rows that exist in the source tables.
Rebuild marks cache rows deleted when the hierarchy key no longer exists in V_MERCHAPI_EXT_MERCHHIER_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIVISION, ICL_RMS_GROUPS, ICL_RMS_DEPS, ICL_RMS_CLASS, ICL_RMS_SUBCLASS (ICL consumer name = MERCHAPI)
This service relies on the shared delta-processing flow used by foundation/merchhier.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_MERCHHIER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_MERCH_HIER_ADHOC_PROCESS → MERCHAPI_EXT_MERCH_HIER_ADHOC_JOB
Webhook configuration api name:
Division: foundation/merchhier/division
Groups: foundation/merchhier/groups
Department: foundation/merchhier/deps
Class: foundation/merchhier/class
Subclass: foundation/merchhier/subclass
Special handling
The parent merchapi configuration name for all the hierarchy level is ‘foundation/merchhier’.
Table 5-1009 Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String (10) | Offset key (Hierarchy ID) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1010 Input Parameter for “MerchIntegrations/services/foundation/merchhier/ deps/{dept}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Service Type
GET
ReST URLs for Division
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/division/{division}
ReST URLs for Groups
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/groups/{group}
ReST URLs for Department
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/deps/{dept}
ReST URLs for Class
/MerchIntegrations/services/foundation/merchhier/class?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&dept={dept}&
class={class}
/MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
ReST URLs for Subclass
MerchIntegrations/services/foundation/merchhier/subclass
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
Common Input parameters for URLs without path parameter
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| before | No | String | Before Date Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/class
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return classes which belong to this dept |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| class | No | Number | If class is provided, the service will return class(es) matching the input class number. To query a specifc class, value for both dept and class should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/subclass
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return subclasses which belong to this dept |
| class | No | Number | If class is provided, the service will return subclass(es) whose parent class number matches the input class number. |
| subclass | No | Number | If subclass is provided, the service will return subclass(es) matching the input subclass number. To query a specifc subclass, value for dept and class and subclass should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/division/{division}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| division | Yes | Number | This feld contains the number which uniquely identifes the division of the company |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/groups/{group}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| group | Yes | Number | This feld contains the number which uniquely identifes the group. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/deps/{dept}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | This feld contains the number which uniquely identifes the department. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/class/ {uniqueClassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueClassId | Yes | Number | This feld contains the number that uniquely identifes the department/class combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/subclass/ {uniqueSubclassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueSubclassId | Yes | Number | This feld contains the number that uniquely identifes the department/class/ subclass combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Division
Table 5-1011 PageResultsItemsMerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1012 MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for division details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
| divisionName | No | String (120) | This feld contains the name which, along with the division number, identifes the division of the company. |
Table 5-1012 (Cont.) MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the division. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the division. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the division. The feld can be used for analytics or reporting. |
| company | No | Number(4,0) | This feld contains the number which uniquely identifes the company. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1013 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-1013 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "division": 1, "divisionName": "divName", "buyer": 1, "merchantId": 1, "totalMarketAmount": 3, "company": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output - Groups
Table 5-1014 PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-1014 (Cont.) PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1015 MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for group details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| group | No | Number(4,0) | This feld contains the number which uniquely identifes the group. |
| groupName | No | String (120) | This feld contains the description which, along with the group number, identifes the group. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the group. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the group. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
Table 5-1015 (Cont.) MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1016 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"group": 1,
"groupName": "groupName",
"buyer": 1,
"merchantId": 1,
"division": 1,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Department
Table 5-1017 PageResultsItemsMerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1018 MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for department details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| dept | No | Number(4,0) | This feld contains the number which uniquely identifes the department. |
Table 5-1018 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| deptName | No | String (120) | This feld contains the description which identifes the department. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the department. |
| purchaseType | No | Number(1,0) | This feld contains a code which indicates whether items in this department are, by default, owned (normal) merchandise, consignment stock, or concession stock. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the department. The feld can be used for analytics or reporting. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the department. |
| group | No | Number(4,0) | This feld contains the number of the group to which the department belongs. |
| budgetedMarkup | No | Number(12,4) | This feld contains the budgeted markup percentage. |
| proftCalcType | No | Number(1,0) | This feld contains a number which indicates whether proft will be calculated by cost or retail, indicating the accounting method to be used for the department. |
| markupCalcType | No | String (2) | This feld contains the code which determines how markup is calculated in this department. |
Table 5-1018 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| otbCalcType | No | String (1) | This feld contains the code which determines how OTB is calculated in this department. |
| budgetedIntakePercen t | No | Number(12,4) | This feld contains the budgeted intake percentage. |
| deptVatIncludeInd | No | String (1) | This feld indicates the default value for the class VAT indicator. When classes are initially set up they inherit this value. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the department. |
| inventoryLayerIdentif erType | No | String (6) | This feld holds the inventory layer identifer type at the department level. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1019 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
Table 5-1019 (Cont.) CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1020 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"dept": 3041,
"deptName": "deptName",
"buyer": 1,
"purchaseType": 1,
"totalMarketAmount": 3,
"merchantId": 1,
"group": 1,
"budgetedMarkup": 3,
"profitCalcType": 1,
"markupCalcType": null,
"otbCalcType": null,
"budgetedIntakePercent": 3,
"deptVatIncludeInd": "Y",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"inventoryLayerIdentifierType": null,
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Class
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for class details. Valid values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| class | Number | Contains the number which uniquely identifes the class within the department. |
| className | String | This feld contains the name of the class which, along with the class number, identifes the class. |
| classVATInd | String | This feld is no longer used by Merchandising and will always default to N. |
| dept | Number | This feld contains the number of the department of which the class is a member. |
| uniqueClassId | Number | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| Name | Data Type | Description |
|---|---|---|
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttributes | This list holds custom fex attributes for the Department. | |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
| inventoryLayerIdentiferType | String | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at class level. |
Output - Subclass
Table 5-1021 PageResultsItemsMerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1022 MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for subclass details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| subclass | No | Number(4,0) | This feld contains the number which uniquely identifes the subclass within the department and class. |
Table 5-1022 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| subclassName | No | String (120) | This feld contains the name of the subclass which, along with the subclass number, uniquely identifes the subclass. |
| class | No | Number(4,0) | This feld contains the number which uniquely identifes the class within the department. |
| dept | No | Number(4,0) | This feld contains the number of the department of which the subclass is a member. |
| uniqueSubclassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class/ subclass combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class/ subclass key in their hierarchy and item structures. |
| uniqueClassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
Table 5-1022 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the subclass in merchandise hierarchy. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1023 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1024 LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description href No String Service URL rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "subclass": 1, "subclassName": "subclassName", "class": 1, "dept": 3041, "uniqueSubclassId": 1, "uniqueClassId": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "customFlexAttribute": [ { "name": "attribute1", "value": "value1", "valueDate": "2001-12-31", "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z" } ], "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output – Custom Flex Attribute
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| updateDateTime | String | This feld will hold the date time when the custom fex attribute was last updated. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Output
Division
{
"items": [
{
"action": null,
"hierarchyLevel": "DIVISION",
"division": 1000,
"divisionName": "Grocery",
"buyer": 1002,
"merchantId": "612",
"totalMarketAmount": null,
"company": 1,
"createDateTime": "2020-08-18T08:45:53.000Z",
"updateDateTime": "2021-07-23T11:34:21.000Z",
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Groups { "items": [ { "action": null, "hierarchyLevel": "GROUP", "group": 1841, "groupName": "Smoke Group", "buyer": 1003, "merchantId": "845", "division": 3978, "createDateTime": "2020-08-24T17:06:58.000Z", "updateDateTime": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Department { "items": [ { "action": null, "hierarchyLevel": "DEPARTMENT", "dept": 3061, "deptName": "Cats", "buyer": 610, "purchaseType": 0, "totalMarketAmount": null, "merchantId": "840", "group": 306, "budgetedMarkup": 33.3333, "profitCalcType": 1, "markupCalcType": "C", "otbCalcType": "C", "budgetedIntakePercent": 25, "deptVatIncludeInd": "Y", "createDateTime": "2020-08-18T08:45:53.000Z", "updateDateTime": "2021-07-23T12:01:34.000Z", "customFlexAttribute": null,
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Class { "items": [ { "action": null, "hierarchyLevel": "CLASS", "class": 1, "className": "Childrens", "classVatInd": "Y", "dept": 3100, "uniqueClassId": 204, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": null, "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Subclass { "items": [ { "action": null, "hierarchyLevel": "SUBCLASS", "subclass": 2, "subclassName": "Reels", "class": 3, "dept": 3032, "uniqueSubclassId": 15, "uniqueClassId": 137, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": "2021-07-23T12:12:17.000Z", "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1,
"links": null
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIVISION | Yes | No | Yes | Yes |
| ICL_RMS_GROUPS | Yes | No | Yes | Yes |
| ICL_RMS_DEPS | Yes | No | Yes | Yes |
| ICL_RMS_CLASS | Yes | No | Yes | Yes |
| ICL_RMS_SUBCLASS | Yes | No | Yes | Yes |
| COMPHEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| MERCHAPI_EXT_MERCHHIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_MERCH_HIER _JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| MERCHAPI_EXT_CLASS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_DEPS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_SUBCLASS_CFA | Yes | Yes | No | Yes |
| DEPS_CFA_EXT | Yes | No | No | No |
| CLASS_CFA_EXT | Yes | No | No | No |
| SUBCLASS_CFA_EXT | Yes | No | No | No |
Group Upload Service
The following services are included in this functional area:
-
Create Group
-
Delete Group
-
Update Group
Create Group
Functional Area
Merchandise Hierarchy
Business Overview
This service may be used to create the group element of the merchandise hierarchy based on an external system if Merchandising is not the system of record for merchandise hierarchy information.
When a new group is created, this service will first validate that all the required fields are present in the request payload. Business level validation on the input information will be performed, which checks whether the group already exists. If it does not exist, the group is created.
Service Type
POST
ReST URL
MerchIntegrations/services/merchandiseHierarchy/group/create
Input Payload Details
Table 5-1025 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| groupNo | Yes | Number (4) | The number which uniquely identifes the group. This feld cannot be modifed. |
| groupName | Yes | String (120) | Description is not available. |
| division | Yes | Number (4) | The identifer of the division of which the group is a member. This value must be predefned on the DIVISION table. |
| merchandiser | No | Number (4) | The number of the merchandiser associated to the group. This value must be predefned on the MERCHANT table. |
| buyer | No | Number (4) | The number of the buyer associated to the group. This value must be predefned on the BUYER table. |
Sample Input Message
{
"groupNo": 1000,
"groupName": "groupName",
"division": 1000,
"merchandiser": 1000,
"buyer": 1000
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Group
Functional Area
Merchandise Hierarchy
Business Overview
This service may be used to delete the group element of the merchandise hierarchy based on an external system if Merchandising is not the system of record for merchandise hierarchy information. When a group is deleted, this service will first validate that all required fields are present in the request payload. Business level validation on the input information will be performed to:
-
Verify the group already exists.
-
Verify the group is not associated to a differentiator group.
-
Verify the group is not associated to a season ID
-
Verify the group is not associated to a ticket type.
-
Verify the group is not associated to a UDA.
If the information passes the above validations, the group will be deleted from Merchandising. Deletion of a group will get processed immediately upon receipt of the request, assuming that there are no dependent levels below it.
Service Type
DELETE
ReST URL
MerchIntegrations/services/merchandiseHierarchy/group/delete
Input Payload Details
Table 5-1026 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| groupNo | Yes | Number (4) | Description is not available. |
Sample Input Message
{
"groupNo": 1000
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Group
Functional Area
Merchandise Hierarchy
Business Overview
This service may be used to update the group element of the merchandise hierarchy based on an external system if Merchandising is not the system of record for merchandise hierarchy
information. When a group is updated, this service will first validate that all required fields are present in the request payload. Business level validation on the input information will be performed to verify whether the group to be updated already exists. If group already exists, the details of the group are updated.
For more details on Group, see the Create Group service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/merchandiseHierarchy/group/update
Input Payload Details
Table 5-1027 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| groupNo | Yes | Number (4) | The number which uniquely identifes the group. This feld cannot be modifed. |
| groupName | Yes | String (120) | Description is not available. |
| division | Yes | Number (4) | The identifer of the division of which the group is a member. This value must be predefned on the DIVISION table. |
| merchandiser | No | Number (4) | The number of the merchandiser associated to the group. This value must be predefned on the MERCHANT table. |
| buyer | No | Number (4) | The number of the buyer associated to the group. This value must be predefned on the BUYER table. |
Sample Input Message
{
"groupNo": 1000,
"groupName": "groupName",
"division": 1000,
"merchandiser": 1000,
"buyer": 1000
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Merchandise Hierarchy Download Service
The following services are included in this functional area:
• Get Merchandise Hierarchy
Get Merchandise Hierarchy
This section describes the MerchHierarchy Detail service.
Business Overview
MerchHierarchyDetail service allows user to retrieve full merchandising hierarchy information for the input Department.
Service Type
Get
ReST URL
/MerchHierarchy/merchHierarchy
Input Parameters
Department ID
Output
RestMerchHierarchyRecRDO
| Parameter Name | Data Type |
|---|---|
| profitCalcType | BigDecimal |
| deptVatInclInd | String |
| classAttribute | BigDecimal |
| division | BigDecimal |
| classVatInd | String |
| subclass | BigDecimal |
| buyer | BigDecimal |
| dept | BigDecimal |
| className | String |
| subName | String |
| groupNo | BigDecimal |
| otbCalcType | String |
| groupName | String |
| divName | String |
| purchaseType | BigDecimal |
| merch | BigDecimal |
| deptName | String |
JSON Structure
{
"profitCalcType": null,
"deptVatInclInd": null,
"classAttribute": null,
"division": null,
"classVatInd": null,
"subclass": null,
"buyer": null,
"dept": null,
"className": null,
"subName": null,
"groupNo": null,
"otbCalcType": null,
"groupName": null,
"divName": null,
"purchaseType": null,
"merch": null,
"deptName": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_MERCH_HIERARCHY | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Subclass Download Service
The following services are included in this functional area:
-
Get Subclass Details for Provided Subclass
-
Get Subclasses
Get Subclass Details for Provided Subclass
Endpoints
MerchIntegrations/services/foundation/merchhier/division/{division}
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/groups/{group}
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/deps/{dept}
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
MerchIntegrations/services/foundation/merchhier/class
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
MerchIntegrations/services/foundation/merchhier/subclass
Functional Area
Merchandise Hierarchy
Business Overview
This service publishes merchandise hierarchy department data to downstream consuming systems. It is the department-level projection of the shared merchandise hierarchy cache and publishes the current department definition together with department name, buyer, purchase type, group, budgeting and markup attributes, inventory-layer identifier type, and department custom flex attributes.
The merch hierarchy publication for the different hierarchy level (Division, Gruops, Department, Class and Subclass) shares the same underlying processing logic and each of the level have its own endpoint. The below technical details covers all the hierarchy levels.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIVISION, GROUPS, DEPS, CLASS, SUBCLASS
Additional business tables: COMPHEAD, DEPS_CFA_EXT, CLASS_CFA_EXT, SUBCLASS_CFA_EXT
JSON cache table: MERCHAPI_EXT_MERCHHIER
JSON generation view: not applicable; this service reads from the shared cache maintained by foundation/merchhier
This service is the department-level child merchapi of the shared foundation/merchhier family.
It publishes only department rows from the shared cache table MERCHAPI_EXT_MERCHHIER, so the source tables, delta drivers, refresh logic, CFA helper handling, batch job, and background-engine controls are the same as the parent merchapi family section above.
Functionally, it is the department-only projection of the current merchandise hierarchy.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_MERCHHIER_JSON and apply no status filter; publishes current hierarchy rows that exist in the source tables.
Rebuild marks cache rows deleted when the hierarchy key no longer exists in V_MERCHAPI_EXT_MERCHHIER_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIVISION, ICL_RMS_GROUPS, ICL_RMS_DEPS, ICL_RMS_CLASS, ICL_RMS_SUBCLASS (ICL consumer name = MERCHAPI)
This service relies on the shared delta-processing flow used by foundation/merchhier.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_MERCHHIER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_MERCH_HIER_ADHOC_PROCESS → MERCHAPI_EXT_MERCH_HIER_ADHOC_JOB
Webhook configuration api name:
Division: foundation/merchhier/division
Groups: foundation/merchhier/groups
Department: foundation/merchhier/deps
Class: foundation/merchhier/class
Subclass: foundation/merchhier/subclass
Special handling
The parent merchapi configuration name for all the hierarchy level is ‘foundation/merchhier’.
Table 5-1028 Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String (10) | Offset key (Hierarchy ID) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1029 Input Parameter for “MerchIntegrations/services/foundation/merchhier/ deps/{dept}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Service Type
GET
ReST URLs for Division
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/division/{division}
ReST URLs for Groups
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/groups/{group}
ReST URLs for Department
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/deps/{dept}
ReST URLs for Class
/MerchIntegrations/services/foundation/merchhier/class?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&dept={dept}&
class={class}
/MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
ReST URLs for Subclass
MerchIntegrations/services/foundation/merchhier/subclass
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
Common Input parameters for URLs without path parameter
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| before | No | String | Before Date Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/class
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return classes which belong to this dept |
| class | No | Number | If class is provided, the service will return class(es) matching the input class number. To query a specifc class, value for both dept and class should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/subclass
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return subclasses which belong to this dept |
| class | No | Number | If class is provided, the service will return subclass(es) whose parent class number matches the input class number. |
| subclass | No | Number | If subclass is provided, the service will return subclass(es) matching the input subclass number. To query a specifc subclass, value for dept and class and subclass should be provided. |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/division/{division}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| division | Yes | Number | This feld contains the number which uniquely identifes the division of the company |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/groups/{group}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| group | Yes | Number | This feld contains the number which uniquely identifes the group. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/deps/{dept}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | This feld contains the number which uniquely identifes the department. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/class/ {uniqueClassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueClassId | Yes | Number | This feld contains the number that uniquely identifes the department/class combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/subclass/ {uniqueSubclassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueSubclassId | Yes | Number | This feld contains the number that uniquely identifes the department/class/ subclass combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Division
Table 5-1030 PageResultsItemsMerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
Table 5-1030 (Cont.) PageResultsItemsMerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1031 MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for division details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
| divisionName | No | String (120) | This feld contains the name which, along with the division number, identifes the division of the company. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the division. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the division. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the division. The feld can be used for analytics or reporting. |
| company | No | Number(4,0) | This feld contains the number which uniquely identifes the company. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
Table 5-1031 (Cont.) MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1032 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"division": 1,
"divisionName": "divName",
"buyer": 1,
"merchantId": 1,
"totalMarketAmount": 3,
"company": 1,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Groups
Table 5-1033 PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1034 MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for group details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| group | No | Number(4,0) | This feld contains the number which uniquely identifes the group. |
Table 5-1034 (Cont.) MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| groupName | No | String (120) | This feld contains the description which, along with the group number, identifes the group. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the group. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the group. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1035 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-1035 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "group": 1, "groupName": "groupName", "buyer": 1, "merchantId": 1, "division": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output - Department
Table 5-1036 PageResultsItemsMerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-1036 (Cont.) PageResultsItemsMerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1037 MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for department details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| dept | No | Number(4,0) | This feld contains the number which uniquely identifes the department. |
| deptName | No | String (120) | This feld contains the description which identifes the department. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the department. |
| purchaseType | No | Number(1,0) | This feld contains a code which indicates whether items in this department are, by default, owned (normal) merchandise, consignment stock, or concession stock. |
Table 5-1037 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the department. The feld can be used for analytics or reporting. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the department. |
| group | No | Number(4,0) | This feld contains the number of the group to which the department belongs. |
| budgetedMarkup | No | Number(12,4) | This feld contains the budgeted markup percentage. |
| proftCalcType | No | Number(1,0) | This feld contains a number which indicates whether proft will be calculated by cost or retail, indicating the accounting method to be used for the department. |
| markupCalcType | No | String (2) | This feld contains the code which determines how markup is calculated in this department. |
| otbCalcType | No | String (1) | This feld contains the code which determines how OTB is calculated in this department. |
| budgetedIntakePercen t | No | Number(12,4) | This feld contains the budgeted intake percentage. |
| deptVatIncludeInd | No | String (1) | This feld indicates the default value for the class VAT indicator. When classes are initially set up they inherit this value. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
Table 5-1037 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the department. |
| inventoryLayerIdentif erType | No | String (6) | This feld holds the inventory layer identifer type at the department level. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1038 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1039 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"dept": 3041,
"deptName": "deptName",
"buyer": 1,
"purchaseType": 1,
"totalMarketAmount": 3,
"merchantId": 1,
"group": 1,
"budgetedMarkup": 3,
"profitCalcType": 1,
"markupCalcType": null,
"otbCalcType": null,
"budgetedIntakePercent": 3,
"deptVatIncludeInd": "Y",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"inventoryLayerIdentifierType": null,
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Class
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for class details. Valid values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| class | Number | Contains the number which uniquely identifes the class within the department. |
| className | String | This feld contains the name of the class which, along with the class number, identifes the class. |
| classVATInd | String | This feld is no longer used by Merchandising and will always default to N. |
| dept | Number | This feld contains the number of the department of which the class is a member. |
| uniqueClassId | Number | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttributes | This list holds custom fex attributes for the Department. | |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
| inventoryLayerIdentiferType | String | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at class level. |
Output - Subclass
Table 5-1040 PageResultsItemsMerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-1040 (Cont.) PageResultsItemsMerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1041 MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for subclass details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| subclass | No | Number(4,0) | This feld contains the number which uniquely identifes the subclass within the department and class. |
| subclassName | No | String (120) | This feld contains the name of the subclass which, along with the subclass number, uniquely identifes the subclass. |
| class | No | Number(4,0) | This feld contains the number which uniquely identifes the class within the department. |
| dept | No | Number(4,0) | This feld contains the number of the department of which the subclass is a member. |
Table 5-1041 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| uniqueSubclassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class/ subclass combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class/ subclass key in their hierarchy and item structures. |
| uniqueClassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the subclass in merchandise hierarchy. |
Table 5-1041 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1042 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1043 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-1043 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "subclass": 1, "subclassName": "subclassName", "class": 1, "dept": 3041, "uniqueSubclassId": 1, "uniqueClassId": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "customFlexAttribute": [ { "name": "attribute1", "value": "value1", "valueDate": "2001-12-31", "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z" } ], "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output – Custom Flex Attribute
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| updateDateTime | String | This feld will hold the date time when the custom fex attribute was last updated. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Output
Division
{
"items": [
{
"action": null,
"hierarchyLevel": "DIVISION",
"division": 1000,
"divisionName": "Grocery",
"buyer": 1002,
"merchantId": "612",
"totalMarketAmount": null,
"company": 1,
"createDateTime": "2020-08-18T08:45:53.000Z",
"updateDateTime": "2021-07-23T11:34:21.000Z",
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Groups { "items": [ { "action": null, "hierarchyLevel": "GROUP", "group": 1841, "groupName": "Smoke Group", "buyer": 1003, "merchantId": "845", "division": 3978, "createDateTime": "2020-08-24T17:06:58.000Z", "updateDateTime": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Department { "items": [ { "action": null, "hierarchyLevel": "DEPARTMENT", "dept": 3061, "deptName": "Cats", "buyer": 610, "purchaseType": 0, "totalMarketAmount": null, "merchantId": "840", "group": 306, "budgetedMarkup": 33.3333, "profitCalcType": 1, "markupCalcType": "C", "otbCalcType": "C", "budgetedIntakePercent": 25, "deptVatIncludeInd": "Y", "createDateTime": "2020-08-18T08:45:53.000Z", "updateDateTime": "2021-07-23T12:01:34.000Z", "customFlexAttribute": null,
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Class { "items": [ { "action": null, "hierarchyLevel": "CLASS", "class": 1, "className": "Childrens", "classVatInd": "Y", "dept": 3100, "uniqueClassId": 204, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": null, "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Subclass { "items": [ { "action": null, "hierarchyLevel": "SUBCLASS", "subclass": 2, "subclassName": "Reels", "class": 3, "dept": 3032, "uniqueSubclassId": 15, "uniqueClassId": 137, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": "2021-07-23T12:12:17.000Z", "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1,
"links": null
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIVISION | Yes | No | Yes | Yes |
| ICL_RMS_GROUPS | Yes | No | Yes | Yes |
| ICL_RMS_DEPS | Yes | No | Yes | Yes |
| ICL_RMS_CLASS | Yes | No | Yes | Yes |
| ICL_RMS_SUBCLASS | Yes | No | Yes | Yes |
| COMPHEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| MERCHAPI_EXT_MERCHHIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_MERCH_HIER _JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| MERCHAPI_EXT_CLASS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_DEPS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_SUBCLASS_CFA | Yes | Yes | No | Yes |
| DEPS_CFA_EXT | Yes | No | No | No |
| CLASS_CFA_EXT | Yes | No | No | No |
| SUBCLASS_CFA_EXT | Yes | No | No | No |
Get Subclasses
Endpoints
MerchIntegrations/services/foundation/merchhier/division/{division}
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/groups/{group}
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/deps/{dept}
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
MerchIntegrations/services/foundation/merchhier/class
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
MerchIntegrations/services/foundation/merchhier/subclass
Functional Area
Merchandise Hierarchy
Business Overview
This service publishes merchandise hierarchy department data to downstream consuming systems. It is the department-level projection of the shared merchandise hierarchy cache and publishes the current department definition together with department name, buyer, purchase type, group, budgeting and markup attributes, inventory-layer identifier type, and department custom flex attributes.
The merch hierarchy publication for the different hierarchy level (Division, Gruops, Department, Class and Subclass) shares the same underlying processing logic and each of the level have its own endpoint. The below technical details covers all the hierarchy levels.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on
how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: DIVISION, GROUPS, DEPS, CLASS, SUBCLASS
Additional business tables: COMPHEAD, DEPS_CFA_EXT, CLASS_CFA_EXT, SUBCLASS_CFA_EXT
JSON cache table: MERCHAPI_EXT_MERCHHIER
JSON generation view: not applicable; this service reads from the shared cache maintained by foundation/merchhier
This service is the department-level child merchapi of the shared foundation/merchhier family.
It publishes only department rows from the shared cache table MERCHAPI_EXT_MERCHHIER, so the source tables, delta drivers, refresh logic, CFA helper handling, batch job, and background-engine controls are the same as the parent merchapi family section above.
Functionally, it is the department-only projection of the current merchandise hierarchy.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_MERCHHIER_JSON and apply no status filter; publishes current hierarchy rows that exist in the source tables.
Rebuild marks cache rows deleted when the hierarchy key no longer exists in V_MERCHAPI_EXT_MERCHHIER_JSON.
ICL (Integration Change Log) table: ICL_RMS_DIVISION, ICL_RMS_GROUPS, ICL_RMS_DEPS, ICL_RMS_CLASS, ICL_RMS_SUBCLASS (ICL consumer name = MERCHAPI)
This service relies on the shared delta-processing flow used by foundation/merchhier.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_MERCHHIER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_MERCH_HIER_ADHOC_PROCESS → MERCHAPI_EXT_MERCH_HIER_ADHOC_JOB
Webhook configuration api name:
Division: foundation/merchhier/division
Groups: foundation/merchhier/groups
Department: foundation/merchhier/deps
Class: foundation/merchhier/class
Subclass: foundation/merchhier/subclass
Special handling
The parent merchapi configuration name for all the hierarchy level is ‘foundation/merchhier’.
Table 5-1044 Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String (10) | Offset key (Hierarchy ID) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1045 Input Parameter for “MerchIntegrations/services/foundation/merchhier/ deps/{dept}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Service Type
GET
ReST URLs for Division
MerchIntegrations/services/foundation/merchhier/division
MerchIntegrations/services/foundation/merchhier/division/{division}
ReST URLs for Groups
MerchIntegrations/services/foundation/merchhier/groups
MerchIntegrations/services/foundation/merchhier/groups/{group}
ReST URLs for Department
MerchIntegrations/services/foundation/merchhier/deps
MerchIntegrations/services/foundation/merchhier/deps/{dept}
ReST URLs for Class
/MerchIntegrations/services/foundation/merchhier/class?
since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&dept={dept}&
class={class}
/MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
ReST URLs for Subclass
MerchIntegrations/services/foundation/merchhier/subclass
MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
Common Input parameters for URLs without path parameter
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date. Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| before | No | String | Before Date Format: yyyy-mm-dd”T”hh24:mi:ss.fftzh:tzm |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/class
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return classes which belong to this dept |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| class | No | Number | If class is provided, the service will return class(es) matching the input class number. To query a specifc class, value for both dept and class should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input query parameter for /MerchIntegrations/services/foundation/merchhier/subclass
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | No | Number | If dept is provided, the service will return subclasses which belong to this dept |
| class | No | Number | If class is provided, the service will return subclass(es) whose parent class number matches the input class number. |
| subclass | No | Number | If subclass is provided, the service will return subclass(es) matching the input subclass number. To query a specifc subclass, value for dept and class and subclass should be provided. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/division/{division}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| division | Yes | Number | This feld contains the number which uniquely identifes the division of the company |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/groups/{group}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| group | Yes | Number | This feld contains the number which uniquely identifes the group. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/deps/{dept}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| dept | Yes | Number | This feld contains the number which uniquely identifes the department. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/class/ {uniqueClassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueClassId | Yes | Number | This feld contains the number that uniquely identifes the department/class combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input path parameter for /MerchIntegrations/services/foundation/merchhier/subclass/ {uniqueSubclassId}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| uniqueSubclassId | Yes | Number | This feld contains the number that uniquely identifes the department/class/ subclass combination. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Division
Table 5-1046 PageResultsItemsMerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1047 MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for division details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
| divisionName | No | String (120) | This feld contains the name which, along with the division number, identifes the division of the company. |
Table 5-1047 (Cont.) MerchApiDivision - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the division. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the division. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the division. The feld can be used for analytics or reporting. |
| company | No | Number(4,0) | This feld contains the number which uniquely identifes the company. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1048 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-1048 (Cont.) LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "division": 1, "divisionName": "divName", "buyer": 1, "merchantId": 1, "totalMarketAmount": 3, "company": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output - Groups
Table 5-1049 PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-1049 (Cont.) PageResultsItemsMerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1050 MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for group details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| group | No | Number(4,0) | This feld contains the number which uniquely identifes the group. |
| groupName | No | String (120) | This feld contains the description which, along with the group number, identifes the group. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the group. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the group. |
| division | No | Number(4,0) | This feld contains the number which uniquely identifes the division of the company. |
Table 5-1050 (Cont.) MerchApiGroup - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1051 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"group": 1,
"groupName": "groupName",
"buyer": 1,
"merchantId": 1,
"division": 1,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Department
Table 5-1052 PageResultsItemsMerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1053 MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for department details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| dept | No | Number(4,0) | This feld contains the number which uniquely identifes the department. |
Table 5-1053 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| deptName | No | String (120) | This feld contains the description which identifes the department. |
| buyer | No | Number(4,0) | This feld contains the number of the buyer associated with the department. |
| purchaseType | No | Number(1,0) | This feld contains a code which indicates whether items in this department are, by default, owned (normal) merchandise, consignment stock, or concession stock. |
| totalMarketAmount | No | Number(24,4) | This feld contains the total market amount that is expected for the department. The feld can be used for analytics or reporting. |
| merchantId | No | Number(4,0) | This feld contains the number of the merchandiser associated with the department. |
| group | No | Number(4,0) | This feld contains the number of the group to which the department belongs. |
| budgetedMarkup | No | Number(12,4) | This feld contains the budgeted markup percentage. |
| proftCalcType | No | Number(1,0) | This feld contains a number which indicates whether proft will be calculated by cost or retail, indicating the accounting method to be used for the department. |
| markupCalcType | No | String (2) | This feld contains the code which determines how markup is calculated in this department. |
Table 5-1053 (Cont.) MerchApiDepartment - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| otbCalcType | No | String (1) | This feld contains the code which determines how OTB is calculated in this department. |
| budgetedIntakePercen t | No | Number(12,4) | This feld contains the budgeted intake percentage. |
| deptVatIncludeInd | No | String (1) | This feld indicates the default value for the class VAT indicator. When classes are initially set up they inherit this value. |
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the department. |
| inventoryLayerIdentif erType | No | String (6) | This feld holds the inventory layer identifer type at the department level. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1054 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
Table 5-1054 (Cont.) CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1055 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"dept": 3041,
"deptName": "deptName",
"buyer": 1,
"purchaseType": 1,
"totalMarketAmount": 3,
"merchantId": 1,
"group": 1,
"budgetedMarkup": 3,
"profitCalcType": 1,
"markupCalcType": null,
"otbCalcType": null,
"budgetedIntakePercent": 3,
"deptVatIncludeInd": "Y",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"inventoryLayerIdentifierType": null,
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Output - Class
| Name | Data Type | Description |
|---|---|---|
| action | String | Action for class details. Valid values are INSERT, UPDATE and DELETE. |
| hierarchylevel | String | This feld contains the Merchandising Hierarchy Level. |
| class | Number | Contains the number which uniquely identifes the class within the department. |
| className | String | This feld contains the name of the class which, along with the class number, identifes the class. |
| classVATInd | String | This feld is no longer used by Merchandising and will always default to N. |
| dept | Number | This feld contains the number of the department of which the class is a member. |
| uniqueClassId | Number | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
| Name | Data Type | Description |
|---|---|---|
| createDateTime | String | This feld holds the record creation date. |
| updateDateTime | String | This feld holds the date when the record was last updated. |
| customFlexAttributes | This list holds custom fex attributes for the Department. | |
| cacheTimestamp | String | This feld specifes date and time when Merch Hier record was last maintained. |
| inventoryLayerIdentiferType | String | This feld holds type of identifer that will be used across systems to manage and identify inventory layers at class level. |
Output - Subclass
Table 5-1056 PageResultsItemsMerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1057 MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for subclass details. |
| hierarchyLevel | No | String (10) | This feld contains the merchandise hierarchy level. |
| subclass | No | Number(4,0) | This feld contains the number which uniquely identifes the subclass within the department and class. |
Table 5-1057 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| subclassName | No | String (120) | This feld contains the name of the subclass which, along with the subclass number, uniquely identifes the subclass. |
| class | No | Number(4,0) | This feld contains the number which uniquely identifes the class within the department. |
| dept | No | Number(4,0) | This feld contains the number of the department of which the subclass is a member. |
| uniqueSubclassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class/ subclass combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class/ subclass key in their hierarchy and item structures. |
| uniqueClassId | No | Number(10,0) | This feld contains the number that uniquely identifes the department/class combination. This column is populated by the system and not displayed to end users. This will be used for integration to downstream systems as many downstream systems are unable to accommodate the composite dept/class key in their hierarchy and item structures. |
Table 5-1057 (Cont.) MerchApiSubclass - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time. |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated. |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the subclass in merchandise hierarchy. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the merchandise hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1058 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1059 LinkItems - Object. See list of elements for detail
Element Name Required Data Type Description href No String Service URL rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifies the last record of this response. Sample Response Message { "items": [ { "action": "INSERT", "hierarchyLevel": null, "subclass": 1, "subclassName": "subclassName", "class": 1, "dept": 3041, "uniqueSubclassId": 1, "uniqueClassId": 1, "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z", "customFlexAttribute": [ { "name": "attribute1", "value": "value1", "valueDate": "2001-12-31", "createDateTime": "2001-12-31T23:59:59.000Z", "updateDateTime": "2001-12-31T23:59:59.000Z" } ], "cacheTimestamp": "2001-12-31T23:59:59.000Z", "cacheCreateTimestamp": "2001-12-31T23:59:59.000Z" } ], "hasMore": true, "limit": 1000, "count": 1000, "links": [ { "href": "https://<server>:<port>/Application/services/resources? limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs etkey=1234,XYZ", "rel": "next" } ] }
Output – Custom Flex Attribute
| Name | Data Type | Description |
|---|---|---|
| name | String | This feld will hold the custom fex attribute name. |
| value | String | This feld will hold the numeric or string value of the custom fex attribute. |
| valueDate | String | This feld will hold the date value of the custom fex attribute. |
| createDateTime | String | This feld will hold the date time when the custom fex attribute was inserted. |
| updateDateTime | String | This feld will hold the date time when the custom fex attribute was last updated. |
Elements in JSON Output
| Elements | Description |
|---|---|
| items | The frst element is named as items and contains a number of child elements. Each child element corresponds to a row in the result set generated by the query. |
| hasMore | This is dependent on limit value. If the total rows are more than then limit defned then hasMore will be set to true else false. |
| limit | This is used to limit the rows to control the paging of result data. Based on the limit, next and previous links are displayed. For example: If the limit is set to 25, internal it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a “next” link else no links would be added to the JSON response. |
| links | “self” : This contains URI pointing to current page. “next”: This contains URI pointing to the next page of results. |
Example JSON Output
Division
{
"items": [
{
"action": null,
"hierarchyLevel": "DIVISION",
"division": 1000,
"divisionName": "Grocery",
"buyer": 1002,
"merchantId": "612",
"totalMarketAmount": null,
"company": 1,
"createDateTime": "2020-08-18T08:45:53.000Z",
"updateDateTime": "2021-07-23T11:34:21.000Z",
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Groups { "items": [ { "action": null, "hierarchyLevel": "GROUP", "group": 1841, "groupName": "Smoke Group", "buyer": 1003, "merchantId": "845", "division": 3978, "createDateTime": "2020-08-24T17:06:58.000Z", "updateDateTime": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Department { "items": [ { "action": null, "hierarchyLevel": "DEPARTMENT", "dept": 3061, "deptName": "Cats", "buyer": 610, "purchaseType": 0, "totalMarketAmount": null, "merchantId": "840", "group": 306, "budgetedMarkup": 33.3333, "profitCalcType": 1, "markupCalcType": "C", "otbCalcType": "C", "budgetedIntakePercent": 25, "deptVatIncludeInd": "Y", "createDateTime": "2020-08-18T08:45:53.000Z", "updateDateTime": "2021-07-23T12:01:34.000Z", "customFlexAttribute": null,
"cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Class { "items": [ { "action": null, "hierarchyLevel": "CLASS", "class": 1, "className": "Childrens", "classVatInd": "Y", "dept": 3100, "uniqueClassId": 204, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": null, "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1, "links": null } Subclass { "items": [ { "action": null, "hierarchyLevel": "SUBCLASS", "subclass": 2, "subclassName": "Reels", "class": 3, "dept": 3032, "uniqueSubclassId": 15, "uniqueClassId": 137, "createDateTime": "2020-08-18T08:45:55.000Z", "updateDateTime": "2021-07-23T12:12:17.000Z", "customFlexAttribute": null, "cacheTimestamp": "2021-08-19T06:55:11.469Z" } ], "hasMore": false, "limit": 1, "count": 1,
"links": null
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_DIVISION | Yes | No | Yes | Yes |
| ICL_RMS_GROUPS | Yes | No | Yes | Yes |
| ICL_RMS_DEPS | Yes | No | Yes | Yes |
| ICL_RMS_CLASS | Yes | No | Yes | Yes |
| ICL_RMS_SUBCLASS | Yes | No | Yes | Yes |
| COMPHEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| MERCHAPI_EXT_MERCHHIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_MERCH_HIER _JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| MERCHAPI_EXT_CLASS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_DEPS_CFA | Yes | Yes | No | Yes |
| MERCHAPI_EXT_SUBCLASS_CFA | Yes | Yes | No | Yes |
| DEPS_CFA_EXT | Yes | No | No | No |
| CLASS_CFA_EXT | Yes | No | No | No |
| SUBCLASS_CFA_EXT | Yes | No | No | No |
Subclass Upload Service
The following services are included in this functional area:
-
Create Subclass
-
Delete Subclass
-
Update Subclass
Create Subclass
Functional Area
Merchandise Hierarchy
Business Overview
This service is can be used to create subclasses for an existing department-class in Merchandising. When a new subclass is created, this service will first validate that all required fields are present in the request payload. Business level validation on the input information will
be performed, which checks whether the subclass already exists. If the subclass does not exist, then it is created. Active custom flex attributes that are associated with a subclass can also be created through this service.
Service Type
POST
ReST URL
MerchIntegrations/services/merchandiseHierarchy/subclass/create
Input Payload Details
Table 5-1060 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| subclass | Yes | Number (4) | The unique number which identifes the subclass. This value cannot be modifed. |
| subclassName | Yes | String (120) | The name of the subclass. |
| class | Yes | Number (4) | The number of the class which contains the subclass. This value must be predefned on the CLASS table. This value cannot be modifed. |
| dept | Yes | Number (4) | The number of the department which contains the subclass. This value must be predefned on the DEPS table. This value cannot be modifed. |
| intercompanyTransferPrice Basis | No | String (6) | This specifes the Default Intercompany Transfer Price that will be used during recording of transaction data postings on intercompany transfers and allocations. Valid values are ’W’(Weighted Average Cost) and ’S’(Supplier Cost). If not defned, the value will default to ‘W’ for subclasses under departments with cost-based proft calculation type or to ‘R’ (Retail Based) for subclasses under departments with retail-based proft calculation type. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes at the order header level. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
Table 5-1060 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| updSellDateOnStOrdRcpt | No | String (1) | This feld is used to capture whether the selling phase start date at an item/ location level would need to be updated in case of receipts against purchase orders having a store as their destination. |
| updSellDateOnWh2stRcpt | No | String (1) | This feld is used to capture whether the selling phase start date at an item/ location level would need to be updated in case of receipts against Warehouse to Store transfers or allocation. |
| updSellDateOnSt2stRcpt | No | String (1) | This feld is used to capture whether the selling phase start date at an item/ location level would need to be updated in case of receipts against Store to Store transfers. |
| minUnitsForSellDateReset | No | Number (12,4) | This feld is to capture at the subclass level the minimum number of units that would trigger an update to the selling phase start date to the receipt date in case of a warehouse to store transfer/allocation or a store to store transfer. |
Table 5-1061 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"subclass": 1,
"subclassName": "subclassName",
"class": 1,
"dept": 3041,
"intercompanyTransferPriceBasis": null,
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"updSellDateOnStOrdRcpt": "N",
"updSellDateOnWh2stRcpt": "N",
"updSellDateOnSt2stRcpt": "N",
"minUnitsForSellDateReset": 50
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Subclass
Functional Area
Merchandise Hierarchy
Business Overview
This service is used to delete an existing subclass from Merchandising. When a subclass is deleted, this service will add the subclass to a purging staging table for processing in the Daily Purge of Foundation Data process.
Note: Associated custom flex attributes are deleted when the subclass is deleted.
For more details on Subclass, see the Create Subclass service description.
Service Type
DELETE
ReST URL
MerchIntegrations/services/merchandiseHierarchy/subclass/delete
Input Payload Details
Table 5-1062 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| subclass | Yes | Number (4) | The unique number which identifes the subclass. |
| class | Yes | Number (4) | The number of the class which contains the subclass. This value must be predefned on the CLASS table. |
| dept | Yes | Number (4) | The number of the department which contains the subclass. This value must be predefned on the DEPS table. |
Sample Input Message
{
"subclass": 1,
"class": 1,
"dept": 3041
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Subclass
Functional Area
Merchandise Hierarchy
Business Overview
This service is used to update an existing subclass in Merchandising. When a subclass is updated, this service will first validate that all the required fields are present in the request payload. Business level validation on the input information will be performed which verifies if the subclass to be updated already exists. If the subclass already exists, it is updated. Active custom flex attributes that are associated with a subclass can also be updated using this service.
For more details on Subclass, see the Create Subclass service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/merchandiseHierarchy/subclass/update
Input Payload Details
Table 5-1063 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| subclass | Yes | Number (4) | The unique number which identifes the subclass. This value cannot be modifed. |
| subclassName | Yes | String (120) | The name of the subclass. |
| class | Yes | Number (4) | The number of the class which contains the subclass. This value must be predefned on the CLASS table. This value cannot be modifed. |
| dept | Yes | Number (4) | The number of the department which contains the subclass. This value must be predefned on the DEPS table. This value cannot be modifed. |
Table 5-1063 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| intercompanyTransferPrice Basis | No | String (6) | This specifes the Default Intercompany Transfer Price that will be used during recording of transaction data postings on intercompany transfers and allocations. Valid values are ’W’(Weighted Average Cost) and ’S’(Supplier Cost). If not defned, the value will default to ‘W’ for subclasses under departments with cost-based proft calculation type or to ‘R’ (Retail Based) for subclasses under departments with retail-based proft calculation type. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| updSellDateOnStOrdRcpt | No | String (1) | This feld is used to capture whether the selling phase start date at an item/ location level would need to be updated in case of receipts against purchase orders having a store as their destination. |
| updSellDateOnWh2stRcpt | No | String (1) | This feld is used to capture whether the selling phase start date at an item/ location level would need to be updated in case of receipts against Warehouse to Store transfers or allocation. |
| updSellDateOnSt2stRcpt | No | String (1) | This feld is used to capture whether the selling phase start date at an item/ location level would need to be updated in case of receipts against Store to Store transfers. |
| minUnitsForSellDateReset | No | Number (12,4) | This feld is to capture at the subclass level the minimum number of units that would trigger an update to the selling phase start date to the receipt date in case of a warehouse to store transfer/allocation or a store to store transfer. |
Table 5-1064 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
Table 5-1064 (Cont.) CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"subclass": 1,
"subclassName": "subclassName",
"class": 1,
"dept": 3041,
"intercompanyTransferPriceBasis": null,
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"updSellDateOnStOrdRcpt": "N",
"updSellDateOnWh2stRcpt": "N",
"updSellDateOnSt2stRcpt": "N",
"minUnitsForSellDateReset": 50
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Reclassification
The following services are included in this functional area:
-
Item Reclassification Download Service
-
Item Reclassification Upload Service
-
Merchandise Hierarchy Reclassification Upload Service
Item Reclassification Download Service
Get Item Reclassifications
This section describes the Reclass Detail service.
Business Overview
This service is used to retrieve reclassification details for a given item.
Service Type
Get
ReST URL
Reclass/reclass?item={itemNumber}
Input Parameters
Output
| Parameter Name | Required | Description |
|---|---|---|
| Item RestReclassRecRDO | Yes | Item number |
| Parameter Name | Data Type | |
| toClass | BigDecimal | |
| reclassDate | Timestamp | |
| reclassDesc | String | |
| toSubclass | BigDecimal | |
| reclassNo | BigDecimal | |
| toDept | toDept |
RestReclassRecRDO
JSON Structure
[
{
"toClass": null,
"reclassDate": null,
"reclassDesc": null,
"toSubclass": null,
"reclassNo": null,
"toDept": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
]
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| RECLASS_HEAD | Yes | No | No | No |
| RECLASS_ITEM | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Item Reclassification Upload Service
Create Item Reclassification
Functional Area
Merchandise Hierarchy - Reclassification
Business Overview
This service allows external systems to create item reclassification events within Merchandising which are necessary in order to keep it in sync with the external system. Merchandising subscribes to item reclassification messages, which updates the department, class, and/or subclass for an item, based on the data that is published by the external system. Only the following item types can be interfaced using this API:
-
Transaction level items without a parent
-
Parent items, whose child items are the transaction level, such as with a fashion style (parent) and its SKUs (children)
-
Complex pack items - but the reclassification cannot include the component items in the pack
The following item types cannot be reclassified:
-
Child items with a parent - these are reclassified when the parent is updated
-
Reference items - these below transaction level items are automatically reclassified with the transaction level item or its parent, whichever applies.
-
Simple Packs - these are reclassified when the component item is reclassified
This service also allows a reclassification event to be created for a department/class/subclass combination that does not exist yet. This is valid as long as the merchandise hierarchy is scheduled to be created on or prior to the reclassification taking effect. In order to create a reclassification, both header and detail level records are required.
Service Type
POST
ReST URL
MerchIntegrations/services/merchandiseHierarchy/itemReclassification/create
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-1065 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of item |
| Object | reclassifcation records. |
Table 5-1066 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| reclassNo | Yes | Number (4) | The unique number which identifes the reclass event. |
| description | Yes | String (120) | The description of the reclass event. |
| reclassDate | Yes | date | The date on which the reclass event is scheduled to take place. |
| toDept | Yes | Number (4) | The department to which the item will belong after the reclass event. |
| toClass | Yes | Number (4) | The class to which the item will belong after the reclass event. |
| toSubclass | Yes | Number (4) | The subclass to which the item will belong after the reclass event. |
| items | No | Collection of Object | References a collection of items in the reclassifcation event. |
Table 5-1067 Items.Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The item in the reclass event. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"reclassNo": 1,
"description": "reclassDesc",
"reclassDate": "2001-12-31",
"toDept": 3041,
"toClass": 1,
"toSubclass": 1,
"items": [
{
"item": "100100076"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Item Reclassification Detail
Functional Area
Merchandise Hierarchy - Reclassification
Business Overview
This service allows external systems to add items to an existing item reclassification event in Merchandising in order to keep it in sync with the external system. Merchandising subscribes to item reclassification requests, which update the department, class, and/or subclass for the item, based on the data that is published by the external system.
Before an item is added to the reclassification event, the following things would be validated:
-
Must be a level 1 item
-
If the item is a pack, it should not be a simple pack
-
Must not be on any approved order
-
Must not be an orderable buyer pack that can be received as component items
-
Must not be on an existing reclassification
Service Type
POST
ReST URL
MerchIntegrations/services/merchandiseHierarchy/itemReclassification/detail/
create
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-1068 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of item |
| Object | reclassifcation details. |
Table 5-1069 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| reclassNo | Yes | Number (4) | The unique number which identifes the reclass event. |
| description | Yes | String (120) | The description of the reclass event. |
| reclassDate | Yes | date | The date on which the reclass event is scheduled to take place. |
| toDept | Yes | Number (4) | The department to which the item will belong after the reclass event. |
| toClass | Yes | Number (4) | The class to which the item will belong after the reclass event. |
| toSubclass | Yes | Number (4) | The subclass to which the item will belong after the reclass event. |
| items | No | Collection of Object | References a collection of items in the reclassifcation event. |
Table 5-1070 Items.Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The item to be added to the |
| reclassifcation event. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"reclassNo": 1,
"description": "reclassDesc",
"reclassDate": "2001-12-31",
"toDept": 3041,
"toClass": 1,
"toSubclass": 1,
"items": [
{
"item": "100100076"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Reclassification
Functional Area
Merchandise Hierarchy - Reclassification
Business Overview
This service allows external systems to delete item reclassification events within Merchandising in order to keep it in sync with the external system. Reclassifications can be deleted using any of the following:
-
Deleting a single reclassification event
-
Deleting all reclassification events on a particular event date
-
Deleting all reclassification events
Service Type
DELETE
ReST URL
MerchIntegrations/services/merchandiseHierarchy/itemReclassification/delete
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-1071 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| reclassNo | No | Number (4) | If this is provided, then the particular reclass event will be deleted. The purgeAllInd must be N when this is provided. |
| reclassDate | No | date | If this is provided, then all reclass events with this date will be deleted. The purgeAllInd must be N when this is provided. |
| purgeAllInd | No | String (1) | If this feld is Y, then all item reclass events will be deleted. If this is provided, both reclassNo and reclassDate must not be provided. |
Sample Input Message
{
"reclassNo": 1,
"reclassDate": "2001-12-31",
"purgeAllInd": "Y"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Item Reclassification Detail
Functional Area
Merchandise Hierarchy - Reclassification
Business Overview
This service allows external systems to remove items from an existing item reclassification event in Merchandising in order to keep it in sync with the external system. The entire reclassification event gets deleted once there are no remaining item lines based on detail level deletion.
Service Type
DELETE
ReST URL
MerchIntegrations/services/merchandiseHierarchy/itemReclassification/detail/
delete
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-1072 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| reclassNo | Yes | Number (4) | The reclass event for which deletion activity is occurring. |
| items | Yes | Collection of Object | References a collection of items to be deleted from a reclassifcation event. |
Table 5-1073 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | The item in the reclassifcation event |
that needs to be deleted. |
Sample Input Message
{
"reclassNo": 1,
"items": [
{
"item": "100100076"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Merchandise Hierarchy Reclassification Upload Service
Create Merchandise Hierarchy Reclassification
Functional Area
Merchandise Hierarchy - Reclassification
Business Overview
This service allows Merchandising to subscribe to merchandise hierarchy reclassification requests from an external system and is intended to be used by retailers who manage their hierarchies in an external system which is outside Merchandising. This service creates pending merchandise hierarchy reclassification events within Merchandising based on the data sent by the external system.
When a new merchandise hierarchy reclassification is created, the service will first validate that all the required fields are present in the payload. There are certain fields that are required
irrespective of the hierarchy level, while there are a few which depend on other hierarchy configurations. After this is completed, business level validation will be carried out on the input information.
There is a separate batch process to read the information that is present in the pending merchandise hierarchy table and create the merchandise hierarchy information in Merchandising on the effective date.
Service Type
POST
ReST URL
MerchIntegrations/services/merchandiseHierarchy/reclassification/create
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-1074 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyLevel | Yes | String (1) | Indicates the level of the merchandise hierarchy. Valid values are V (division), G (group), D (department), C (class), and S (subclass). |
| hierarchyId | Yes | Number (4) | Contains the merchandise hierarchy ID. |
| parentHierarchyId | No | Number (4) | The parent of the hierarchy identifed in the hierarchyId feld. This feld is optional when hierarchyLevel is V (Division). For a Division, if parent is provided, it must be Company. |
| grandparentHierarchyId | No | Number (4) | The grandparent of the hierarchy identifed in the hierarchyId feld. This feld will only be used when the hierarchyLevel indicates subclass. It will contain the number of the department the subclass belongs to. |
| hierarchyName | Yes | String (120) | The name of the hierarchy value. |
| effectiveDate | Yes | date | The date the hierarchy change will become effective. |
| actionType | No | String (1) | Indicates if this feld is an addition or modifcation. Valid values are A and M. It is required on a create message and should not be populated on a modify message. |
| buyer | No | Number (4) | The number of the buyer associated with the entity. This value must be predefned on the BUYER table. This feld should only hold a value if the hierarchy level indicates division, group, or department. |
Table 5-1074 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| purchaseType | No | Number (1) | The code which indicates whether items in the department are normal merchandise (0) or consignment stock (1). This feld will only be used if the hierarchy level indicates department. |
| totalMarketAmount | No | Number (24,4) | The total market amount that is expected for the entity. This feld will only be used if the hierarchy value indicates division or department. |
| merchandiser | No | Number (4) | The number of the merchandiser associated with the entity. This value must be predefned on the MERCHANT table. This feld should hold a value only if the hierarchy level indicates division, group, or department. |
| budgetedMarkupPercent | No | Number (12,4) | The budgeted markup percentage. The markup percent of cost. This feld will only be used if the hierarchy level indicates department. |
| proftCalcType | No | Number (1) | The number which indicates whether proft will be calculated by direct cost (1) or retail inventory (2). This feld will only be used if the hierarchy level indicates department. |
| markupCalcType | No | String (2) | The code letter which indicates how markup is calculated in the department. This feld will only be used if the hierarchy level indicates department. Valid values are C (cost) and R (retail). |
| otbCalcType | No | String (1) | The code letter which indicates how OTB is calculated in the department. Valid values are cost (C) and retail (R). This feld will only be used if the hierarchy value indicates department. |
| maximumAverageCounter | No | Number (5) | The maximum count of days with acceptable data to include in an average for items with the department. This feld will only be used if the hierarchy level indicates department. It is required if RPM is installed. |
| averageTolerancePercent | No | Number (12,4) | The tolerance percentage value used in averaging for items within this value. This column will hold 70% as 70, not. 70. This feld will only be used if the hierarchy value indicates department. |
Table 5-1074 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| budgetedIntakePercent | No | Number (12,4) | The budgeted intake percentage. The percent of the total take that is income. This feld will only be used if the hierarchy value indicates department. |
| deptVatIncludeInd | No | String (1) | Indicates the default value for the class VAT indicator. When classes are initially set up they will inherit this value. This feld will only be populated when the hierarchy level indicates department. |
| classVatInd | No | String (1) | Indicates if retail is displayed and held with or without VAT for items within a class. Valid values are Y (yes) and N (no). This feld will only be used if the hierarchy level indicates class. |
Sample Input Message
{
"hierarchyLevel": "D",
"hierarchyId": 100,
"parentHierarchyId": 108,
"grandparentHierarchyId": 1000,
"hierarchyName": "Dept 100 MrchRcls Action New",
"effectiveDate": null,
"actionType": "A",
"buyer": 305,
"purchaseType": 0,
"totalMarketAmount": 3,
"merchandiser": 601,
"budgetedMarkupPercent": 3,
"profitCalcType": 1,
"markupCalcType": "C",
"otbCalcType": "C",
"maximumAverageCounter": 10000,
"averageTolerancePercent": 3,
"budgetedIntakePercent": 15.00,
"deptVatIncludeInd": "Y",
"classVatInd": null
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Merchandise Hierarchy Reclassification
Functional Area
Merchandise Hierarchy - Reclassification
Business Overview
This service allows for pending merchandise hierarchy reclassification events to be deleted in Merchandising. Prior to deleting a previously created reclassification event, the existence of any related child reclassification records will be checked and the necessary validations will be executed to ensure there are no conflicts.
Service Type
DELETE
ReST URL
MerchIntegrations/services/merchandiseHierarchy/reclassification/delete
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-1075 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyLevel | Yes | String (1) | Indicates the level of the merchandise hierarchy. Valid values are V (division), G (group), D (department), C (class), and S (subclass). |
| hierarchyId | Yes | Number (4) | Contains the merchandise hierarchy ID. |
| parentHierarchyId | No | Number (4) | The parent of the hierarchy identifed in the hierarchyId feld. |
Table 5-1075 (Cont.) Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| grandparentHierarchyId | No | Number (4) | The grandparent of the hierarchy identifed in the hierarchyId feld. This column will only be populated if the hierarchyLevel = subclass. In this case, the column will contain the dept number. |
Sample Input Message
{
"hierarchyLevel": "D",
"hierarchyId": 100,
"parentHierarchyId": 108,
"grandparentHierarchyId": 1000
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Merchandise Hierarchy Reclassification
Functional Area Merchandise Hierarchy - Reclassification
Business Overview
This service allows for pending merchandise hierarchy reclassification events to be modified in Merchandising. In order to update a previously created reclassification, the hierarchy type must be already present in Merchandising. While updating the effective date of a reclassification that involves an addition, there should not be any child hierarchy addition with an earlier effective date. For example, if you are adding a department within Merchandising on a given date, there cannot be a reclassification event for adding a class within the department with an earlier effective date.
Service Type
PUT
ReST URL
MerchIntegrations/services/merchandiseHierarchy/reclassification/update
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-1076 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyLevel | Yes | String (1) | Indicates the level of the merchandise hierarchy. Valid values are V (division), G (group), D (department), C (class), and S (subclass). |
| hierarchyId | Yes | Number (4) | Contains the merchandise hierarchy ID. |
| parentHierarchyId | No | Number (4) | The parent of the hierarchy identifed in the hierarchyId feld. This feld is optional when hierarchyLevel is V (Division). For a Division, if parent is provided, it must be Company. |
| grandparentHierarchyId | No | Number (4) | The grandparent of the hierarchy identifed in the hierarchyId feld. This feld will only be used when the hierarchyLevel indicates subclass. It will contain the number of the department the subclass belongs to. |
| hierarchyName | Yes | String (120) | The name of the hierarchy value. |
| effectiveDate | Yes | date | The date the hierarchy change will become effective. |
| buyer | No | Number (4) | The number of the buyer associated with the entity. This value must be predefned on the BUYER table. This feld should only hold a value if the hierarchy level indicates division, group, or department. |
| purchaseType | No | Number (1) | The code which indicates whether items in the department are normal merchandise (0) or consignment stock (1). This feld will only be used if the hierarchy level indicates department. |
Table 5-1076 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| totalMarketAmount | No | Number (24,4) | The total market amount that is expected for the entity. This feld will only be used if the hierarchy value indicates division or department. |
| merchandiser | No | Number (4) | The number of the merchandiser associated with the entity. This value must be predefned on the MERCHANT table. This feld should hold a value only if the hierarchy level indicates division, group, or department. |
| budgetedMarkupPercent | No | Number (12,4) | The budgeted markup percentage. The markup percent of cost. This feld will only be used if the hierarchy level indicates department. |
| proftCalcType | No | Number (1) | The number which indicates whether proft will be calculated by direct cost (1) or retail inventory (2). This feld will only be used if the hierarchy level indicates department. |
| markupCalcType | No | String (2) | The code letter which indicates how markup is calculated in the department. This feld will only be used if the hierarchy level indicates department. Valid values are C (cost) and R (retail). |
| otbCalcType | No | String (1) | The code letter which indicates how OTB is calculated in the department. Valid values are cost (C) and retail (R). This feld will only be used if the hierarchy value indicates department. |
| maximumAverageCounter | No | Number (5) | The maximum count of days with acceptable data to include in an average for items with the department. This feld will only be used if the hierarchy level indicates department. |
| averageTolerancePercent | No | Number (12,4) | The tolerance percentage value used in averaging for items within this value. This column will hold 70% as 70, not. 70. This feld will only be used if the hierarchy value indicates department. |
| budgetedIntakePercent | No | Number (12,4) | The budgeted intake percentage. The percent of the total take that is income. This feld will only be used if the hierarchy value indicates department. |
Table 5-1076 (Cont.) Update - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| deptVatIncludeInd No | String (1) | Indicates the default value for the class VAT indicator. When classes are initially set up they will inherit this value. This feld will only be populated when the hierarchy level indicates department. |
| classVatInd No Sample Input Message | String (1) | Indicates if retail is displayed and held with or without VAT for items within a class. Valid values are Y (yes) and N (no). This feld will only be used if the hierarchy level indicates class. |
{"hierarchyLevel": "D", | ||
"hierarchyId": 100, | ||
"parentHierarchyId": 108, | ||
"grandparentHierarchyId": 1000, | ||
"hierarchyName": "merchHierName", | ||
"effectiveDate": "2001-12-31", | ||
"buyer": 1000, | ||
"purchaseType": 1, | ||
"totalMarketAmount": 3, | ||
"merchandiser": 1000, | ||
"budgetedMarkupPercent": 3, | ||
"profitCalcType": 1, | ||
"markupCalcType": "C", | ||
"otbCalcType": "C", | ||
"maximumAverageCounter": 10000, | ||
"averageTolerancePercent": 3, | ||
"budgetedIntakePercent": 15.00, | ||
"deptVatIncludeInd": "Y", | ||
"classVatInd": null} |
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Organizational Hierarchy
The following services are included in this functional area:
-
Organizational Hierarchy Download Service
-
Get Organizational Hierarchy for Provided Level
-
– Get Organizational Hierarchy for Provided Level and Hierarchy Identifier
-
Get Organizational Hierarchy
-
-
Organizational Hierarchy Upload Service – Create Organizational Hierarchy
-
– Delete Organizational Hierarchy
-
– Update Organizational Hierarchy
-
• Stores – Store Download Service * Get Basic Store Details * Get Store Details * Get Store Details for Provided Store
-
– Store Upload Service * Create Store * Create Store Address * Create Store Department Up Charges * Create Store Hours * Create Store Location Trait * Create Walk-Through Store * Delete Store * Delete Store Address * Delete Store Department Up Charges * Delete Store Hours
- Delete Store Location Trait - Delete Walk-Through Store - Update Store - Update Store Address - Update Store Department Up Charges - Update Store Hours-
Stores by Hierarchy Level Upload Service
-
Create Store Location Trait by Hierarchy Level
-
Delete Store Location Trait by Hierarchy Level
-
-
-
Warehouse
-
Warehouse Download Service
-
Get Basic Warehouse Details
-
Get Warehouse Details
-
Get Warehouse Details for Provided Warehouse
-
-
Get Company Closings
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/companyClosings/get
Functional Area
Foundation
Business Overview
This service retrieves company-wide closings along with their associated location-level exceptions. This service accepts optional query parameters for closed date to retrieve details for the specified closed date.
Input Parameters
Response Code: 200 (Success)
Company Closings - Object. See list of elements for detail
LocationExceptions - Object. See list of elements for detail
Translations - Object. See list of elements for detail
Sample Response Message
{
"closedDate": "2026-06-29",
"closedDescription": "Christmas",
"locationExceptions": [
{
"location": 6000,
"locationType": "S",
"openForSales": "N",
"openForShipping": "Y",
"openForReceiving": "Y"
}
],
"translations": [
{
"languageCode": 3,
"languageName": "French",
"isoCode": "FR",
"closedDescription": "Noel"
}
]
}
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.
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"
}
]
}
Get Location Closings
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/locationClosings/get
Functional Area
Foundation
Business Overview
This service retrieves location-specific closings for one or more specified locations, or for all locations. This service accepts optional query parameters for location, location type and closed date to retrieve details for the specified location, location type and closed date.
Input Parameters
Response Code: 200 (Success)
Location Closings - Object. See list of elements for detail
Translations - Object. See list of elements for detail
Sample Response Message
{
"location": 6000,
"locationType": "S",
"closedDate": "2026-06-29",
"closedForSales": "N",
"closedForShipping": "Y",
"closedForReceiving": "Y",
"reason": "Christmas",
"translations": [
{
"languageCode": 3,
"languageName": "French",
"isoCode": "FR",
"reason": "Noel"
}
]
}
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.
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"
}
]
}
Get Locations for AIF Applications
Business Overview
The service is used to fetch all locations from Merchandising for AIF application usage, data warehousing needs, or other downstream consuming systems. This service follows the AIF publish pattern and provides cache-backed JSON messages for consumers that need current location data.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and interacts with webhooks, refer to the common Publish API operational guidance.
Core business tables: STORE, WH, PARTNER, ADDR
Additional business tables: DISTRICT, REGION, AREA, CHAIN, COMPANY and related foundation reference tables
JSON cache table: MERCHAPI_AIF_LOCATION
JSON generation view: V_MERCHAPI_AIF_LOCATION_JSON
Builds a unified location message for stores, warehouses, and external finishers, including address, hierarchy, channel, banner, and operational attributes.
A location is published when it is present in the location JSON view and has a cacheable location message for AIF downstream consumption.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_MERCHAPI_AIF_LOCATION_JSON. No additional filter criteria were identified beyond the cache-build logic.
Mark cache rows deleted when the location no longer exists in V_MERCHAPI_AIF_LOCATION_JSON.
ICL (Integration Change Log) table: ICL_RMS_ADDR, ICL_RMS_PARTNER, ICL_RMS_STORE, ICL_RMS_WH (ICL consumer name = MERCHAPI_4)
ICL entries are created using the delivered entity map and table map for foundation/aif/ locations. Qualifying inserts, updates, and deletes are written with change type U for cache refresh processing.
Batch Configuration. Background-engine execution is the delivered asynchronous option for this API.
Process configuration name: API_AIF_LOCATION
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM batch scheduler based delta processing is not supported for this API.
Webhook configuration api name: foundation/aif/locations
Special handling:
Additional GET query parameters: location, locationType.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime profiles.
Multi-threading and commit control
This service supports multi-threaded execution for both initial seeding and delta processing. Thread count is controlled through API_NO_OF_THREADS, and commit sizing is controlled through API_COMMIT_MAX_COUNTER. Choose these settings together based on expected row volume, average message size, and the SQL cost of building each JSON message.
Dropping indexes and constraints during seeding
DROP_INDEX_ON_REFRESH applies only to initial seeding, including truncate-and-load execution. When enabled, indexes and constraints are dropped before seeding and rebuilt after the load completes. GATHER_STATS_ON_REFRESH should normally remain enabled unless implementation testing shows a specific reason to change it.
REST fetch considerations
Select REST page size based on average payload size so the average response remains below about 10 MB per call. For full downloads, omit the since query parameter. For delta downloads, use a short time window; wider outage or recovery windows should be handled through smaller polling windows, using optimalBefore where applicable.
Input Parameters
Response Code: 200 (Success)
PageResultsItemsMerchApiAifLocation - Object. See list of elements for detail
MerchApiAifLocation - Object. See list of elements for detail
Location address and operational attribute objects - Object. See list of elements for detail
LinkItems - Object. See list of elements for detail
Sample Response Message
{
"items": [
{
"action": "INSERT",
"location": 101,
"locationType": "S",
"currencyCode": "USD",
"locationName": "Store 101",
"addressType": "01",
"address1": "100 Main Street",
"city": "Austin",
"state": "TX",
"post": "78701",
"country": "US",
"district": 10,
"region": 1,
"channelId": 1,
"channelName": "Stores",
"stockholdingFlag": "Y",
"createDateTime": "2001-12-31T10:15:30Z",
"updateDateTime": "2001-12-31T10:15:30Z"
}
],
"hasMore": false,
"limit": 1,
"count": 1,
"links": []
}
Manage Company Closings
Functional Area
Foundation
Business Overview
This service endpoint will be used to create, update or delete company-wide closings and any exception at location level.
Service Type
POST
ReST URL
MerchIntegrations/services/foundation/companyClosings/manage
Input Payload Details
Manage - Object. See list of elements for detail
CompanyClosings - Object. See list of elements for detail
LocationExceptions - Object. See list of elements for detail
Translations - Object. See list of elements for detail
Sample Input Message
{
"companyClosings": [
{
"action": "CREATE",
"closedDate": "2001-12-31",
"closedDescription": "Independence Day",
"locationExceptions": [
{
"action": "CREATE",
"location": 1521,
"locationType": "S",
"openForSales": "N",
"openForShipping": "N",
"openForReceiving": "Y"
}
],
"translations": [
{
"action": "CREATE",
"lang": 3,
"closedDescription": "Jour de l\u0027indépendance"
}
]
}
]
}
Response Code: 200 (Success)
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.
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"
}
]
}
Manage Location Closings
Functional Area
Foundation
Business Overview
This service endpoint will be used to create, update or delete location-specific closings, for individual locations.
Service Type
POST
ReST URL
MerchIntegrations/services/foundation/locationClosings/manage
Input Payload Details
Manage - Object. See list of elements for detail
LocationClosings - Object. See list of elements for detail Translations - Object. See list of elements for detail
Sample Input Message
{
"locationClosings": [
{
"action": "CREATE",
"location": 1521,
"locationType": "S",
"closedDate": "2001-12-31",
"closedForSales": "N",
"closedForShipping": "Y",
"closedForReceiving": "Y",
"reason": "Christmas",
"translations": [
{
"action": "CREATE",
"lang": 3,
"reason": "Noël"
}
]
}
]
}
Response Code: 200 (Success)
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.
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"
}
]
}
Manage Warehouse
Functional Area
Organizational Hierarchy - Warehouses
Business Overview
This service supports the maintenance of physical warehouses and their associated virtual warehouses, along with related data such as addresses and translations based on the request from an external system if Merchandising is not the system of record for organizational hierarchy information. Warehouse creation also supports importing custom flexible attributes (CFAS) from an external system.
Valid actions are Create, Update and Delete.
When the provided Action is ‘Create’, a new warehouse is created in Merchandising synchronously after the payload is validated first. When creating a new physical warehouse, the payload must include mandatory address details and at least one virtual warehouse.
When the provided Action is ‘Update’, an existing warehouse’s data can be updated after the data has been validated.
When the provided Action is ‘Delete’, an existing physical warehouse and associated data can be deleted. After the data has been validated, the service will add the warehouse to the DAILY_PURGE table for processing deletion through a batch process.
Physical Warehouse Translations
This sub node allows to create, update, or delete translations of a warehouse’s name and secondary name in Merchandising. This service will accept a warehouse, language and name specified in the language, to add or update a translation, or a warehouse and language to delete a translation.
Addresses
This sub node supports maintenance of addresses along with their translations for an existing physical warehouse in Merchandising based on the request from an external system if Merchandising is not the system of record for organizational hierarchy information. Address creation also supports importing custom flexible attributes (CFAS) from an external system.
Valid actions are Create, Update and Delete.
When the provided Action is ‘Create’, a new address is created in Merchandising after the payload has been validated.
When the provided Action is ‘Update’, an existing warehouse’s address data can be updated after the payload has been validated.
When the provided Action is ‘Delete’, an existing address for the physical warehouse and its associated data can be deleted after the payload has been validated.
Address Translations
This sub node allows to create, update, or delete translations of a warehouse’s address in Merchandising. This service will accept a warehouse, in the language, to add or update a translation, or a warehouse and language to delete a translation.
Virtual Warehouses
This sub node supports the maintenance of virtual warehouses and along with related translations based on the request from an external system if Merchandising is not the system of record for organizational hierarchy information. This also supports importing custom flexible attributes (CFAS) from an external system.
Valid actions are Create, Update and Delete.
When a physical warehouse is scheduled for one or more stock counts that are not yet within the lockout period. Newly created virtual warehouses will be added to the existing open stock counts.
Each channel that includes a finishing virtual warehouse must also include a corresponding non-finishing virtual warehouse.
If replenishment is used in Merchandising, each physical warehouse is expected to include a replenishable virtual warehouse.
When the provided Action is ‘Create’, an additional virtual warehouse for the existing physical warehouse is created after the payload has been validated.
When the provided Action is ‘Update’, an existing virtual warehouse’s data is updated after the payload has been validated.
When the provided Action is ‘Delete’, an existing virtual warehouse and associated data can be deleted after the payload has been validated. The service will add the warehouse to the DAILY_PURGE table for processing deletion through a batch process.
Virtual Warehouse Translations
This sub node allows you to create, update, or delete translations of a virtual warehouse’s name and secondary name in Merchandising. This service will accept a warehouse, language and name specified in the language, to add or update a translation, or a warehouse and language to delete a translation.
Note: For action UPDATE and subnodes Physical Warehouse Translations, Address, Address Translations, Virtual Warehouse Translations and CFAS, all the fields are expected to be available. If not provided, all such fields will be updated to null.
Service Type
POST
ReST URL
MerchIntegrations/services/organizationalHierarchy/warehouse/manage
Input Payload Details
Manage - Object. See list of elements for detail
Items - Object. See list of elements for detail
Address - Object. See list of elements for detail
Translation - Object. See list of elements for detail
CustomFlexAttribute - Object. See list of elements for detail
VirtualWarehouse - Object. See list of elements for detail
VirtualWarehouse.Translation - Object. See list of elements for detail
ManageError - Object. See list of elements for detail
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"action": "CREATE",
"physicalWarehouse": 990000001,
"name": "String",
"secondaryName": "String",
"clearSecondaryName": "N",
"email": "String",
"clearEmail": "N",
"currencyCode": "USD",
"inboundHandlingDays": 1,
"deliveryPolicy": "NDD",
"costLocation": 6,
"breakPackWarehouseInd": "N",
"redistributionWarehouseInd": "N",
"taxRegion": 1000,
"taxId": "123456789",
"clearTaxId": "N",
"dunsNumber": "123456789",
"clearDunsNumber": "N",
"dunsLoc": "1234",
"clearDunsLocation": "N",
"reportingLevelType": null,
"clearReportingLevelType": "N",
"reportingLevel": null,
"address": [
{
"action": "CREATE",
"addressType": "01",
"externalReferenceId": "ADDR_01",
"primaryAddressType": "Y",
"primaryAddress": "Y",
"add1": "Primary Address",
"add2": "Suite 100",
"add3": null,
"city": "Redwood City",
"state": "CA",
"country": "US",
"post": "94065",
"county": "San Mateo",
"latitude": "37.5300",
"longitude": "-122.2600",
"jurisdictionCode": null,
"contactName": "Contact",
"contactPhone": "6505550100",
"contactTelex": null,
"contactFax": null,
"contactEmail": "String",
"phone2Type": "MA",
"phone2": "6505550101",
"phone3Type": "WO",
"phone3": "6505550102",
"oracleVendorSiteId": null,
"translation": [
{
"action": "CREATE",
"addressType": "01",
"language": 2,
"add1": "Primaere Adresse",
"add2": "Uebersetzte Suite 100",
"add3": null,
"city": "Redwood City DE",
"contactName": "Uebersetzter Kontakt",
"county": "Uebersetzter Bezirk"
}
],
"customFlexAttribute": [
{
"name": "ADDR_PC",
"value": "10001",
"valueDate": "2001-12-31"
}
]
}
],
"virtualWarehouse": [
{
"action": "CREATE",
"virtualWarehouse": 990000002,
"name": "String",
"secondaryName": "String",
"clearSecondaryName": "N",
"primaryVirtualWarehouseInd": "Y",
"orgEntityType": "R",
"channel": 1,
"virtualWarehouseType": "CS_NT",
"transferEntity": 1379346183,
"organizationalUnit": 385168665527164,
"legalEntity": null,
"clearLegalEntity": "N",
"pricingLocation": 6,
"defaultWarehouse": null,
"roundingWarehouse": null,
"protectedInd": "N",
"restrictedInd": "N",
"forecastableInd": "Y",
"replenishmentWarehouseInd": "Y",
"replenishmentWarehouseLink": null,
"sourceSequence": null,
"investmentBuyWarehouseInd": "N",
"investmentBuyWarehouseLink": null,
"inventoryBuyAutoClearInventory": "N",
"finisherInd": "N",
"customerOrderInd": "N",
"customerShippingInd": "N",
"giftWrappingInd": "N",
"translation": [
{
"action": "CREATE",
"language": 2,
"warehouseName": "Physisches Lager",
"warehouseSecondaryName": "Physisches Lager Zweitname"
}
],
"customFlexAttribute": [
{
"name": "ADDR_PC",
"value": "10001",
"valueDate": "2001-12-31"
}
]
}
],
"translation": [
{
"action": "CREATE",
"language": 2,
"warehouseName": "Physisches Lager",
"warehouseSecondaryName": "Physisches Lager Zweitname"
}
],
"customFlexAttribute": [
{
"name": "ADDR_PC",
"value": "10001",
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
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.
ManageError - Object. See list of elements for detail
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": [
{
"physicalWarehouse": 987654321,
"addressType": "01",
"externalReferenceId": "ADDR_01",
"virtualWarehouse": 987654322,
"language": 2,
"cfaName": "ADDR_PC",
"errorMessage": [
"Invalid value for deliveryPolicy."
]
}
]
}
Organizational Hierarchy Download Service
The following services are included in this functional area:
-
Get Organizational Hierarchy for Provided Level
-
Get Organizational Hierarchy for Provided Level and Hierarchy Identifier
-
Get Organizational Hierarchy
Get Organizational Hierarchy for Provided Level
Endpoints
MerchIntegrations/services/foundation/orghier
MerchIntegrations/services/foundation/orghier/{orgLevel}
MerchIntegrations/services/foundation/orghier/{param1}/{param2}
Functional Area
Organizational Hierarchy
Business Overview
This service publishes organizational hierarchy master data to downstream consuming systems. It publishes the company, chain, area, region, and district nodes used to describe the organizational structure, together with hierarchy name, manager name, currency code, and parent-hierarchy linkage. Functionally, only the five organizational levels COMPANY, CHAIN, AREA, REGION, and DISTRICT are published; store and warehouse nodes are not part of this external API even though the broader org-hierarchy framework also uses those levels elsewhere.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: COMPHEAD, CHAIN, AREA, REGION, DISTRICT
Additional business tables: SYSTEM_OPTIONS, CODE_DETAIL
JSON cache table: MERCHAPI_EXT_ORGHIER
JSON generation view: V_MERCHAPI_EXT_ORGHIER_JSON
Builds the payload by unioning COMPHEAD, CHAIN, AREA, REGION, and DISTRICT, uses SYSTEM_OPTIONS to supply the company currency code, and uses CODE_DETAIL to translate internal hierarchy codes into the published hierarchy-level values and their numeric sequence order.
The view only publishes the five organizational levels COMPANY, CHAIN, AREA, REGION, and DISTRICT; store and warehouse nodes are not part of this external API even though the broader org-hierarchy framework also uses those levels elsewhere.
Initial refresh supports both truncate-and-load and rebuild behavior, and rebuild marks cache rows deleted when a hierarchy node no longer exists in V_MERCHAPI_EXT_ORGHIER_JSON.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_MERCHAPI_EXT_ORGHIER_JSON. No additional filter criteria were identified beyond the cache-build logic.
Mark cache rows deleted when the hierarchy node no longer exists in V_MERCHAPI_EXT_ORGHIER_JSON.
ICL (Integration Change Log) table: ICL_RMS_COMPHEAD, ICL_RMS_CHAIN, ICL_RMS_AREA, ICL_RMS_REGION, ICL_RMS_DISTRICT (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on COMPHEAD, CHAIN, AREA, REGION, DISTRICT.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_ORGHIER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_ORG_HIER_ADHOC_PROCESS → MERCHAPI_EXT_ORG_HIER_ADHOC_JOB
Webhook configuration api name: foundation/orghier
Special handling
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/orghier
MerchIntegrations/services/foundation/orghier/{orgLevel}
MerchIntegrations/services/foundation/orghier/{param1}/{param2}
Input Parameters for MerchIntegrations/services/foundation/orghier
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String (15) | Offset key ([level order],[hierarchy id] Example: 30,17) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1077 Input Parameter for “MerchIntegrations/services/foundation/orghier/ {orgLevel}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| orgLevel | Yes | String | Organization level - COMPANY or CHAIN or AREA or REGION or DISTRICT |
| offsetkey | No | String (15) | Offset key ([level order],[hierarchy id] Example: 30,17) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
Table 5-1077 (Cont.) Input Parameter for “MerchIntegrations/services/foundation/ orghier/{orgLevel}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1078 Input Parameter for “MerchIntegrations/services/foundation/orghier/ {param1}/{param2}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| param1 | Yes | String | Organization level - COMPANY or CHAIN or AREA or REGION or DISTRICT |
| param2 | Yes | String (10) | Hirerachy Id |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Input Parameters for MerchIntegrations/services/foundation/orghier/{orgLevel}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| orgLevel | Yes | String | Level of the organization hierarchy. Valid values are COMPANY, CHAIN, AREA, REGION, DISTRICT. |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input Parameters for MerchIntegrations/services/foundation/orghier/{param1}/{param2}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| param1 | Yes | String | This is the organization hierarchy level. Valid values are COMPANY, CHAIN, AREA, REGION, DISTRICT. |
| param2 | Yes | String | This is the hierarchy ID. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Diff ID
Table 5-1079 PageResultsItemsMerchApiOrghier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1080 MerchApiOrghier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for organizational hierarchy details. |
| hierarchyLevel | No | String (10) | This feld contains the organizational hierarchy level. |
| hierarchyId | No | Number(10,0) | This feld contains the number that uniquely identifes the hierarchy value. |
| hierarchyName | No | String (120) | This feld contains the description of the hierarchy value. |
| managerName | No | String (120) | This feld contains the manager’s name. |
| currencyCode | No | String (3) | This feld contains the currency code for the hierarchy. |
| parentHierarchyId | No | Number(10,0) | This feld contains the identifer of the parent hierarchy value. |
| parentHierarchyLevel | No | String (10) | This feld contains the parent level of the current organizational hierarchy. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the organization hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1081 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"hierarchyId": 1,
"hierarchyName": "hierDesc",
"managerName": "mgrName",
"currencyCode": "USD",
"parentHierarchyId": 1,
"parentHierarchyLevel": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_CHAIN | Yes | No | Yes | Yes |
| ICL_RMS_COMPHEAD | Yes | No | Yes | Yes |
| ICL_RMS_AREA | Yes | No | Yes | Yes |
| ICL_RMS_REGION | Yes | No | Yes | Yes |
| ICL_RMS_DISTRICT | Yes | No | Yes | Yes |
| MERCHAPI_EXT_ORGHIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_ORGHIER _JSON | Yes | No | No | No |
Get Organizational Hierarchy for Provided Level and Hierarchy Identifier
Endpoints
MerchIntegrations/services/foundation/orghier
MerchIntegrations/services/foundation/orghier/{orgLevel}
MerchIntegrations/services/foundation/orghier/{param1}/{param2}
Functional Area
Organizational Hierarchy
Business Overview
This service publishes organizational hierarchy master data to downstream consuming systems. It publishes the company, chain, area, region, and district nodes used to describe the organizational structure, together with hierarchy name, manager name, currency code, and parent-hierarchy linkage. Functionally, only the five organizational levels COMPANY, CHAIN, AREA, REGION, and DISTRICT are published; store and warehouse nodes are not part of this external API even though the broader org-hierarchy framework also uses those levels elsewhere.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: COMPHEAD, CHAIN, AREA, REGION, DISTRICT
Additional business tables: SYSTEM_OPTIONS, CODE_DETAIL
JSON cache table: MERCHAPI_EXT_ORGHIER
JSON generation view: V_MERCHAPI_EXT_ORGHIER_JSON
Builds the payload by unioning COMPHEAD, CHAIN, AREA, REGION, and DISTRICT, uses SYSTEM_OPTIONS to supply the company currency code, and uses CODE_DETAIL to translate internal hierarchy codes into the published hierarchy-level values and their numeric sequence order.
The view only publishes the five organizational levels COMPANY, CHAIN, AREA, REGION, and DISTRICT; store and warehouse nodes are not part of this external API even though the broader org-hierarchy framework also uses those levels elsewhere.
Initial refresh supports both truncate-and-load and rebuild behavior, and rebuild marks cache rows deleted when a hierarchy node no longer exists in V_MERCHAPI_EXT_ORGHIER_JSON.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_MERCHAPI_EXT_ORGHIER_JSON. No additional filter criteria were identified beyond the cache-build logic.
Mark cache rows deleted when the hierarchy node no longer exists in V_MERCHAPI_EXT_ORGHIER_JSON.
ICL (Integration Change Log) table: ICL_RMS_COMPHEAD, ICL_RMS_CHAIN, ICL_RMS_AREA, ICL_RMS_REGION, ICL_RMS_DISTRICT (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on COMPHEAD, CHAIN, AREA, REGION, DISTRICT.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_ORGHIER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_ORG_HIER_ADHOC_PROCESS → MERCHAPI_EXT_ORG_HIER_ADHOC_JOB
Webhook configuration api name: foundation/orghier
Special handling
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/orghier
MerchIntegrations/services/foundation/orghier/{orgLevel}
MerchIntegrations/services/foundation/orghier/{param1}/{param2}
Input Parameters for MerchIntegrations/services/foundation/orghier
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String (15) | Offset key ([level order],[hierarchy id] Example: 30,17) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1082 Input Parameter for “MerchIntegrations/services/foundation/orghier/ {orgLevel}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| orgLevel | Yes | String | Organization level - COMPANY or CHAIN or AREA or REGION or DISTRICT |
| offsetkey | No | String (15) | Offset key ([level order],[hierarchy id] Example: 30,17) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1083 Input Parameter for “MerchIntegrations/services/foundation/orghier/ {param1}/{param2}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| param1 | Yes | String | Organization level - COMPANY or CHAIN or AREA or REGION or DISTRICT |
| param2 | Yes | String (10) | Hirerachy Id |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Input Parameters for MerchIntegrations/services/foundation/orghier/{orgLevel}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| orgLevel | Yes | String | Level of the organization hierarchy. Valid values are COMPANY, CHAIN, AREA, REGION, DISTRICT. |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input Parameters for MerchIntegrations/services/foundation/orghier/{param1}/{param2}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| param1 | Yes | String | This is the organization hierarchy level. Valid values are COMPANY, CHAIN, AREA, REGION, DISTRICT. |
| param2 | Yes | String | This is the hierarchy ID. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Diff ID
Table 5-1084 PageResultsItemsMerchApiOrghier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1085 MerchApiOrghier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for organizational hierarchy details. |
| hierarchyLevel | No | String (10) | This feld contains the organizational hierarchy level. |
| hierarchyId | No | Number(10,0) | This feld contains the number that uniquely identifes the hierarchy value. |
| hierarchyName | No | String (120) | This feld contains the description of the hierarchy value. |
| managerName | No | String (120) | This feld contains the manager’s name. |
Table 5-1085 (Cont.) MerchApiOrghier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| currencyCode | No | String (3) | This feld contains the currency code for the hierarchy. |
| parentHierarchyId | No | Number(10,0) | This feld contains the identifer of the parent hierarchy value. |
| parentHierarchyLevel | No | String (10) | This feld contains the parent level of the current organizational hierarchy. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the organization hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1086 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"hierarchyId": 1,
"hierarchyName": "hierDesc",
"managerName": "mgrName",
"currencyCode": "USD",
"parentHierarchyId": 1,
"parentHierarchyLevel": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_CHAIN | Yes | No | Yes | Yes |
| ICL_RMS_COMPHEAD | Yes | No | Yes | Yes |
| ICL_RMS_AREA | Yes | No | Yes | Yes |
| ICL_RMS_REGION | Yes | No | Yes | Yes |
| ICL_RMS_DISTRICT | Yes | No | Yes | Yes |
| MERCHAPI_EXT_ORGHIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_ORGHIER _JSON | Yes | No | No | No |
Get Organizational Hierarchy
Endpoints
MerchIntegrations/services/foundation/orghier
MerchIntegrations/services/foundation/orghier/{orgLevel}
MerchIntegrations/services/foundation/orghier/{param1}/{param2}
Functional Area
Organizational Hierarchy
Business Overview
This service publishes organizational hierarchy master data to downstream consuming systems. It publishes the company, chain, area, region, and district nodes used to describe the organizational structure, together with hierarchy name, manager name, currency code, and parent-hierarchy linkage. Functionally, only the five organizational levels COMPANY, CHAIN, AREA, REGION, and DISTRICT are published; store and warehouse nodes are not part of this external API even though the broader org-hierarchy framework also uses those levels elsewhere.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: COMPHEAD, CHAIN, AREA, REGION, DISTRICT
Additional business tables: SYSTEM_OPTIONS, CODE_DETAIL
JSON cache table: MERCHAPI_EXT_ORGHIER
JSON generation view: V_MERCHAPI_EXT_ORGHIER_JSON
Builds the payload by unioning COMPHEAD, CHAIN, AREA, REGION, and DISTRICT, uses SYSTEM_OPTIONS to supply the company currency code, and uses CODE_DETAIL to translate internal hierarchy codes into the published hierarchy-level values and their numeric sequence order.
The view only publishes the five organizational levels COMPANY, CHAIN, AREA, REGION, and DISTRICT; store and warehouse nodes are not part of this external API even though the broader org-hierarchy framework also uses those levels elsewhere.
Initial refresh supports both truncate-and-load and rebuild behavior, and rebuild marks cache rows deleted when a hierarchy node no longer exists in V_MERCHAPI_EXT_ORGHIER_JSON.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_MERCHAPI_EXT_ORGHIER_JSON. No additional filter criteria were identified beyond the cache-build logic.
Mark cache rows deleted when the hierarchy node no longer exists in V_MERCHAPI_EXT_ORGHIER_JSON.
ICL (Integration Change Log) table: ICL_RMS_COMPHEAD, ICL_RMS_CHAIN, ICL_RMS_AREA, ICL_RMS_REGION, ICL_RMS_DISTRICT (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on COMPHEAD, CHAIN, AREA, REGION, DISTRICT.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_ORGHIER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_ORG_HIER_ADHOC_PROCESS → MERCHAPI_EXT_ORG_HIER_ADHOC_JOB
Webhook configuration api name: foundation/orghier
Special handling
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/orghier
MerchIntegrations/services/foundation/orghier/{orgLevel}
MerchIntegrations/services/foundation/orghier/{param1}/{param2}
Input Parameters for MerchIntegrations/services/foundation/orghier
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String (15) | Offset key ([level order],[hierarchy id] Example: 30,17) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1087 Input Parameter for “MerchIntegrations/services/foundation/orghier/ {orgLevel}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| orgLevel | Yes | String | Organization level - COMPANY or CHAIN or AREA or REGION or DISTRICT |
| offsetkey | No | String (15) | Offset key ([level order],[hierarchy id] Example: 30,17) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1088 Input Parameter for “MerchIntegrations/services/foundation/orghier/ {param1}/{param2}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| param1 | Yes | String | Organization level - COMPANY or CHAIN or AREA or REGION or DISTRICT |
| param2 | Yes | String (10) | Hirerachy Id |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
Table 5-1088 (Cont.) Input Parameter for “MerchIntegrations/services/foundation/ orghier/{param1}/{param2}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Input Parameters for MerchIntegrations/services/foundation/orghier/{orgLevel}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| orgLevel | Yes | String | Level of the organization hierarchy. Valid values are COMPANY, CHAIN, AREA, REGION, DISTRICT. |
| offsetkey | No | String | Offset Key. Valid Value is combination of sort_order_seq and node id. |
| limit | No | BigDecima l | Pagination limit. Default Value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Input Parameters for MerchIntegrations/services/foundation/orghier/{param1}/{param2}
| Parameter Name | Require d | Data Type | Description |
|---|---|---|---|
| param1 | Yes | String | This is the organization hierarchy level. Valid values are COMPANY, CHAIN, AREA, REGION, DISTRICT. |
| param2 | Yes | String | This is the hierarchy ID. |
| include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexA ttribute) |
Output - Diff ID
Table 5-1089 PageResultsItemsMerchApiOrghier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-1089 (Cont.) PageResultsItemsMerchApiOrghier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1090 MerchApiOrghier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for organizational hierarchy details. |
| hierarchyLevel | No | String (10) | This feld contains the organizational hierarchy level. |
| hierarchyId | No | Number(10,0) | This feld contains the number that uniquely identifes the hierarchy value. |
| hierarchyName | No | String (120) | This feld contains the description of the hierarchy value. |
| managerName | No | String (120) | This feld contains the manager’s name. |
| currencyCode | No | String (3) | This feld contains the currency code for the hierarchy. |
| parentHierarchyId | No | Number(10,0) | This feld contains the identifer of the parent hierarchy value. |
| parentHierarchyLevel | No | String (10) | This feld contains the parent level of the current organizational hierarchy. |
Table 5-1090 (Cont.) MerchApiOrghier - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the organization hierarchy record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1091 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"hierarchyLevel": null,
"hierarchyId": 1,
"hierarchyName": "hierDesc",
"managerName": "mgrName",
"currencyCode": "USD",
"parentHierarchyId": 1,
"parentHierarchyLevel": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_CHAIN | Yes | No | Yes | Yes |
| ICL_RMS_COMPHEAD | Yes | No | Yes | Yes |
| ICL_RMS_AREA | Yes | No | Yes | Yes |
| ICL_RMS_REGION | Yes | No | Yes | Yes |
| ICL_RMS_DISTRICT | Yes | No | Yes | Yes |
| MERCHAPI_EXT_ORGHIER | Yes | Yes | Yes | Yes |
| V_ MERCHAPI_EXT_ORGHIER _JSON | Yes | No | No | No |
Organizational Hierarchy Upload Service
The following services are included in this functional area:
-
Create Organizational Hierarchy
-
Delete Organizational Hierarchy
-
Update Organizational Hierarchy
Create Organizational Hierarchy
Functional Area
Organizational Hierarchy
Business Overview
If Merchandising is not the system of record for organizational hierarchy information for an implementation, then this service may be used to create hierarchy based on an external system.
The following organizational hierarchy elements can be created using this service: chain, area, region, or district. The organizational hierarchy must be created from the highest level down.
Service Type
POST
ReST URL
MerchIntegrations/services/organizationalHierarchy/create
Input Payload Details
Table 5-1092 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyValue | Yes | Number (10) | The ID of the specifed hierarchy level. This value must be unique among other values of the same hierarchy level. |
| hierarchyDescription | Yes | String (120) | The description of the hierarchy value. |
| hierarchyLevel | Yes | String (2) | The hierarchy level of the hierarchy value. This feld will indicate the level of the organizational hierarchy to which the cost change applies. Valid values are CH (chain), AR (area), RE (region), DI (district). |
| parentHierarchyId | No | Number (10) | The ID of the hierarchy value’s parent hierarchy value. This value must be predefned on either the CHAIN, AREA or REGION table. |
| managerName | No | String (120) | The manager name of the hierarchy value. |
| currencyCode | No | String (3) | The code which identifes the currency under which the hierarchy value operates. This value must be predefned on the CURRENCIES table. |
Sample Input Message
{
-
"hierarchyValue": 6, -
"hierarchyDescription": "6 South East", -
"hierarchyLevel": "AR", -
"parentHierarchyId": 3, -
"managerName": "McMillan",
"currencyCode": "USD"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Organizational Hierarchy
Functional Area
Organizational Hierarchy
Business Overview
If Merchandising is not the system of record for organizational hierarchy information for an implementation, then this service may be used to delete an existing hierarchy in Merchandising based on the request from an external system.
The following organizational hierarchy elements can be deleted using this service: chain, area, region, or district. The organizational hierarchy must be deleted from the lowest level up.
Service Type
DELETE
ReST URL
MerchIntegrations/services/organizationalHierarchy/delete
Input Payload Details
Table 5-1093 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyValue | Yes | Number (10) | The ID of the specifed hierarchy level. This value must be unique among other values of the same hierarchy level. |
| hierarchyLevel | Yes | String (2) | The hierarchy level of the hierarchy value. This feld will indicate the level of the organizational hierarchy to which the cost change applies. Valid values are CH (chain), AR (area), RE (region), DI (district). |
Sample Input Message
{
"hierarchyValue": 4,
"hierarchyLevel": "CH"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Organizational Hierarchy
Functional Area
Organizational Hierarchy
Business Overview
If Merchandising is not the system of record for organizational hierarchy information for an implementation, then this service may be used to update an existing hierarchy based on the request from an external system.
The following organizational hierarchy elements can be modified using this service: chain, area, region, or district.
Service Type
PUT
ReST URL
MerchIntegrations/services/organizationalHierarchy/update
Input Payload Details
Table 5-1094 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyValue | Yes | Number (10) | The ID of the specifed hierarchy level. This value must be unique among other values of the same hierarchy level. |
| hierarchyDescription | Yes | String (120) | The description of the hierarchy value. |
| hierarchyLevel | Yes | String (2) | The hierarchy level of the hierarchy value. This feld will indicate the level of the organizational hierarchy to which the cost change applies. Valid values are CH (chain), AR (area), RE (region), DI (district). |
| parentHierarchyId | No | Number (10) | The ID of the hierarchy value’s parent hierarchy value. This value must be predefned on either the CHAIN, AREA or REGION table. |
| managerName | No | String (120) | The manager name of the hierarchy value. |
| currencyCode | No | String (3) | The code which identifes the currency under which the hierarchy value operates. This value must be predefned on the CURRENCIES table. |
Sample Input Message
{
"hierarchyValue": 4,
"hierarchyDescription": "Chain 4 North America",
"hierarchyLevel": "CH",
"parentHierarchyId": 117516,
"managerName": "McCarthy",
"currencyCode": "USD"
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Stores
The following services are included in this functional area:
-
Store Download Service
-
Get Basic Store Details
-
Get Store Details
-
Get Store Details for Provided Store
-
-
Store Upload Service
-
Create Store
-
Create Store Address
-
Create Store Department Up Charges
-
Create Store Hours
-
Create Store Location Trait
-
Create Walk-Through Store
-
Delete Store
-
Delete Store Address
-
Delete Store Department Up Charges
-
Delete Store Hours
-
Delete Store Location Trait
-
Delete Walk-Through Store
-
Update Store
-
Update Store Address
-
Update Store Department Up Charges
-
Update Store Hours
-
Stores by Hierarchy Level Upload Service
-
Create Store Location Trait by Hierarchy Level
-
-
Delete Store Location Trait by Hierarchy Level
Store Download Service
The following services are included in this functional area:
-
Get Basic Store Details
-
Get Store Details
-
Get Store Details for Provided Store
Get Basic Store Details
This section describes the Store Detail service.
Business Overview
Store Detail service allows user to retrieve Store information for a selected store or for all stores.
Service Type
Get
ReST URL
Store/storeDetail?store={storeNumber}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Store | No | Store ID. If none is specified, all stores will be retrieved. |
Output
RestStoreRecRDO
| Parameter Name | Data Type |
|---|---|
| store | BigDecimal |
| storeName | String |
| storeName10 | String |
| storeName3 | String |
| storeNameSecondary | String |
| storeClass | String |
| storeOpenDate | Timestamp |
| storeCloseDate | Timestamp |
| acquiredDate | Timestamp |
| remodelDate | Timestamp |
| vatRegion | BigDecimal |
| vatIncludeInd | String |
| stockholdingInd | String |
| channelId | BigDecimal |
| transferZone | BigDecimal |
| defaultWh | BigDecimal |
| stopOrderDays | BigDecimal |
| startOrderDays | BigDecimal |
| currencyCode | String |
| lang | BigDecimal |
| dunsNumber | String |
| dunsLoc | String |
| sisterStore | BigDecimal |
| tsfEntityId | BigDecimal |
| orgUnitId | BigDecimal |
| storeType | String |
| wfCustomerId | BigDecimal |
| timezoneName | String |
| customerOrderLocInd | String |
| company | BigDecimal |
| chain | BigDecimal |
| area | BigDecimal |
| region | BigDecimal |
| district | BigDecimal |
| add1 | String |
| add2 | String |
| add3 | String |
| city | String |
| state | String |
| Parameter Name | Data Type |
|---|---|
| countryId | String |
| post | String |
| contactName | String |
| contactPhone | String |
| contactEmail | String |
JSON Structure
{
"store": null,
"storeName": null,
"storeName10": null,
"storeName3": null,
"storeNameSecondary": null,
"storeClass": null,
"storeOpenDate": null,
"storeCloseDate": null,
"acquiredDate": null,
"remodelDate": null,
"vatRegion": null,
"vatIncludeInd": null,
"stockholdingInd": null,
"channelId": null,
"transferZone": null,
"defaultWh": null,
"stopOrderDays": null,
"startOrderDays": null,
"currencyCode": null,
"lang": null,
"dunsNumber": null,
"dunsLoc": null,
"sisterStore": null,
"tsfEntityId": null,
"orgUnitId": null,
"storeType": null,
"wfCustomerId": null,
"timezoneName": null,
"customerOrderLocInd": null,
"company": null,
"chain": null,
"area": null,
"region": null,
"district": null,
"add1": null,
"add2": null,
"add3": null,
"city": null,
"state": null,
"countryId": null,
"post": null,
"contactName": null,
"contactPhone": null,
"contactEmail": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_STORE | Yes | No | No | No |
| STORE_HIERARCHY | Yes | No | No | No |
| ADDR | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Get Store Details
Endpoint
MerchIntegrations/services/foundation/store
MerchIntegrations/services/foundation/store/{storeId}
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service publishes store master data to downstream consuming systems. It publishes the store definition together with primary and additional addresses, store hours, store services, store conditions, and related descriptive attributes used to interpret the store record. There is no explicit filter in V_MERCHAPI_EXT_STORE_JSON, so all STORE rows are eligible for publication.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: STORE, ADDR
Additional business tables: ADD_TYPE_MODULE, V_ADD_TYPE_TL, STATE, COUNTRY, STORE_HOURS, STORE_SERVICE, STORE_CONDITION, CHANNELS, STORE_FORMAT, DISTRICT, TSFZONE, WH, LANG, CODE_DETAIL, STORE_CFA_EXT, ADDR_CFA_EXT
JSON cache table: MERCHAPI_EXT_STORE
JSON generation view: V_MERCHAPI_EXT_STORE_JSON
Builds the store header from STORE, derives the primary address from ADDR joined to ADD_TYPE_MODULE, V_ADD_TYPE_TL, STATE, and COUNTRY, aggregates all store addresses from ADDR, aggregates store hours from STORE_HOURS, store services from STORE_SERVICE, store conditions from STORE_CONDITION, and enriches descriptive values from CHANNELS, STORE_FORMAT, DISTRICT, TSFZONE, WH, LANG, and CODE_DETAIL.
Store- and address-level custom flex attributes are added from MERCHAPI_EXT_STORE_CFA and MERCHAPI_EXT_STORE_ADDR_CFA.
There is no explicit filter in V_MERCHAPI_EXT_STORE_JSON, so functionally all rows from STORE are eligible for publication.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_STORE_JSON and apply no additional filter criteria; all STORE rows are eligible for publication.
The current REBUILD branch merges changed and new rows only; it does not include a delete-marking pass for stores that disappear from V_MERCHAPI_EXT_STORE_JSON.
ICL (Integration Change Log) table: ICL_RMS_STORE and ICL_RMS_ADDR (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on STORE, and address changes are captured through ICL_RMS_ADDR for ADDR rows on modules ST and WFST.
ICL_RMS_ADDR rows are filtered to MODULE IN (‘ST’,‘WFST’) and republish the parent store payload.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_STORE
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_STORE_ADHOC_PROCESS → MERCHAPI_EXT_STORE_ADHOC_JOB
Webhook configuration api name: foundation/store
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/store
MerchIntegrations/services/foundation/store/{storeId}
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key (Store) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1095 Input Parameter for “MerchIntegrations/services/foundation/store/ {storeId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| storeId | Yes | Number | Store Id |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-1096 PageResultsItemsMerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
Table 5-1096 (Cont.) PageResultsItemsMerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1097 MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for store details. |
| store | No | Number(10,0) | This feld contains the number that uniquely identifes the store. |
| storeType | No | String (6) | This feld indicates whether a particular store is a franchise or company store. |
| storeName | No | String (150) | This feld contains the name of the store which, along with the store number, identifes the store. |
| storeName10 | No | String (10) | This feld contains a ten-character abbreviation of the store name. |
| storeName3 | No | String (3) | This feld contains a three-character abbreviation of the store name. |
| storeClass | No | String (1) | This feld contains the code letter indicating the class of which the store is a member. |
| storeClassDescription | No | String (250) | This feld contains the description indicating the class of which the store is a member. |
| managerName | No | String (120) | This feld contains the name of the store manager. |
Table 5-1097 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| openDate | No | date | This feld contains the date on which the store opened. |
| closeDate | No | date | This feld contains the date on which the store closed. |
| acquireDate | No | date | This feld contains the date on which the store was acquired. |
| remodelDate | No | date | This feld contains the date on which the store was last remodeled. |
| faxNumber | No | String (20) | This feld contains the fax number for the store. |
| phoneNumber | No | String (20) | This feld contains the phone number for the store. |
| No | String (100) | This feld contains the email address for the location. | |
| totalSquareFeet | No | Number(8,0) | This feld contains the total square footage of the store. |
| sellingSquareFeet | No | Number(8,0) | This feld contains the total square footage of the store’s selling area. |
| linearDistance | No | Number(8,0) | This feld contains the total merchandisable space of the location. |
| stockholdingInd | No | String (1) | This feld indicates whether the store can hold stock. |
| channelId | No | Number(4,0) | This feld contains the channel with which the store is associated. |
| channelName | No | String (120) | This feld contains the channel description with which the store is associated. |
| storeFormat | No | Number(4,0) | This feld contains the number indicating the format of the store. Valid values are found on the store format table. |
Table 5-1097 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| storeFormatName | No | String (60) | This feld contains the description for the format of the store. |
| mallName | No | String (120) | This feld contains the name of the mall in which the store is located. |
| district | No | Number(10,0) | This feld contains the number of the district in which the store is a member. |
| districtName | No | String (120) | This feld contains the name of the district in which the store is a member. |
| transferZone | No | Number(4,0) | This feld contains the transfer zone ID in which the store is located. |
| transferZoneDescripti on | No | String (120) | This feld contains the transfer zone description in which the store is located. |
| defaultWarehouse | No | Number(10,0) | This feld contains the number of the warehouse that is the primary sourcing warehouse for the store. |
| stopOrderdays | No | Number(3,0) | This feld contains the number of days before a store closing that the store will stop accepting orders. This column will be used when the store close date is defned. |
| startOrderDays | No | Number(3,0) | This feld contains the number of days before the store open date that the store will begin accepting orders. |
| currencyCode | No | String (3) | This feld contains the currency code under which the store operates. |
| language | No | String (6) | This feld contains the ISO code of the language to be used for the given store. |
Table 5-1097 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| integratedPosInd | No | String (1) | This feld indicates whether Sales Audit should expect fles from this store for processing. |
| dunsNumber | No | String (9) | This feld contains the Dun and Bradstreet number to identify the store. |
| dunsLocation | No | String (4) | This feld contains the Dun and Bradstreet number to identify the location. |
| pricingStore | No | Number(10,0) | This feld contains the location from which pricing records will be copied for a new store or will be used to determine the price for this store if not otherwise defned for an item. |
| timezoneName | No | String (64) | This feld contains the text value of the time zone of the store. |
| pricingStoreCurrency | No | String (3) | This feld contains the currency code of the location from which pricing records will be copied. |
| orgUnitId | No | Number(15,0) | This feld contains the organizational unit ID that this store is associated with. |
| storeNameSecondary | No | String (150) | This feld contains the secondary name of the store. |
| vatRegion | No | Number(4,0) | This feld contains the ID of the tax region the store is associated with. |
| vatIncludeInd | No | String (1) | This feld indicates whether tax will be included in the retail prices for the store. |
Table 5-1097 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| sisterStore | No | Number(10,0) | This feld contains the store number that will be used to relate the current store to the historical data of an existing store. This is used by Allocation. |
| trasferEntityId | No | Number(10,0) | This feld contains the transfer entity ID with which the store is associated. |
| autoReceiveInd | No | String (1) | This feld indicates whether receipts for the store will be made automatically by Merchandising. |
| remerchandisingInd | No | String (1) | This feld is currently not used. |
| franchiseCustomerId | No | Number(10,0) | This feld indicates which franchise customer this store is associated with. |
| customerOrderLocatio nInd | No | String (1) | This feld indicates whether the location is a customer order location. If the indicator is Y, then the location can be used for sourcing and fulfllment orders; else it cannot be used and inventory information will not be shared with OMS. |
| giftWrappingInd | No | String (1) | This feld indicates if the location will support gift wrapping. |
| customerOrderShippin gInd | No | String (1) | This feld indicates if the location will support shipping to a customer for customer orders. |
| onlineStoreInd | No | String (1) | This feld indicates that the store is an online store. |
| taxId | No | String (20) | This feld contains the unique tax identifcation number of the store. |
Table 5-1097 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddressType | No | String (2) | This feld specifes the type for the address. Valid values are: 01 - Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
| primaryAddressTypeD escription | No | String (40) | This feld specifes the address type description. |
| primaryAddressAdd1 | No | String (240) | This feld contains the frst line of the address. |
| primaryAddressAdd2 | No | String (240) | This feld contains the second line of the address. |
| primaryAddressAdd3 | No | String (240) | This feld contains the third line of the address. |
| primaryAddressCity | No | String (120) | This feld contains the name of the city that is associated with the address. |
| primaryAddressState | No | String (3) | This feld contains the state abbreviation for the address. |
| primaryAddressStateN ame | No | String (120) | This feld contains the state description for the address. |
| primaryAddressCount ryId | No | String (3) | This feld contains the country where the address exists. |
| primaryAddressCount ryName | No | String (120) | This feld contains the country description where the address exists. |
| primaryAddressPost | No | String (30) | This feld contains the zip code for the address. |
| primaryAddressContac tName | No | String (120) | This feld contains the name of the contact person at this address. |
| primaryAddressContac tPhone | No | String (20) | This feld contains the phone number of the contact person at this address. |
| primaryAddressContac tTelex | No | String (20) | This feld contains the telex number of the contact person at this address. |
Table 5-1097 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddressContac tFax | No | String (20) | This feld contains the fax number of the contact person at this address. |
| primaryAddressContac tEmail | No | String (100) | This feld contains the email address of the contact person at this address. |
| primaryAddressPhone 2 | No | String (20) | This feld contains an additional phone number associated with the primary address. |
| primaryAddressPhone 2Type | No | String (6) | This feld contains the type of the phone number stored in the primaryAddressPhone 2 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| primaryAddressPhone 3 | No | String (20) | This feld contains a second additional phone number associated with the primary address. |
| primaryAddressPhone 3Type | No | String (6) | This feld contains the type of the phone number stored in the primaryAddressPhone 3 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| primaryAddressLatitu de | No | String (30) | This feld contains the north-south geographic coordinate of the primary address, represented in decimal degrees. |
Table 5-1097 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddressLongit ude | No | String (30) | This feld contains the east-west geographic coordinate of the primary address, represented in decimal degrees. |
| primaryAddressOracle VendorSiteId | No | Number(15,0) | This feld contains the Oracle vendor site ID. |
| primaryAddressCount y | No | String (250) | This feld contains the county where the address exists. |
| primaryAddressJurisdi ctionCode | No | String (10) | This feld contains the ID associated with the tax jurisdiction of the country-state relationship. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the Store. |
| address | No | Collection of Object | This List holds all the Store addresses. |
| storeHours | No | Collection of Object | This List holds all the Store Hours attributes. |
| storeServices | No | Collection of Object | This List holds all the Store Services attributes. Each StoreService element contains the code representing the store service provided at the store and its creation datetime. |
| storeConditions | No | Collection of Object | This List holds all the Store Conditions attributes. |
| storeTranslations | No | Collection of Object | This List holds all the store translations, providing language- specifc store names and details. |
Table 5-1097 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the store record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1098 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1099 Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressKey | No | Number(11,0) | This feld contains the unique address key. |
| addressType | No | String (2) | This feld specifes the type for the address. Valid values are: 01 - Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
Table 5-1099 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressTypeDescriptio n | No | String (40) | This feld specifes the address type description. |
| primaryAddressInd | No | String (1) | This feld indicates whether the address is the primary address for the address type. |
| add1 | No | String (240) | This feld contains the frst line of the address. |
| add2 | No | String (240) | This feld contains the second line of the address. |
| add3 | No | String (240) | This feld contains the third line of the address. |
| city | No | String (120) | This feld contains the name of the city that is associated with the address. |
| state | No | String (3) | This feld contains the state abbreviation that is associated with the address. |
| stateName | No | String (120) | This feld contains the state description that is associated with the address. |
| countryId | No | String (3) | This feld contains the country where the address exists. |
| countryName | No | String (120) | This feld contains the country description that is associated with the address. |
| post | No | String (30) | This feld contains the zip code for the address. |
| contactName | No | String (120) | This feld contains the name of the contact person at this address. |
| contactPhone | No | String (20) | This feld contains the phone number of the contact person at this address. |
| contactTelex | No | String (20) | This feld contains the telex number of the contact person at this address. |
Table 5-1099 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| contactFax | No | String (20) | This feld contains the fax number of the contact person at this address. |
| contactEmail | No | String (100) | This feld contains the email address of the contact person at this address. |
| phone2Type | No | String (6) | This feld contains the type of the phone number stored in the phone2 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| phone2 | No | String (20) | This feld contains an additional phone number associated with the address. |
| phone3Type | No | String (6) | This feld contains the type of the phone number stored in the phone3 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| phone3 | No | String (20) | This feld contains a second additional phone number associated with the address. |
| latitude | No | String (30) | This feld contains the north-south geographic coordinate of the address, represented in decimal degrees. |
Table 5-1099 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| longitude | No | String (30) | This feld contains the east-west geographic coordinate of the address, represented in decimal degrees. |
| county | No | String (250) | This feld contains the county where the address exists. |
| jurisdictionCode | No | String (10) | This feld contains the ID associated with the tax jurisdiction of the country-state relationship. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the warehouse’s address. |
Table 5-1100 StoreHours - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dayNo | No | Number(1,0) | This feld contains the numeric value that indicates the day that the open and close times pertain to. Valid values are 1-Sunday, 2- Monday, 3-Tuesday, 4- Wednesday, 5- Thursday, 6-Friday, or 7-Saturday. |
| storeOpenTime | No | String (8) | This feld contains the open time for the store for each day of the week. The time format will be in HH:MM AM or HH:MM PM. |
| storeCloseTime | No | String (8) | This feld contains the close time for the store for each day of the week. The time format will be in HH:MM AM or HH:MM PM. |
Table 5-1100 (Cont.) StoreHours - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
Table 5-1101 StoreService - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| storeService | No | String (6) | This feld contains the code representing the store service provided at the store. |
| createDateTime | No | dateTime | This feld holds the record creation date and time of the store service (UTC). |
Table 5-1102 StoreConditions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| conditionType | No | String (6) | This feld holds the condition type confgured under code type SCND with the used indicator set to Y. |
| startDate | No | date | This feld holds the start date of the condition. |
| endDate | No | date | This feld holds the end date of the condition. |
| comments | No | String (250) | This feld holds the extra information about the condition setup. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
Table 5-1103 StoreTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| languageCode | No | String | The short code for the language (e.g. EN, FR). |
| languageName | No | String | The name of the language (e.g. English, French). |
| isoCode | No | String | The ISO code for the language (e.g. en_US, fr_FR). |
| storeName | No | String | The store name in this language. |
| storeNameSecondary | No | String | The secondary store name in this language. |
| createDateTime | No | String | Record creation datetime for this translation. |
| updateDateTime | No | String | Datetime this translation was last updated. |
Table 5-1104 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"store": 6000,
"storeType": null,
"storeName": "storeName",
"storeName10": null,
"storeName3": null,
"storeClass": null,
"storeClassDescription": null,
"managerName": "storeMgrName",
"openDate": "2001-12-31",
"closeDate": "2001-12-31",
"acquireDate": "2001-12-31",
"remodelDate": "2001-12-31",
"faxNumber": null,
"phoneNumber": "1800800800",
"email": "someone@email.com",
"totalSquareFeet": 1,
"sellingSquareFeet": 1,
"linearDistance": 1,
"stockholdingInd": "Y",
"channelId": 1,
"channelName": null,
"storeFormat": 1,
"storeFormatName": null,
"mallName": "mallName",
"district": 1,
"districtName": null,
"transferZone": 1,
"transferZoneDescription": null,
"defaultWarehouse": 1,
"stopOrderdays": 1,
"startOrderDays": 1,
"currencyCode": "USD",
"language": null,
"integratedPosInd": "Y",
"dunsNumber": null,
"dunsLocation": null,
"pricingStore": 1,
"timezoneName": "timezoneName",
"pricingStoreCurrency": null,
"orgUnitId": 1,
"storeNameSecondary": "storeNameSecondary",
"vatRegion": 1,
"vatIncludeInd": "Y",
"sisterStore": 1,
"trasferEntityId": 1,
"autoReceiveInd": null,
"remerchandisingInd": null,
"franchiseCustomerId": 1,
"customerOrderLocationInd": "Y",
"giftWrappingInd": "Y",
"customerOrderShippingInd": "Y",
"onlineStoreInd": "Y",
"taxId": null,
"primaryAddressType": "01",
"primaryAddressTypeDescription": null,
"primaryAddressAdd1": "101 First Street",
"primaryAddressAdd2": "201 Second Street",
"primaryAddressAdd3": null,
"primaryAddressCity": "Minneapolis",
"primaryAddressState": "MN",
"primaryAddressStateName": "stateName",
"primaryAddressCountryId": "US",
"primaryAddressCountryName": "countryName",
"primaryAddressPost": "55555-1234",
"primaryAddressContactName": "contactName",
"primaryAddressContactPhone": "1800800800",
"primaryAddressContactTelex": null,
"primaryAddressContactFax": "617-897-0902",
"primaryAddressContactEmail": "someone@email.com",
"primaryAddressPhone2": "5551234567",
"primaryAddressPhone2Type": "WO",
"primaryAddressPhone3": "5551234567",
"primaryAddressPhone3Type": "WO",
"primaryAddressLatitude": "44.38129",
"primaryAddressLongitude": "-92.03521",
"primaryAddressOracleVendorSiteId": 1,
"primaryAddressCounty": "Some County",
"primaryAddressJurisdictionCode": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"address": [
{
"addressKey": 114772,
"addressType": "01",
"addressTypeDescription": null,
"primaryAddressInd": "Y",
"add1": "101 First Street",
"add2": "201 Second Street",
"add3": null,
"city": "Minneapolis",
"state": "MN",
"stateName": "MN",
"countryId": "US",
"countryName": "US",
"post": "55555-1234",
"contactName": "Laura Johnson",
"contactPhone": "1800800800",
"contactTelex": null,
"contactFax": "617-897-0902",
"contactEmail": "someone@email.com",
"phone2Type": "WO",
"phone2": "5551234567",
"phone3Type": "WO",
"phone3": "5551234567",
"latitude": "44.38129",
"longitude": "-92.03521",
"county": null,
"jurisdictionCode": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"storeHours": [
{
"dayNo": 1,
"storeOpenTime": null,
"storeCloseTime": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"storeServices": [
{
"storeService": null,
"createDateTime": "2001-12-31T23:59:59.000Z"
}
],
"storeConditions": [
{
"conditionType": null,
"startDate": "2001-12-31",
"endDate": "2001-12-31",
"comments": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"storeTranslations": [
{
"languageCode": "String",
"languageName": "String",
"isoCode": "String",
"storeName": "String",
"storeNameSecondary": "String",
"createDateTime": "String",
"updateDateTime": "String"
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | Yes | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_STORE | Yes | No | Yes | Yes |
| ICL_RMS_ADDR | Yes | No | Yes | Yes |
| ADDR | Yes | No | No | No |
| STORE_CFA_EXT | Yes | No | No | No |
| ADDR_CFA_EXT CFA | Yes | No | No | No |
| MERCHAPI_EXT_STORE_CFA | No | Yes | No | Yes |
| MERCHAPI_EXT_STORE_ADDR_CFA | No | Yes | No | Yes |
| MERCHAPI_EXT_STORE | Yes | Yes | Yes | Yes |
| V_MERCHAPI_EXT_STORE_JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
Get Store Details for Provided Store
Endpoint
MerchIntegrations/services/foundation/store
MerchIntegrations/services/foundation/store/{storeId}
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service publishes store master data to downstream consuming systems. It publishes the store definition together with primary and additional addresses, store hours, store services, store conditions, and related descriptive attributes used to interpret the store record. There is no explicit filter in V_MERCHAPI_EXT_STORE_JSON, so all STORE rows are eligible for publication.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: STORE, ADDR
Additional business tables: ADD_TYPE_MODULE, V_ADD_TYPE_TL, STATE, COUNTRY, STORE_HOURS, STORE_SERVICE, STORE_CONDITION, CHANNELS, STORE_FORMAT, DISTRICT, TSFZONE, WH, LANG, CODE_DETAIL, STORE_CFA_EXT, ADDR_CFA_EXT
JSON cache table: MERCHAPI_EXT_STORE
JSON generation view: V_MERCHAPI_EXT_STORE_JSON
Builds the store header from STORE, derives the primary address from ADDR joined to ADD_TYPE_MODULE, V_ADD_TYPE_TL, STATE, and COUNTRY, aggregates all store addresses from ADDR, aggregates store hours from STORE_HOURS, store services from STORE_SERVICE, store conditions from STORE_CONDITION, and enriches descriptive values from CHANNELS, STORE_FORMAT, DISTRICT, TSFZONE, WH, LANG, and CODE_DETAIL.
Store- and address-level custom flex attributes are added from MERCHAPI_EXT_STORE_CFA and MERCHAPI_EXT_STORE_ADDR_CFA.
There is no explicit filter in V_MERCHAPI_EXT_STORE_JSON, so functionally all rows from STORE are eligible for publication.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_STORE_JSON and apply no additional filter criteria; all STORE rows are eligible for publication.
The current REBUILD branch merges changed and new rows only; it does not include a delete-marking pass for stores that disappear from V_MERCHAPI_EXT_STORE_JSON.
ICL (Integration Change Log) table: ICL_RMS_STORE and ICL_RMS_ADDR (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on STORE, and address changes are captured through ICL_RMS_ADDR for ADDR rows on modules ST and WFST.
ICL_RMS_ADDR rows are filtered to MODULE IN (‘ST’,‘WFST’) and republish the parent store payload.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_STORE
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_STORE_ADHOC_PROCESS → MERCHAPI_EXT_STORE_ADHOC_JOB
Webhook configuration api name: foundation/store
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/store
MerchIntegrations/services/foundation/store/{storeId}
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key (Store) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1105 Input Parameter for “MerchIntegrations/services/foundation/store/ {storeId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| storeId | Yes | Number | Store Id |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-1106 PageResultsItemsMerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
Table 5-1106 (Cont.) PageResultsItemsMerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1107 MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for store details. |
| store | No | Number(10,0) | This feld contains the number that uniquely identifes the store. |
| storeType | No | String (6) | This feld indicates whether a particular store is a franchise or company store. |
| storeName | No | String (150) | This feld contains the name of the store which, along with the store number, identifes the store. |
| storeName10 | No | String (10) | This feld contains a ten-character abbreviation of the store name. |
| storeName3 | No | String (3) | This feld contains a three-character abbreviation of the store name. |
| storeClass | No | String (1) | This feld contains the code letter indicating the class of which the store is a member. |
| storeClassDescription | No | String (250) | This feld contains the description indicating the class of which the store is a member. |
| managerName | No | String (120) | This feld contains the name of the store manager. |
Table 5-1107 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| openDate | No | date | This feld contains the date on which the store opened. |
| closeDate | No | date | This feld contains the date on which the store closed. |
| acquireDate | No | date | This feld contains the date on which the store was acquired. |
| remodelDate | No | date | This feld contains the date on which the store was last remodeled. |
| faxNumber | No | String (20) | This feld contains the fax number for the store. |
| phoneNumber | No | String (20) | This feld contains the phone number for the store. |
| No | String (100) | This feld contains the email address for the location. | |
| totalSquareFeet | No | Number(8,0) | This feld contains the total square footage of the store. |
| sellingSquareFeet | No | Number(8,0) | This feld contains the total square footage of the store’s selling area. |
| linearDistance | No | Number(8,0) | This feld contains the total merchandisable space of the location. |
| stockholdingInd | No | String (1) | This feld indicates whether the store can hold stock. |
| channelId | No | Number(4,0) | This feld contains the channel with which the store is associated. |
| channelName | No | String (120) | This feld contains the channel description with which the store is associated. |
| storeFormat | No | Number(4,0) | This feld contains the number indicating the format of the store. Valid values are found on the store format table. |
Table 5-1107 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| storeFormatName | No | String (60) | This feld contains the description for the format of the store. |
| mallName | No | String (120) | This feld contains the name of the mall in which the store is located. |
| district | No | Number(10,0) | This feld contains the number of the district in which the store is a member. |
| districtName | No | String (120) | This feld contains the name of the district in which the store is a member. |
| transferZone | No | Number(4,0) | This feld contains the transfer zone ID in which the store is located. |
| transferZoneDescripti on | No | String (120) | This feld contains the transfer zone description in which the store is located. |
| defaultWarehouse | No | Number(10,0) | This feld contains the number of the warehouse that is the primary sourcing warehouse for the store. |
| stopOrderdays | No | Number(3,0) | This feld contains the number of days before a store closing that the store will stop accepting orders. This column will be used when the store close date is defned. |
| startOrderDays | No | Number(3,0) | This feld contains the number of days before the store open date that the store will begin accepting orders. |
| currencyCode | No | String (3) | This feld contains the currency code under which the store operates. |
| language | No | String (6) | This feld contains the ISO code of the language to be used for the given store. |
Table 5-1107 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| integratedPosInd | No | String (1) | This feld indicates whether Sales Audit should expect fles from this store for processing. |
| dunsNumber | No | String (9) | This feld contains the Dun and Bradstreet number to identify the store. |
| dunsLocation | No | String (4) | This feld contains the Dun and Bradstreet number to identify the location. |
| pricingStore | No | Number(10,0) | This feld contains the location from which pricing records will be copied for a new store or will be used to determine the price for this store if not otherwise defned for an item. |
| timezoneName | No | String (64) | This feld contains the text value of the time zone of the store. |
| pricingStoreCurrency | No | String (3) | This feld contains the currency code of the location from which pricing records will be copied. |
| orgUnitId | No | Number(15,0) | This feld contains the organizational unit ID that this store is associated with. |
| storeNameSecondary | No | String (150) | This feld contains the secondary name of the store. |
| vatRegion | No | Number(4,0) | This feld contains the ID of the tax region the store is associated with. |
| vatIncludeInd | No | String (1) | This feld indicates whether tax will be included in the retail prices for the store. |
Table 5-1107 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| sisterStore | No | Number(10,0) | This feld contains the store number that will be used to relate the current store to the historical data of an existing store. This is used by Allocation. |
| trasferEntityId | No | Number(10,0) | This feld contains the transfer entity ID with which the store is associated. |
| autoReceiveInd | No | String (1) | This feld indicates whether receipts for the store will be made automatically by Merchandising. |
| remerchandisingInd | No | String (1) | This feld is currently not used. |
| franchiseCustomerId | No | Number(10,0) | This feld indicates which franchise customer this store is associated with. |
| customerOrderLocatio nInd | No | String (1) | This feld indicates whether the location is a customer order location. If the indicator is Y, then the location can be used for sourcing and fulfllment orders; else it cannot be used and inventory information will not be shared with OMS. |
| giftWrappingInd | No | String (1) | This feld indicates if the location will support gift wrapping. |
| customerOrderShippin gInd | No | String (1) | This feld indicates if the location will support shipping to a customer for customer orders. |
| onlineStoreInd | No | String (1) | This feld indicates that the store is an online store. |
| taxId | No | String (20) | This feld contains the unique tax identifcation number of the store. |
Table 5-1107 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddressType | No | String (2) | This feld specifes the type for the address. Valid values are: 01 - Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
| primaryAddressTypeD escription | No | String (40) | This feld specifes the address type description. |
| primaryAddressAdd1 | No | String (240) | This feld contains the frst line of the address. |
| primaryAddressAdd2 | No | String (240) | This feld contains the second line of the address. |
| primaryAddressAdd3 | No | String (240) | This feld contains the third line of the address. |
| primaryAddressCity | No | String (120) | This feld contains the name of the city that is associated with the address. |
| primaryAddressState | No | String (3) | This feld contains the state abbreviation for the address. |
| primaryAddressStateN ame | No | String (120) | This feld contains the state description for the address. |
| primaryAddressCount ryId | No | String (3) | This feld contains the country where the address exists. |
| primaryAddressCount ryName | No | String (120) | This feld contains the country description where the address exists. |
| primaryAddressPost | No | String (30) | This feld contains the zip code for the address. |
| primaryAddressContac tName | No | String (120) | This feld contains the name of the contact person at this address. |
| primaryAddressContac tPhone | No | String (20) | This feld contains the phone number of the contact person at this address. |
| primaryAddressContac tTelex | No | String (20) | This feld contains the telex number of the contact person at this address. |
Table 5-1107 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddressContac tFax | No | String (20) | This feld contains the fax number of the contact person at this address. |
| primaryAddressContac tEmail | No | String (100) | This feld contains the email address of the contact person at this address. |
| primaryAddressPhone 2 | No | String (20) | This feld contains an additional phone number associated with the primary address. |
| primaryAddressPhone 2Type | No | String (6) | This feld contains the type of the phone number stored in the primaryAddressPhone 2 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| primaryAddressPhone 3 | No | String (20) | This feld contains a second additional phone number associated with the primary address. |
| primaryAddressPhone 3Type | No | String (6) | This feld contains the type of the phone number stored in the primaryAddressPhone 3 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| primaryAddressLatitu de | No | String (30) | This feld contains the north-south geographic coordinate of the primary address, represented in decimal degrees. |
Table 5-1107 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddressLongit ude | No | String (30) | This feld contains the east-west geographic coordinate of the primary address, represented in decimal degrees. |
| primaryAddressOracle VendorSiteId | No | Number(15,0) | This feld contains the Oracle vendor site ID. |
| primaryAddressCount y | No | String (250) | This feld contains the county where the address exists. |
| primaryAddressJurisdi ctionCode | No | String (10) | This feld contains the ID associated with the tax jurisdiction of the country-state relationship. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the Store. |
| address | No | Collection of Object | This List holds all the Store addresses. |
| storeHours | No | Collection of Object | This List holds all the Store Hours attributes. |
| storeServices | No | Collection of Object | This List holds all the Store Services attributes. Each StoreService element contains the code representing the store service provided at the store and its creation datetime. |
| storeConditions | No | Collection of Object | This List holds all the Store Conditions attributes. |
| storeTranslations | No | Collection of Object | This List holds all the store translations, providing language- specifc store names and details. |
Table 5-1107 (Cont.) MerchApiStore - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the store record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1108 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1109 Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressKey | No | Number(11,0) | This feld contains the unique address key. |
| addressType | No | String (2) | This feld specifes the type for the address. Valid values are: 01 - Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
Table 5-1109 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressTypeDescriptio n | No | String (40) | This feld specifes the address type description. |
| primaryAddressInd | No | String (1) | This feld indicates whether the address is the primary address for the address type. |
| add1 | No | String (240) | This feld contains the frst line of the address. |
| add2 | No | String (240) | This feld contains the second line of the address. |
| add3 | No | String (240) | This feld contains the third line of the address. |
| city | No | String (120) | This feld contains the name of the city that is associated with the address. |
| state | No | String (3) | This feld contains the state abbreviation that is associated with the address. |
| stateName | No | String (120) | This feld contains the state description that is associated with the address. |
| countryId | No | String (3) | This feld contains the country where the address exists. |
| countryName | No | String (120) | This feld contains the country description that is associated with the address. |
| post | No | String (30) | This feld contains the zip code for the address. |
| contactName | No | String (120) | This feld contains the name of the contact person at this address. |
| contactPhone | No | String (20) | This feld contains the phone number of the contact person at this address. |
| contactTelex | No | String (20) | This feld contains the telex number of the contact person at this address. |
Table 5-1109 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| contactFax | No | String (20) | This feld contains the fax number of the contact person at this address. |
| contactEmail | No | String (100) | This feld contains the email address of the contact person at this address. |
| phone2Type | No | String (6) | This feld contains the type of the phone number stored in the phone2 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| phone2 | No | String (20) | This feld contains an additional phone number associated with the address. |
| phone3Type | No | String (6) | This feld contains the type of the phone number stored in the phone3 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| phone3 | No | String (20) | This feld contains a second additional phone number associated with the address. |
| latitude | No | String (30) | This feld contains the north-south geographic coordinate of the address, represented in decimal degrees. |
Table 5-1109 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| longitude | No | String (30) | This feld contains the east-west geographic coordinate of the address, represented in decimal degrees. |
| county | No | String (250) | This feld contains the county where the address exists. |
| jurisdictionCode | No | String (10) | This feld contains the ID associated with the tax jurisdiction of the country-state relationship. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the warehouse’s address. |
Table 5-1110 StoreHours - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dayNo | No | Number(1,0) | This feld contains the numeric value that indicates the day that the open and close times pertain to. Valid values are 1-Sunday, 2- Monday, 3-Tuesday, 4- Wednesday, 5- Thursday, 6-Friday, or 7-Saturday. |
| storeOpenTime | No | String (8) | This feld contains the open time for the store for each day of the week. The time format will be in HH:MM AM or HH:MM PM. |
| storeCloseTime | No | String (8) | This feld contains the close time for the store for each day of the week. The time format will be in HH:MM AM or HH:MM PM. |
Table 5-1110 (Cont.) StoreHours - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
Table 5-1111 StoreService - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| storeService | No | String (6) | This feld contains the code representing the store service provided at the store. |
| createDateTime | No | dateTime | This feld holds the record creation date and time of the store service (UTC). |
Table 5-1112 StoreConditions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| conditionType | No | String (6) | This feld holds the condition type confgured under code type SCND with the used indicator set to Y. |
| startDate | No | date | This feld holds the start date of the condition. |
| endDate | No | date | This feld holds the end date of the condition. |
| comments | No | String (250) | This feld holds the extra information about the condition setup. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
Table 5-1113 StoreTranslation - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| languageCode | No | String | The short code for the language (e.g. EN, FR). |
| languageName | No | String | The name of the language (e.g. English, French). |
| isoCode | No | String | The ISO code for the language (e.g. en_US, fr_FR). |
| storeName | No | String | The store name in this language. |
| storeNameSecondary | No | String | The secondary store name in this language. |
| createDateTime | No | String | Record creation datetime for this translation. |
| updateDateTime | No | String | Datetime this translation was last updated. |
Table 5-1114 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"store": 6000,
"storeType": null,
"storeName": "storeName",
"storeName10": null,
"storeName3": null,
"storeClass": null,
"storeClassDescription": null,
"managerName": "storeMgrName",
"openDate": "2001-12-31",
"closeDate": "2001-12-31",
"acquireDate": "2001-12-31",
"remodelDate": "2001-12-31",
"faxNumber": null,
"phoneNumber": "1800800800",
"email": "someone@email.com",
"totalSquareFeet": 1,
"sellingSquareFeet": 1,
"linearDistance": 1,
"stockholdingInd": "Y",
"channelId": 1,
"channelName": null,
"storeFormat": 1,
"storeFormatName": null,
"mallName": "mallName",
"district": 1,
"districtName": null,
"transferZone": 1,
"transferZoneDescription": null,
"defaultWarehouse": 1,
"stopOrderdays": 1,
"startOrderDays": 1,
"currencyCode": "USD",
"language": null,
"integratedPosInd": "Y",
"dunsNumber": null,
"dunsLocation": null,
"pricingStore": 1,
"timezoneName": "timezoneName",
"pricingStoreCurrency": null,
"orgUnitId": 1,
"storeNameSecondary": "storeNameSecondary",
"vatRegion": 1,
"vatIncludeInd": "Y",
"sisterStore": 1,
"trasferEntityId": 1,
"autoReceiveInd": null,
"remerchandisingInd": null,
"franchiseCustomerId": 1,
"customerOrderLocationInd": "Y",
"giftWrappingInd": "Y",
"customerOrderShippingInd": "Y",
"onlineStoreInd": "Y",
"taxId": null,
"primaryAddressType": "01",
"primaryAddressTypeDescription": null,
"primaryAddressAdd1": "101 First Street",
"primaryAddressAdd2": "201 Second Street",
"primaryAddressAdd3": null,
"primaryAddressCity": "Minneapolis",
"primaryAddressState": "MN",
"primaryAddressStateName": "stateName",
"primaryAddressCountryId": "US",
"primaryAddressCountryName": "countryName",
"primaryAddressPost": "55555-1234",
"primaryAddressContactName": "contactName",
"primaryAddressContactPhone": "1800800800",
"primaryAddressContactTelex": null,
"primaryAddressContactFax": "617-897-0902",
"primaryAddressContactEmail": "someone@email.com",
"primaryAddressPhone2": "5551234567",
"primaryAddressPhone2Type": "WO",
"primaryAddressPhone3": "5551234567",
"primaryAddressPhone3Type": "WO",
"primaryAddressLatitude": "44.38129",
"primaryAddressLongitude": "-92.03521",
"primaryAddressOracleVendorSiteId": 1,
"primaryAddressCounty": "Some County",
"primaryAddressJurisdictionCode": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"address": [
{
"addressKey": 114772,
"addressType": "01",
"addressTypeDescription": null,
"primaryAddressInd": "Y",
"add1": "101 First Street",
"add2": "201 Second Street",
"add3": null,
"city": "Minneapolis",
"state": "MN",
"stateName": "MN",
"countryId": "US",
"countryName": "US",
"post": "55555-1234",
"contactName": "Laura Johnson",
"contactPhone": "1800800800",
"contactTelex": null,
"contactFax": "617-897-0902",
"contactEmail": "someone@email.com",
"phone2Type": "WO",
"phone2": "5551234567",
"phone3Type": "WO",
"phone3": "5551234567",
"latitude": "44.38129",
"longitude": "-92.03521",
"county": null,
"jurisdictionCode": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"storeHours": [
{
"dayNo": 1,
"storeOpenTime": null,
"storeCloseTime": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"storeServices": [
{
"storeService": null,
"createDateTime": "2001-12-31T23:59:59.000Z"
}
],
"storeConditions": [
{
"conditionType": null,
"startDate": "2001-12-31",
"endDate": "2001-12-31",
"comments": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"storeTranslations": [
{
"languageCode": "String",
"languageName": "String",
"isoCode": "String",
"storeName": "String",
"storeNameSecondary": "String",
"createDateTime": "String",
"updateDateTime": "String"
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | Yes | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ICL_RMS_STORE | Yes | No | Yes | Yes |
| ICL_RMS_ADDR | Yes | No | Yes | Yes |
| ADDR | Yes | No | No | No |
| STORE_CFA_EXT | Yes | No | No | No |
| ADDR_CFA_EXT CFA | Yes | No | No | No |
| MERCHAPI_EXT_STORE_CFA | No | Yes | No | Yes |
| MERCHAPI_EXT_STORE_ADDR_CFA | No | Yes | No | Yes |
| MERCHAPI_EXT_STORE | Yes | Yes | Yes | Yes |
| V_MERCHAPI_EXT_STORE_JSON | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
Store Upload Service
The following services are included in this functional area:
-
Create Store
-
Create Store Address
-
Create Store Department Up Charges
-
Create Store Hours
-
Create Store Location Trait
-
Create Walk-Through Store
-
Delete Store
-
Delete Store Address
-
Delete Store Department Up Charges
-
Delete Store Hours
-
Delete Store Location Trait
-
Delete Walk-Through Store
-
Update Store
-
Update Store Address
-
Update Store Department Up Charges
-
Update Store Hours
Create Store
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service provides the ability to keep store data in Merchandising in sync with an external system if Merchandising is not being used as the system of record for organizational hierarchy information. The store data handled by this service includes basic store data in addition to addresses, store hours, up-charges.
Location traits and walkthrough store attributes cannot be attached while creating a store. The store create batch must first process the store before it can have these attributes attached to it. Up-charges, store hours, and addresses can be included for new stores.
The store creation also supports the ability to import custom flex attributes from an external system
When creating a new store in Merchandising via this service, the data is first validated, and then the service will create store in an asynchronous mode.
Service Type
POST
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/create
Input Payload Details
Table 5-1115 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The unique identifer of the store. |
| storeName | Yes | String (150) | The name of the store. |
| storeType | No | String (1) | The one character abbreviation of the store type. |
| storeNameSecondary | No | String (150) | Secondary name of the store. This feld can only be populated when system_options. secondary_desc_ind = Y. |
| channelId | No | Number (4) | The identifer of the channel. This value must be predefned on the CHANNELS table. In a multichannel environment this feld is required. |
Table 5-1115 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| district | Yes | Number (10) | The number of the district of which the store is a member. This value must be predefned on the DISTRICT table. |
| transferZone | No | Number (4) | The transfer zone in which the store is located. This value must be predefned on the TSFZONE table. |
| defaultWarehouse | No | Number (10) | This feld contains the default warehouse for the store. This value must be a virtual warehouse predefned on the WH table. |
| currencyCode | Yes | String (3) | The code of the currency under which the store operates. This value must be predefned on the CURRENCIES table. It cannot be modifed. |
| orgUnitId | No | Number (15) | Column will contain the organizational unit ID value. |
| stockholdingInd | Yes | String (1) | Indicates if the store can hold stock. This feld cannot be modifed. |
| customerOrderLocatio nInd | No | String (1) | Customer order location indicator. This feld can have Y or N. |
| customerOrderShippin gInd | No | String (1) | This feld indicates wheather the customer order has been been shipped from Warehouse or not. |
| giftWrappingInd | No | String (1) | This feld indicates weathere a gift wrapping needs to be done or not. |
| onlineStoreInd | No | String (1) | This feld indicates how store day will be managed by ReSA. If the indicator is Y then ReSA will automatically open and close the store day. |
Table 5-1115 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| storeName10 | No | String (10) | The ten character abbreviation of the store name. |
| storeName3 | No | String (3) | The three character abbreviation of the store name. |
| storeClass | Yes | String (1) | The code of the class of which the store is a member. |
| storeManagerName | Yes | String (120) | The name of the store manager. |
| storeOpenDate | Yes | date | The date on which the store opened. |
| storeCloseDate | No | date | The date on which the store closed. |
| acquiredDate | No | date | The date on which the store was acquired. |
| remodelDate | No | date | The date on which the store was remodeled. |
| faxNo | No | String (20) | Contains the fax number for the store. |
| phoneNo | No | String (20) | This type can hold a number of digits count number. |
| No | String (100) | The email address of the store. | |
| totalSquareFeet | No | Number (8) | The total square footage of the store. |
| sellingSquareFeet | No | Number (8) | The total square footage of the store’s selling area. |
| linearDistance | No | Number (8) | The total merchandise space of the store. |
| storeFormat | No | Number (4) | The code of the store format of the store. This value must be predefned on the STORE_FORMAT table. |
| mallName | No | String (120) | The name of the mall in which the store is located. |
| stopOrderDays | No | Number (3) | The number of days before the store close date that the store will stop accepting orders. |
Table 5-1115 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| startOrderDays | Yes | Number (3) | The number of days before the store open date that the store will begin accepting orders. |
| language | No | Number (6) | The code of the language used at the store. This value must be predefned on the LANG table. |
| isoCode | No | String (6) | The character code corresponding to the Language used at the store |
| integratedPosInd | Yes | String (1) | Indicates whether the store’s POS is integrated. |
| dunsNumber | No | String (9) | Holds the Dun and Bradsteet (DUNS) number |
| dunsLocation | No | String (4) | The Dun and Bradstreet number to identify the location. |
| copyDeliveryInd | No | String (1) | Indicates if the like store’s delivery schedule information should be copied to the new store. This value cannot be modifed. It will only be populated on a store create message. |
| copyActivityInd | No | String (1) | Indicates if the like store’s closing date schedule should be copied to the new store. This value cannot be modifed. It will only be populated on a store create message. |
Table 5-1115 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| priceStore | No | Number (10) | The store from which pricing information will be copied to the new store. The pricing store does not need the same currency as the new store. This value is not required on a create message and should not be populated on a modify message. |
| costLocation | No | Number (10) | The location from which to copy cost information to the new store. This feld should only be populated on store create messages. This value must be predefned on the WH or STORE table. This value cannot be modifed. |
| vatIncludeInd | No | String (1) | Indicates whether retail prices for the store will contain VAT. |
| vatRegion | No | Number (4) | The vat region of which the store is a part. This value must be predefned on the VAT_REGION table. It is required if VAT is on in the system. |
| likeStore | No | Number (10) | The store from which the new store will have item locations copied. This value must be predefned on the STORE table. It cannot be modifed and will only be populated on a create message. |
| copyReplenishmentIn d | No | String (1) | Indicates whether replenishment information should be copied from the like store to the new store. This feld cannot be modifed. It will only be populated on a store create message. |
Table 5-1115 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferEntity | Yes | Number (10) | The transfer entity of which the store is a part. This value must be predefned on the TSF_ENTITY table. If the system allows intercompany transfers this feld is required. |
| sisterStore | No | Number (10) | The store which will be used to relate historical data to the new store. This value must be predefned on the STORE table. |
| transactionNoGenerat ed | Yes | String (6) | The level at which unique POS transaction numbers are generated. |
| timezoneName | No | String (64) | TimeZone name. |
| customerId | No | Number (10) | Customer ID associated with the WF Store. |
| taxId | No | String (20) | Contains the unique tax identifcation number of the store. |
| copyClearanceInd | No | String (1) | Indicates if the like store’s clearance items should be copied to the new store. This value cannot be modifed. It will only be populated on a store create message. |
| autoReceive | No | String (1) | This column will indicate whether the client is allowing automatic receipt for the store. Valid Values are Y (Yes), N (No). |
Table 5-1115 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
| address | No | Collection of Object | References a collection of store address. |
| hours | No | Collection of Object | References a collection of store hours details. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-1116 Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressType | Yes | String (2) | Indicates the type for the address. Valid values (e. g. 01- business, 02-postal) are in the add_type table. |
| externalReferenceId | Yes | String (32) | This feld holds the unique address ID from the source system. For addresses that are interfaced into Merchandising, it will hold the external system’s address ID. |
| primaryAddressTypeI nd | No | String (1) | Indicates whether the address type is the primary address type for the module. |
| primaryAddressInd | Yes | String (1) | Indicates whether this address is the primary address for this address type. |
| add1 | Yes | String (240) | Contains the frst line of the address |
Table 5-1116 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| add2 | No | String (240) | Contains the second line of the address. |
| add3 | No | String (240) | Contains the thirdline of the address. |
| city | Yes | String (120) | Contains the name of the city that is associated with the address. |
| state | No | String (3) | Contains the postal abbreviation for the state in which the warehouse is located. |
| stateName | No | String (120) | Indicates the State name. |
| country | Yes | String (3) | Contains the country where the address exists. |
| countryName | No | String (120) | Indicates the Country Name. For e. g Brazil,United States |
| post | No | String (30) | Contains the zip code for the address. |
| county | No | String (250) | Contains the county name for the location. |
| jurisdictionCode | No | String (10) | ID associated to the tax jurisdiction of the country-state relationship. |
| contactName | No | String (120) | Contains the name of the contact for the supplier at this address. |
| contactPhone | No | String (20) | Contains the phone number of the contact person at this address. |
| contactTelex | No | String (20) | Contains the telex number of the partner or suppliers representative contact. |
| contactFax | No | String (20) | Contains the fax number of the contact person at this address. |
| contactEmail | No | String (100) | Contains the email address of the partner or suppliers representative contact. |
Table 5-1116 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| oracleVendorSiteId | No | Number (15) | The unique identifer of this address in the Oracle Financials systems, if used. |
| phone2Type | No | String (6) | This column contains the type of the phone number stored in Phone2 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work also can be found on the codes table with a code type of PHTP. |
| phone2 | No | String (20) | This column contains an additional phone number associated with the address. |
| phone3Type | No | String (6) | This column contains the type of the phone number stored in Phone3 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work also can be found on the codes table with a code type of PHTP. |
| phone3 | No | String (20) | This column contains a second additional phone number associated with the address. |
| latitude | No | String (30) | This column contains the north-south geographic coordinate of the address, represented in decimal degrees (e. g. , 37. 7749). |
Table 5-1116 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| longitude | No | String (30) | This column contains the east-west geographic coordinate of the address, represented in decimal degrees (e. g. , -122. 4194). |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
Table 5-1117 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1118 Hours - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dayNo | Yes | Number (1) | This feld indicates the day of the week for which store timing is being stored. |
| storeOpenTime | No | String (8) | Contains the open time for the store. The time format must be in HH:MM AM or HH:MM PM. |
| storeCloseTime | No | String (8) | Contains the close time for the store. The time format must be in HH:MM AM or HH:MM PM. |
Table 5-1119 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-1120 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"store": 6001,
"storeName": "6001 Retail",
"storeType": "C",
"storeNameSecondary": "storeNameSecondary",
"channelId": 1,
"district": 121,
"transferZone": 1000,
"defaultWarehouse": 5,
"currencyCode": "USD",
"orgUnitId": 1111111111,
"stockholdingInd": "Y",
"customerOrderLocationInd": "Y",
"customerOrderShippingInd": "Y",
"giftWrappingInd": "Y",
"onlineStoreInd": "N",
"storeName10": "6001Retail",
"storeName3": "600",
"storeClass": "A",
"storeManagerName": "storeMgrName",
"storeOpenDate": "2001-12-31",
"storeCloseDate": "2001-12-31",
"acquiredDate": "2001-12-31",
"remodelDate": "2001-12-31",
"faxNo": null,
"phoneNo": "1800800800",
"email": "someone@email.com",
"totalSquareFeet": 762426,
"sellingSquareFeet": 570207,
"linearDistance": 717780,
"storeFormat": 10,
"mallName": "mallName",
"stopOrderDays": 5,
"startOrderDays": 10,
"language": 1,
"isoCode": "en",
"integratedPosInd": "Y",
"dunsNumber": null,
"dunsLocation": null,
"copyDeliveryInd": "Y",
"copyActivityInd": "Y",
"priceStore": 6000,
"costLocation": 6000,
"vatIncludeInd": "Y",
"vatRegion": 1000,
"likeStore": null,
"copyReplenishmentInd": "Y",
"transferEntity": 1000,
"sisterStore": 1913,
"transactionNoGenerated": "S",
"timezoneName": "America/New_York",
"customerId": 121902,
"taxId": null,
"copyClearanceInd": "Y",
"autoReceive": "Y",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": null
}
],
"address": [
{
"addressType": "01",
"externalReferenceId": "REF6001",
"primaryAddressTypeInd": "Y",
"primaryAddressInd": "Y",
"add1": "101 First Street",
"add2": "201 Second Street",
"add3": "301 Third Street",
"city": "Minneapolis",
"state": "MN",
"stateName": "MN",
"country": "US",
"countryName": "US",
"post": "55555-1234",
"county": null,
"jurisdictionCode": null,
"contactName": "contactName",
"contactPhone": "1800800800",
"contactTelex": null,
"contactFax": null,
"contactEmail": "someone@email.com",
"oracleVendorSiteId": 625128,
"phone2Type": "WO",
"phone2": "5551234567",
"phone3Type": "WO",
"phone3": "5551234567",
"latitude": "44.38129",
"longitude": "-92.03521",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": null
}
]
}
],
"hours": [
{
"dayNo": 1,
"storeOpenTime": null,
"storeCloseTime": null
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Create Store Address
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service is used to create additional address for an existing store in Merchandising.
Service Type
POST
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/address/create
Input Payload Details
Table 5-1121 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The unique identifer of the store. |
| storeType | No | String (1) | The one character abbreviation of the store type. |
| address | No | Collection of Object | References a collection of store address. |
| customerId | No | Number (10) | Customer ID associated with the WF Store. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-1122 Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressType | Yes | String (2) | Indicates the type for the address. Valid values (e. g. 01- business, 02-postal) are in the add_type table. |
Table 5-1122 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| externalReferenceId | Yes | String (32) | This feld holds the unique address ID from the source system. For addresses that are interfaced into Merchandising, it will hold the external system’s address ID. |
| primaryAddressTypeI nd | No | String (1) | Indicates whether the address type is the primary address type for the module. |
| primaryAddressInd | Yes | String (1) | Indicates whether this address is the primary address for this address type. |
| add1 | Yes | String (240) | Contains the frst line of the address |
| add2 | No | String (240) | Contains the second line of the address. |
| add3 | No | String (240) | Contains the thirdline of the address. |
| city | Yes | String (120) | Contains the name of the city that is associated with the address. |
| state | No | String (3) | Contains the postal abbreviation for the state in which the warehouse is located. |
| stateName | No | String (120) | Indicates the State name. |
| country | Yes | String (3) | Contains the country where the address exists. |
| countryName | No | String (120) | Indicates the Country Name. For e. g Brazil,United States |
| post | No | String (30) | Contains the zip code for the address. |
| county | No | String (250) | Contains the county name for the location. |
| jurisdictionCode | No | String (10) | ID associated to the tax jurisdiction of the country-state relationship. |
Table 5-1122 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| contactName | No | String (120) | Contains the name of the contact for the supplier at this address. |
| contactPhone | No | String (20) | Contains the phone number of the contact person at this address. |
| contactTelex | No | String (20) | Contains the telex number of the partner or suppliers representative contact. |
| contactFax | No | String (20) | Contains the fax number of the contact person at this address. |
| contactEmail | No | String (100) | Contains the email address of the partner or suppliers representative contact. |
| oracleVendorSiteId | No | Number (15) | The unique identifer of this address in the Oracle Financials systems, if used. |
| phone2Type | No | String (6) | This column contains the type of the phone number stored in Phone2 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work also can be found on the codes table with a code type of PHTP. |
| phone2 | No | String (20) | This column contains an additional phone number associated with the address. |
Table 5-1122 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| phone3Type | No | String (6) | This column contains the type of the phone number stored in Phone3 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work also can be found on the codes table with a code type of PHTP. |
| phone3 | No | String (20) | This column contains a second additional phone number associated with the address. |
| latitude | No | String (30) | This column contains the north-south geographic coordinate of the address, represented in decimal degrees (e. g. , 37. 7749). |
| longitude | No | String (30) | This column contains the east-west geographic coordinate of the address, represented in decimal degrees (e. g. , -122. 4194). |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
Table 5-1123 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1124 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-1125 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"store": 6000,
"storeType": "C",
"address": [
{
"addressType": "01",
"externalReferenceId": "REF6001",
"primaryAddressTypeInd": "Y",
"primaryAddressInd": "Y",
"add1": "101 First Street",
"add2": "201 Second Street",
"add3": "301 Third Street",
"city": "Minneapolis",
"state": "MN",
"stateName": "stateName",
"country": "US",
"countryName": "countryName",
"post": "55555-1234",
"county": "Some County",
"jurisdictionCode": null,
"contactName": "contactName",
"contactPhone": "1800800800",
"contactTelex": null,
"contactFax": null,
"contactEmail": "someone@email.com",
"oracleVendorSiteId": 625128,
"phone2Type": "WO",
"phone2": "5551234567",
"phone3Type": "WO",
"phone3": "5551234567",
"latitude": "44.38129",
"longitude": "-92.03521",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
]
}
],
"customerId": 121902,
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Create Store Department Up Charges
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service is used to include department level up-charges for an existing store in Merchandising.
Service Type
POST
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/departmentUpCharges/
create
Input Payload Details
Table 5-1126 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The unique identifer of the store. |
| storeType | No | String (1) | The one character abbreviation of the store type. |
| upcharge | No | Collection of Object | References a collection of store department upcharges. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-1127 Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyLevel | Yes | String (6) | The hierarchy level for Up Charges. Valid values are: DI - Division, GR - |
| Group, DE - Department, AD - All Department. |
Table 5-1127 (Cont.) Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyValue | No | Number (4) | The value of the hierarchy. This column can contain Division/Group/ Department IDs when Hier Level is ’DI’, ‘GR’, or ‘DE’. Otherwise, it should be left blank when Hier Level is ‘AD’. |
| fromLocation | No | String (10) | Contains the source location from which goods will be transferred. This column can contain Country/Area/ Region IDs when From Location Type is ‘C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when From Location Type is ‘S’, ‘W’ or ‘PW’. Otherwise, it should be left blank when From Location Type is either ‘AS’ or ‘AW’. |
| toLocation | No | String (10) | Contains the destination location to which goods will be transferred. This column can contain Country/Area/ Region IDs when To Location Type is ’C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when To Location Type is ‘S’, ‘W’ or ’PW’. Otherwise, it should be left blank when To Location Type is either ‘AS’ or ‘AW’. |
| fromLocationType | Yes | String (6) | Contains the type of source location from which goods will be transferred. Valid values are defned in code type ’LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses. |
| toLocationType | Yes | String (6) | Contains the type of source location from which goods will be transferred. Valid values are defned in code type ’LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses. |
| details | No | Collection of Object | References a collection of store department upcharge details. |
Table 5-1128 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentId | Yes | String (10) | This feld contains the unique |
| identifer of the Up Charge component. |
Table 5-1128 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentRate | Yes | Number (20,4) | This feld contains the rate to be charged against the cost of the Item/To Location combinations within the department. |
| perCount | No | Number (12,4) | This feld contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. |
| perCountUom | No | String (4) | This feld contains the unit of measure in which the Per Count is specifed. |
| upChargeGroup | Yes | String (6) | This feld contains the up charge group to which the component ID belongs. Valid values can be found on the codes table with a code type of UCHG. Examples are Admin. Fee (A), Freight (F) and Special K Fees (K). |
| componentCurrency | Yes | String (3) | This feld contains the currency of the Up Charge component. |
| effectiveDate | No | date | The date from which the new values are effective in the system. |
| itemDefaultInd | No | String (1) | Indicates if component rate information is updated or not for existing items under the department. |
| transferAllocationDefaultInd | No | String (1) | Indicates if component rate information is updated or not for existing transfers and allocations under the department. |
| computationValueBase | No | String (10) | Contains the Computation Value Basis for the Up Charge component. |
| costBasis | No | String (6) | Contains the basis the Up Charge will be calculated against. Valid values are defned in code type UCCB (Up Charge Cost Basis) with values: Weighted Average Cost (W), Supplier Cost (S) and Off-Invoice Net Cost (N). |
| includeInTotalUpChargeInd | No | String (1) | Used to determine if the value of the individual up charge component is used to calculate the total up charge (Y) or if it is only used as the basis of calculating another up charge (N). This column will default to the value in the ELC_COMP table but can be updated at the department level. |
Table 5-1129 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the |
| localization attributes. |
Table 5-1129 (Cont.) LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-1130 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"store": 6000,
"storeType": "C",
"upcharge": [
{
"hierarchyLevel": "DI",
"hierarchyValue": 1000,
"fromLocation": "1231",
"toLocation": "3112",
"fromLocationType": "S",
"toLocationType": "S",
"details": [
{
"componentId": "UC1",
"componentRate": 3.55,
"perCount": 3,
"perCountUom": "EA",
"upChargeGroup": "A",
"componentCurrency": "USD",
"effectiveDate": "2001-12-31",
"itemDefaultInd": "Y",
"transferAllocationDefaultInd": "Y",
"computationValueBase": null,
"costBasis": "S",
"includeInTotalUpChargeInd": "N"
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Store Hours
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service is used to define the store hours attribute for an existing store in Merchandising.
Service Type
POST
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/hours/create
Input Payload Details
Table 5-1131 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The unique identifer of the store. |
| storeType | No | String (1) | The one character abbreviation of the store type. |
| hours | No | Collection of Object | References a collection of store hours details. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-1132 Hours - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dayNo | Yes | Number (1) | This feld indicates the day of the week for which store timing is being stored. |
| storeOpenTime | No | String (8) | Contains the open time for the store. The time format must be in HH:MM AM or HH:MM PM. |
| storeCloseTime | No | String (8) | Contains the close time for the store. The time format must be in HH:MM AM or HH:MM PM. |
Table 5-1133 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-1134 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"store": 6000,
"storeType": "C",
"hours": [
{
"dayNo": 1,
"storeOpenTime": null,
"storeCloseTime": null
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Store Location Trait
Functional Area
Organizational Hierarchy - Stores
Business Overview
The primary role of this service is to assign location trait to an existing store in Merchandising. Location traits must already exist prior to being added to the store.
Service Type
POST
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/locationTrait/create
Input Payload Details
Table 5-1135 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The unique identifer of the store. |
| storeType | No | String (1) | The one character abbreviation of the store type. |
| traits | No | Collection of Object | References a collection of location traits. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-1136 Traits - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| traitId | Yes | Number (4) | The identifer of the location trait. Though the node is optional, this feld is required if the node is included. The node can not be populated on the store create message. |
Table 5-1137 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-1138 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"store": 6000,
"storeType": "C",
"traits": [
{
"traitId": 1000
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Walk-Through Store
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service can be used to assign walk-through store to an existing store in Merchandising. Walk-through stores are used in Merchandising as part of the transfer reconciliation process
and are used to indicate two or more stores that have a ‘walk through’ connection between them - on the sales floor and/or the backroom.
Service Type
POST
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/walkThroughStore/
create
Input Payload Details
Table 5-1139 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The unique identifer of the store. |
| storeType | No | String (1) | The one character abbreviation of the store type. |
| walkThrough | No | Collection of Object | References a collection of walkthrough stores. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-1140 WalkThrough - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| walkThroughStore | Yes | Number (10) | A walk through store of the store being modifed. Though the node is optional, if it is included this feld is required. This node can not be populated on a store create message. |
Table 5-1141 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-1142 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"store": 6000,
"storeType": "C",
"walkThrough": [
{
"walkThroughStore": 187308
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Store
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service provides the ability to delete an existing store data based on the request from an external system if Merchandising is not the system of record for organizational hierarchy information.
After the data has been validated, the service will add the store to the DAILY_PURGE table for processing deletion through a batch process.
Service Type
DELETE
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/delete
Input Payload Details
Table 5-1143 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The store number being deleted, or |
| for which a location trait or walk | |||
| through store is being disassociated. |
Sample Input Message
{
"store": 6000
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Store Address
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service is used to delete the address from an existing store in Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/address/delete
Input Payload Details
Table 5-1144 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The store number being deleted, or for which a location trait or walk through store is being disassociated. |
| address | No | Collection of Object | It’s a referenced element. For detailed description, please refer referenced element doc. |
Table 5-1145 Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| externalReferenceId | Yes | String (32) | The unique identifer of the address being deleted. For address delete messages that are interfaced into RMS, it will hold the external store system’s address ID. For address delete messages published out of RMS, it will hold RMS’s address ID. |
Sample Input Message
{
"store": 6000,
"address": [
{
"externalReferenceId": "ADDREF01"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Store Department Up Charges
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service is used to delete department level up-charges from an existing store in Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/departmentUpCharges/
delete
Input Payload Details
Table 5-1146 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The store number being deleted, or for which a location trait or walk through store is being disassociated. |
| upcharge | No | Collection of Object | Child node. |
Table 5-1147 Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyLevel | Yes | String (6) | The hierarchy level for Department Up Charges. Valid values are: DI - Division, GR - Group, DE - Department, AD - All Department. |
| hierarchyValue | No | Number (4) | The value of the hierarchy. |
| fromLocation | No | String (10) | Contains the source location from which goods will be transferred. This column can contain Country/Area/ Region IDs when From Location Type is ‘C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when From Location Type is ‘S’, ‘W’ or ‘PW’. Otherwise, it should be left blank when From Location Type is either ‘AS’ or ‘AW’. |
| toLocation | No | String (10) | Contains the destination location to which goods will be transferred. This column can contain Country/Area/ Region IDs when To Location Type is ’C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when To Location Type is ‘S’, ‘W’ or ’PW’. Otherwise, it should be left blank when To Location Type is either ‘AS’ or ‘AW’. |
| fromLocationType | Yes | String (6) | Contains the type of source location from which goods will be transferred. Valid values are defned in code type ’LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses. |
| toLocationType | Yes | String (6) | Contains the type of source location from which goods will be transferred. Valid values are defned in code type ’LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses. |
Table 5-1147 (Cont.) Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| details | No | Collection of | References a collectiion of store |
| Object | department upcharge details. |
Table 5-1148 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentId | No | String (10) | This feld contains the unique identifer of the Up Charge component. |
| itemDefaultInd | No | String (1) | Indicates whether component rate information is deleted or not for existing items under the department. |
Sample Input Message
{
"store": 6000,
"upcharge": [
{
"hierarchyLevel": "GR",
"hierarchyValue": 1000,
"fromLocation": "1231",
"toLocation": "100124",
"fromLocationType": "S",
"toLocationType": "S",
"details": [
{
"componentId": "UC2",
"itemDefaultInd": "Y"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Store Hours
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service is used to delete the store hours from an existing store in Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/hours/delete
Input Payload Details
Table 5-1149 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The store number being deleted, or for which a location trait or walk through store is being disassociated. |
| hours | No | Collection of Object | It’s a referenced element. For detailed description, please refer referenced element doc. |
Table 5-1150 Hours - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dayNo | Yes | Number (1) | This feld indicates the day of the week for which store timing is being stored. |
Sample Input Message
{
"store": 6000,
"hours": [
{
"dayNo": 4
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Store Location Trait
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service is used to delete the location trait from an existing store in Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/locationTrait/delete
Input Payload Details
Table 5-1151 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The store number being deleted, or for which a location trait or walk through store is being disassociated. |
| traits | No | Collection of Object | It’s a referenced element. For detailed description, please refer referenced element doc. |
Table 5-1152 Traits - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| traitId | Yes | Number (4) | The identifer of the location trait. Though the node is optional, this feld is required if the node is included. The node can not be populated on the store create message. |
Sample Input Message
{
"store": 6000,
"traits": [
{
"traitId": 1000
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Walk-Through Store
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service can be used to delete the walk-through store from an existing store in Merchandising.
Service Type
DELETE
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/walkThroughStore/
delete
Input Payload Details
Table 5-1153 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The store number being deleted, or for which a location trait or walk through store is being disassociated. |
| walkThrough | No | Collection of Object | It’s a referenced element. For detailed description, please refer referenced element doc. |
Table 5-1154 WalkThrough - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| walkThroughStore | Yes | Number (10) | A walk through store of the store being modifed. Though the node is optional, if it is included this feld is required. This node can not be populated on a store create message. |
Sample Input Message
{
"store": 6000,
"walkThrough": [
{
"walkThroughStore": 187308
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Store
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service provides the ability to update an existing store data based on the request from an external system if Merchandising is not the system of record for organizational hierarchy information.
After the data has been validated, unlike store creation or deletion, the update is applied in Merchandising immediately upon message receipt.
For more details on stores, see the Create store service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/update
Availability During Nightly Batch Cycle
This service will not be available during total duration of nightly batch run cycle.
Input Payload Details
Table 5-1155 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The unique identifer of the store. |
| storeName | Yes | String (150) | The name of the store. |
| storeType | No | String (1) | The one character abbreviation of the store type. This feld cannot be modifed. |
| storeNameSecondary | No | String (150) | Secondary name of the store. This feld can only be populated when system_options. secondary_desc_ind = Y. |
| channelId | No | Number (4) | The identifer of the channel. This value must be predefned on the CHANNELS table. In a multichannel environment this feld is required. |
| district | Yes | Number (10) | The number of the district of which the store is a member. This value must be predefned on the DISTRICT table. |
| transferZone | No | Number (4) | The transfer zone in which the store is located. This value must be predefned on the TSFZONE table. |
| defaultWarehouse | No | Number (10) | This feld contains the default warehouse for the store. This value must be a virtual warehouse predefned on the WH table. |
| currencyCode | Yes | String (3) | The code of the currency under which the store operates. This value must be predefned on the CURRENCIES table. It cannot be modifed. |
| orgUnitId | No | Number (15) | Column will contain the organizational unit ID value. This feld cannot be modifed. |
Table 5-1155 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| stockholdingInd | Yes | String (1) | Indicates if the store can hold stock. This feld cannot be modifed. |
| customerOrderLocatio nInd | No | String (1) | Customer order location indicator. This feld can have Y or N. |
| customerOrderShippin gInd | No | String (1) | This feld indicates wheather the customer order has been been shipped from Warehouse or not. |
| giftWrappingInd | No | String (1) | This feld indicates weathere a gift wrapping needs to be done or not. |
| onlineStoreInd | No | String (1) | This feld indicates how store day will be managed by ReSA. If the indicator is Y then ReSA will automatically open and close the store day. |
| storeName10 | No | String (10) | The ten character abbreviation of the store name. |
| storeName3 | No | String (3) | The three character abbreviation of the store name. |
| storeClass | Yes | String (1) | The code of the class of which the store is a member. |
| storeManagerName | Yes | String (120) | The name of the store manager. |
| storeOpenDate | Yes | date | The date on which the store opened. |
| storeCloseDate | No | date | The date on which the store closed. |
| acquiredDate | No | date | The date on which the store was acquired. |
| remodelDate | No | date | The date on which the store was remodeled. |
| faxNo | No | String (20) | Contains the fax number for the store. |
| phoneNo | No | String (20) | This type can hold a number of digits count number. |
Table 5-1155 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| No | String (100) | The email address of the store. | |
| totalSquareFeet | No | Number (8) | The total square footage of the store. |
| sellingSquareFeet | No | Number (8) | The total square footage of the store’s selling area. |
| linearDistance | No | Number (8) | The total merchandise space of the store. |
| storeFormat | No | Number (4) | The code of the store format of the store. This value must be predefned on the STORE_FORMAT table. |
| mallName | No | String (120) | The name of the mall in which the store is located. |
| stopOrderDays | No | Number (3) | The number of days before the store close date that the store will stop accepting orders. |
| startOrderDays | Yes | Number (3) | The number of days before the store open date that the store will begin accepting orders. |
| language | No | Number (6) | The code of the language used at the store. This value must be predefned on the LANG table. |
| isoCode | No | String (6) | The character code corresponding to the Language used at the store |
| integratedPosInd | Yes | String (1) | Indicates whether the store’s POS is integrated. |
| dunsNumber | No | String (9) | Holds the Dun and Bradsteet (DUNS) number |
| dunsLocation | No | String (4) | The Dun and Bradstreet number to identify the location. |
Table 5-1155 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| priceStore | No | Number (10) | The store from which pricing information will be copied to the new store. The pricing store does not need the same currency as the new store. This value is not required on a create message and should not be populated on a modify message. |
| costLocation | No | Number (10) | The location from which to copy cost information to the new store. This feld should only be populated on store create messages. This value must be predefned on the WH or STORE table. This value cannot be modifed. |
| vatIncludeInd | No | String (1) | Indicates whether retail prices for the store will contain VAT. |
| vatRegion | No | Number (4) | The vat region of which the store is a part. This value must be predefned on the VAT_REGION table. It is required if VAT is on in the system. |
| likeStore | No | Number (10) | The store from which the new store will have item locations copied. This value must be predefned on the STORE table. It cannot be modifed and will only be populated on a create message. |
| transferEntity | Yes | Number (10) | The transfer entity of which the store is a part. This value must be predefned on the TSF_ENTITY table. If the system allows intercompany transfers this feld is required. |
Table 5-1155 (Cont.) Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| sisterStore | No | Number (10) | The store which will be used to relate historical data to the new store. This value must be predefned on the STORE table. |
| transactionNoGenerat ed | Yes | String (6) | The level at which unique POS transaction numbers are generated. |
| timezoneName | No | String (64) | TimeZone name. |
| customerId | No | Number (10) | Customer ID associated with the WF Store. |
| taxId | No | String (20) | Contains the unique tax identifcation number of the store. |
| autoReceive | No | String (1) | This column will indicate whether the client is allowing automatic receipt for the store. Valid Values are Y (Yes), N (No). |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
| hours | No | Collection of Object | References a collection of store hours details. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-1156 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
Table 5-1156 (Cont.) CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1157 Hours - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dayNo | Yes | Number (1) | This feld indicates the day of the week for which store timing is being stored. |
| storeOpenTime | No | String (8) | Contains the open time for the store. The time format must be in HH:MM AM or HH:MM PM. |
| storeCloseTime | No | String (8) | Contains the close time for the store. The time format must be in HH:MM AM or HH:MM PM. |
Table 5-1158 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-1159 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"store": 6001,
"storeName": "6001 Retail storeName",
"storeType": "C",
"storeNameSecondary": "storeNameSecondary",
"channelId": 1,
"district": 121,
"transferZone": 1000,
"defaultWarehouse": 5,
"currencyCode": "USD",
"orgUnitId": 1111111111,
"stockholdingInd": "Y",
"customerOrderLocationInd": "Y",
"customerOrderShippingInd": "Y",
"giftWrappingInd": "Y",
"onlineStoreInd": "N",
"storeName10": "StoreName",
"storeName3": "Str",
"storeClass": "A",
"storeManagerName": "storeMgrName",
"storeOpenDate": "2001-12-31",
"storeCloseDate": "2001-12-31",
"acquiredDate": "2001-12-31",
"remodelDate": "2001-12-31",
"faxNo": null,
"phoneNo": "1800800800",
"email": "someone@email.com",
"totalSquareFeet": 762426,
"sellingSquareFeet": 570207,
"linearDistance": 717780,
"storeFormat": 1000,
"mallName": "mallName",
"stopOrderDays": 100,
"startOrderDays": 6,
"language": 1,
"isoCode": "en",
"integratedPosInd": "Y",
"dunsNumber": null,
"dunsLocation": null,
"priceStore": 6000,
"costLocation": 6000,
"vatIncludeInd": "Y",
"vatRegion": 1000,
"likeStore": null,
"transferEntity": 1000,
"sisterStore": 1913,
"transactionNoGenerated": "S",
"timezoneName": "timezoneName",
"customerId": 121902,
"taxId": null,
"autoReceive": "Y",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"hours": [
{
"dayNo": 1,
"storeOpenTime": null,
"storeCloseTime": null
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Update Store Address
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service is used to update the address of an existing store in Merchandising.
Service Type
PUT
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/address/update
Input Payload Details
Table 5-1160 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The unique identifer of the store. |
| storeType | No | String (1) | The one character abbreviation of the store type. |
| address | No | Collection of Object | References a collection of store address. |
| customerId | No | Number (10) | Customer ID associated with the WF Store. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-1161 Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressType | Yes | String (2) | Indicates the type for the address. Valid values (e. g. 01- business, 02-postal) are in the add_type table. |
| externalReferenceId | Yes | String (32) | This feld holds the unique address ID from the source system. For addresses that are interfaced into Merchandising, it will hold the external system’s address ID. |
Table 5-1161 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddressTypeI nd | No | String (1) | Indicates whether the address type is the primary address type for the module. |
| primaryAddressInd | Yes | String (1) | Indicates whether this address is the primary address for this address type. |
| add1 | Yes | String (240) | Contains the frst line of the address |
| add2 | No | String (240) | Contains the second line of the address. |
| add3 | No | String (240) | Contains the thirdline of the address. |
| city | Yes | String (120) | Contains the name of the city that is associated with the address. |
| state | No | String (3) | Contains the postal abbreviation for the state in which the warehouse is located. |
| stateName | No | String (120) | Indicates the State name. |
| country | Yes | String (3) | Contains the country where the address exists. |
| countryName | No | String (120) | Indicates the Country Name. For e. g Brazil,United States |
| post | No | String (30) | Contains the zip code for the address. |
| county | No | String (250) | Contains the county name for the location. |
| jurisdictionCode | No | String (10) | ID associated to the tax jurisdiction of the country-state relationship. |
| contactName | No | String (120) | Contains the name of the contact for the supplier at this address. |
| contactPhone | No | String (20) | Contains the phone number of the contact person at this address. |
| contactTelex | No | String (20) | Contains the telex number of the partner or suppliers representative contact. |
Table 5-1161 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| contactFax | No | String (20) | Contains the fax number of the contact person at this address. |
| contactEmail | No | String (100) | Contains the email address of the partner or suppliers representative contact. |
| oracleVendorSiteId | No | Number (15) | The unique identifer of this address in the Oracle Financials systems, if used. |
| phone2Type | No | String (6) | This column contains the type of the phone number stored in Phone2 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work also can be found on the codes table with a code type of PHTP. |
| phone2 | No | String (20) | This column contains an additional phone number associated with the address. |
| phone3Type | No | String (6) | This column contains the type of the phone number stored in Phone3 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work also can be found on the codes table with a code type of PHTP. |
| phone3 | No | String (20) | This column contains a second additional phone number associated with the address. |
Table 5-1161 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| latitude | No | String (30) | This column contains the north-south geographic coordinate of the address, represented in decimal degrees (e. g. , 37. 7749). |
| longitude | No | String (30) | This column contains the east-west geographic coordinate of the address, represented in decimal degrees (e. g. , -122. 4194). |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
Table 5-1162 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1163 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of Object | This holds the details of localization attributes. |
Table 5-1164 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"store": 6000,
"storeType": "C",
"address": [
{
"addressType": "01",
"externalReferenceId": "REF6001",
"primaryAddressTypeInd": "Y",
"primaryAddressInd": "Y",
"add1": "101 First Street",
"add2": "201 Second Street",
"add3": "301 Third Street",
"city": "Minneapolis",
"state": "MN",
"stateName": "stateName",
"country": "US",
"countryName": "countryName",
"post": "55555-1234",
"county": "Some County",
"jurisdictionCode": null,
"contactName": "contactName",
"contactPhone": "1800800800",
"contactTelex": null,
"contactFax": null,
"contactEmail": "someone@email.com",
"oracleVendorSiteId": 625128,
"phone2Type": "WO",
"phone2": "5551234567",
"phone3Type": "WO",
"phone3": "5551234567",
"latitude": "44.38129",
"longitude": "-92.03521",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
]
}
],
"customerId": 121902,
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
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"
}
]
}
Update Store Department Up Charges
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service is used to update department level up-charges for an existing store in Merchandising.
Service Type
PUT
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/departmentUpCharges/
update
Input Payload Details
Table 5-1165 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The unique identifer of the store. |
| storeType | No | String (1) | The one character abbreviation of the store type. |
| upcharge | No | Collection of Object | References a collection of store department upcharges. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-1166 Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyLevel | Yes | String (6) | The hierarchy level for Up Charges. Valid values are: DI - Division, GR - Group, DE - Department, AD - All Department. |
| hierarchyValue | No | Number (4) | The value of the hierarchy. This column can contain Division/Group/ Department IDs when Hier Level is ’DI’, ‘GR’, or ‘DE’. Otherwise, it should be left blank when Hier Level is ‘AD’. |
| fromLocation | No | String (10) | Contains the source location from which goods will be transferred. This column can contain Country/Area/ Region IDs when From Location Type is ‘C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when From Location Type is ‘S’, ‘W’ or ‘PW’. Otherwise, it should be left blank when From Location Type is either ‘AS’ or ‘AW’. |
| toLocation | No | String (10) | Contains the destination location to which goods will be transferred. This column can contain Country/Area/ Region IDs when To Location Type is ’C’, ‘A’, or ‘R’. It will be a store, virtual warehouse or physical warehouse when To Location Type is ‘S’, ‘W’ or ’PW’. Otherwise, it should be left blank when To Location Type is either ‘AS’ or ‘AW’. |
Table 5-1166 (Cont.) Upcharge - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fromLocationType | Yes | String (6) | Contains the type of source location from which goods will be transferred. Valid values are defned in code type ’LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses. |
| toLocationType | Yes | String (6) | Contains the type of source location from which goods will be transferred. Valid values are defned in code type ’LTPC’. Examples are: C - Country, A - Area, R - Region, S - Store, W - Virtual Warehouse, PW - Physical Warehouse, AS - All Stores, AW - All Warehouses. |
| details | No | Collection of Object | References a collection of store department upcharge details. |
Table 5-1167 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| componentId | Yes | String (10) | This feld contains the unique identifer of the Up Charge component. |
| componentRate | Yes | Number (20,4) | This feld contains the rate to be charged against the cost of the Item/To Location combinations within the department. |
| perCount | No | Number (12,4) | This feld contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. |
| perCountUom | No | String (4) | This feld contains the unit of measure in which the Per Count is specifed. |
| upChargeGroup | Yes | String (6) | This feld contains the up charge group to which the component ID belongs. Valid values can be found on the codes table with a code type of UCHG. Examples are Admin. Fee (A), Freight (F) and Special K Fees (K). |
| componentCurrency | Yes | String (3) | This feld contains the currency of the Up Charge component. |
| effectiveDate | No | date | The date from which the new values are effective in the system. |
| itemDefaultInd | No | String (1) | Indicates if component rate information is updated or not for existing items under the department. |
Table 5-1167 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferAllocationDefaultInd | No | String (1) | Indicates if component rate information is updated or not for existing transfers and allocations under the department. |
| computationValueBase | No | String (10) | Contains the Computation Value Basis for the Up Charge component. |
| costBasis | No | String (6) | Contains the basis the Up Charge will be calculated against. Valid values are defned in code type UCCB (Up Charge Cost Basis) with values: Weighted Average Cost (W), Supplier Cost (S) and Off-Invoice Net Cost (N). |
| includeInTotalUpChargeInd | No | String (1) | Used to determine if the value of the individual up charge component is used to calculate the total up charge (Y) or if it is only used as the basis of calculating another up charge (N). This column will default to the value in the ELC_COMP table but can be updated at the department level. |
Table 5-1168 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-1169 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"store": 6000,
"storeType": "C",
"upcharge": [
{
"hierarchyLevel": "DI",
"hierarchyValue": 1000,
"fromLocation": "1231",
"toLocation": "3112",
"fromLocationType": "S",
"toLocationType": "S",
"details": [
{
"componentId": "UC1",
"componentRate": 3.55,
"perCount": 3,
"perCountUom": "EA",
"upChargeGroup": "A",
"componentCurrency": "USD",
"effectiveDate": "2001-12-31",
"itemDefaultInd": "Y",
"transferAllocationDefaultInd": "Y",
"computationValueBase": null,
"costBasis": "S",
"includeInTotalUpChargeInd": "N"
}
]
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Store Hours
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service is used to modify the store hours for an existing store in Merchandising.
Service Type
PUT
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/hours/update
Input Payload Details
Table 5-1170 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The unique identifer of the store. |
| storeType | No | String (1) | The one character abbreviation of the store type. |
| hours | No | Collection of Object | References a collection of store hours details. |
| localizationExtensions | No | Collection of Object | Holds optional localization attributes that will be processed by the localization extension module. |
Table 5-1171 Hours - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dayNo | Yes | Number (1) | This feld indicates the day of the week for which store timing is being stored. |
| storeOpenTime | No | String (8) | Contains the open time for the store. The time format must be in HH:MM AM or HH:MM PM. |
| storeCloseTime | No | String (8) | Contains the close time for the store. The time format must be in HH:MM AM or HH:MM PM. |
Table 5-1172 LocalizationExtensions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| country | Yes | String (3) | Id of the country associated with the localization attributes. |
| attributes | Yes | Collection of | This holds the details of localization |
| Object | attributes. |
Table 5-1173 Attributes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"store": 6000,
"storeType": "C",
"hours": [
{
"dayNo": 1,
"storeOpenTime": null,
"storeCloseTime": null
}
],
"localizationExtensions": [
{
"country": "BR",
"attributes": [
{
"name": "SPECIAL_CATEGORY_CODE",
"value": "WS_PRC_08",
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Manage Store Conditions
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service allows user to add, update or delete store conditions at a given store location. Store conditions are events that may have had an impact on store traffic and sales such as power outages, weather conditions, states of emergency, road construction, or community events.
Store condition types are defined and maintained under the Store Conditions (SCND) code type. The condition code under this code type which have the used indicator set to Yes (‘Y’) will be applicable for set up. A store condition will have a start date and may or may not have an end date such as an ongoing condition. Conditions that occurred on a single day should have an end date equal to the start date. Extra details about the condition can be provided in the comments.
In case of error, the standard error response will be returned. The element validationErrors will be present when input payload or input parameters do not match the schema definition for this service.
Service Type
POST
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/conditions/manage
Input Payload Details
Table 5-1174 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | No | Number (4) | Number of condition records included in |
| request |
Table 5-1174 (Cont.) Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Container for store |
| condition records. |
Table 5-1175 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | Yes | String (10) | Contains the action for the request. Valid values are CREATE, UPDATE, DELETE. |
| store | Yes | Number (10) | This column contains the number which uniquely identifes the store. |
| conditionType | Yes | String (6) | This will hold the condition types confgured under code type ”SCND” with Used indicator as ”Y”. |
| startDate | Yes | date | This will hold the start date of the condition. |
| endDate | No | date | This will hold the end date of the condition. |
| clearEndDate | No | String (1) | Indicates whether to clear the end date. Valid values are Y (clear) or N (do not clear) or null. |
| comments | No | String (250) | This will hold the extra information about the condition set up. |
| clearComments | No | String (1) | Indicates whether to clear the comments. Valid values are Y (clear) or N (do not clear) or null. |
Table 5-1176 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | This column contains the number which uniquely identifes the store. |
| conditionType | Yes | String (6) | This will hold the condition types confgured under code type ”SCND” with Used indicator as ”Y”. |
Table 5-1176 (Cont.) ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| startDate | Yes | date | This will hold the start date of the condition. |
| errorMessages | Yes | Array of String | Contains all the errors because of which the store condition processing in Merchandising failed. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"action": "CREATE",
"store": 10080,
"conditionType": "PO",
"startDate": "2001-12-31",
"endDate": "2001-12-31",
"clearEndDate": "Y",
"comments": "Power outage due to maintenance",
"clearComments": "Y"
}
]
}
Response Code: 200 (Success)
Table 5-1177 ManageResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| storeConditions | Yes | Collection of Object | Collection of |
| successfully processed | |||
| store condition records returned in response. |
Table 5-1178 StoreConditions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | This column contains the number which uniquely identifes the store. |
| conditionType | Yes | String (6) | This will hold the condition types confgured under code type ”SCND” with Used indicator as ”Y”. |
Table 5-1178 (Cont.) StoreConditions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| startDate | Yes | date | This will hold the start |
| date of the condition. |
Sample Response Message
{
"storeConditions": [
{
"store": 10080,
"conditionType": "PO",
"startDate": "2001-12-31"
}
]
}
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.
Table 5-1179 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | This column contains the number which uniquely identifes the store. |
| conditionType | Yes | String (6) | This will hold the condition types confgured under code type ”SCND” with Used indicator as ”Y”. |
| startDate | Yes | date | This will hold the start date of the condition. |
| errorMessages | Yes | Array of String | Contains all the errors because of which the store condition processing in Merchandising failed. |
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": [
{
"store": 10080,
"conditionType": "PO",
"startDate": "2001-12-31",
"errorMessages": [
"A condition with the same type and start date already exists"
]
}
]
}
Manage Store Services
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service allows user to specify /add which services are provided to customers at a given store location, such as Gift Wrapping, Embroidery, Engraving, or Curbside Pickup. The list of possible store services are defined under the Store Services (STSV) code type. The services under this code type which have the used indicator set to Yes (‘Y’) will be applicable for set up.
The only modification that can be performed via this service is to indicate that the store service is no longer available at the provided store. This can be done by passing in a store and a store service which is currently available at the store, and the delete flag set to Yes (Y) indicating that the service should be removed.
In case of error, the standard error response will be returned. The element validationErrors will be present when input payload or input parameters do not match the schema definition for this service.
Service Type
POST
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/services/manage
Input Payload Details
Table 5-1180 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Total number of store service records included in the request payload. |
| items | Yes | Collection of Object | Child node holding the collection of store service records to be processed. |
Table 5-1181 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | Yes | String (10) | Specifes the action to be performed on the store service record (CREATE, UPDATE, DELETE). |
| store | Yes | Number (10) | This column contains the number which uniquely identifes the store. |
| storeService | Yes | String (6) | Code representing the type of service being assigned, modifed, or removed for the store. |
Table 5-1182 ManageError - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| store No | Number (10) | Store number for which the service request failed validation or processing. |
| storeService No | String (6) | Service type associated with the failed store service transaction. |
| errorMessages No | Array of String | Child node holding one or more validation or processing error messages for the store service request. |
Sample Input Message{ | ||
"collectionSize": 1,"items": [{"action": "CREATE","store": 1810,"storeService": "EN"}]} |
Response Code: 200 (Success)
Table 5-1183 ManageResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| storeServices | No | Collection of Object | Child node holding successfully processed store service records returned in the response. |
Table 5-1184 StoreServices - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | No | Number (10) | Store number for which the service request has been successfully processed. |
| storeService | No | String (6) | Type of the service that the store offers. Valid values are available under code type ”STSV”. |
Sample Response Message
{
"storeServices": [
{
"store": 1810,
"storeService": "EN"
}
]
}
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.
Table 5-1185 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | No | Number (10) | Store number for which the service request failed validation or processing. |
| storeService | No | String (6) | Service type associated with the failed store service transaction. |
Table 5-1185 (Cont.) ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| errorMessages | No | Array of String | Child node holding one or more validation or processing error messages for the store service request. |
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": [
{
"store": 1810,
"storeService": "EN",
"errorMessages": [
"Invalid service type for store 1810"
]
}
]
}
Manage Store Translations
Functional Area
Organizational Hierarchy - Stores
Business Overview
This service allows for the creation, update, and deletion of translations of a store’s name and secondary name.
In case of error, the standard error response will be returned. The element validationErrors will be present when input payload or input parameters do not match the schema definition for this service.
Service Type
POST
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/translations/manage
Input Payload Details
Manage - Object. See list of elements for detail
Items - Object. See list of elements for detail
ManageError - Object. See list of elements for detail
Response Code: 200 (Success)
ManageResponse - Object. See list of elements for detail
Responses - Object. See list of elements for detail
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.
ManageError - Object. See list of elements for detail
Stores by Hierarchy Level Upload Service
The following services are included in this functional area:
-
Create Store Location Trait by Hierarchy Level
-
Delete Store Location Trait by Hierarchy Level
Create Store Location Trait by Hierarchy Level
Functional Area
Organizational Hierarchy - Stores
Business Overview
If Merchandising is not the system of record for organizational hierarchy information for an implementation, then this service can be used to assign an existing location trait to stores of a given organization hierarchy level in Merchandising based on the request from an external system.
Service Type
POST
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/
locationTraitByHierarchy/create
Input Payload Details
Table 5-1186 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyValue | Yes | Number (10) | The ID of the specifed hierarchy level. This value must be unique among other values of the same hierarchy level. |
| hierarchyDescription | No | String (120) | The description of the hierarchy value. |
Table 5-1186 (Cont.) Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyLevel | Yes | String (2) | The hierarchy level of the hierarchy value. This feld will indicate the level of the organizational hierarchy to which the cost change applies. Valid values are CH (chain), AR (area), RE (region), DI (district). |
| parentHierarchyId | No | Number (10) | The ID of the hierarchy value’s parent hierarchy value. This value must be predefned on either the CHAIN, AREA or REGION table. |
| traits | Yes | Collection of Object | References a collection of traits. |
Table 5-1187 Traits - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| traitId | Yes | Number (4) | The location trait associated to the hierarchy value. This value must be predefned on LOC_TRAITS table. A location trait cannot be associated with (or deleted from) a chain. |
Sample Input Message
{
"hierarchyValue": 2,
"hierarchyDescription": null,
"hierarchyLevel": "AR",
"parentHierarchyId": 117516,
"traits": [
{
"traitId": 1
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Store Location Trait by Hierarchy Level
Functional Area
Organizational Hierarchy - Stores
Business Overview
If Merchandising is not the system of record for organizational hierarchy information for an implementation, then this service can be used to delete a location trait from stores of a given organization hierarchy level in Merchandising based on the request from an external system.
Service Type
DELETE
ReST URL
MerchIntegrations/services/organizationalHierarchy/store/
locationTraitByHierarchy/delete
Input Payload Details
Table 5-1188 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hierarchyValue | Yes | Number (10) | The ID of the specifed hierarchy level. This value must be unique among other values of the same hierarchy level. |
| hierarchyLevel | Yes | String (2) | The hierarchy level of the hierarchy value. This feld will indicate the level of the organizational hierarchy to which the cost change applies. Valid values are CH (chain), AR (area), RE (region), DI (district). |
| traits | No | Collection of Object | References a collection of traits. |
Table 5-1189 Traits - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| traitId | Yes | Number (4) | The location trait associated to the hierarchy value. This value must be predefned on LOC_TRAITS table. A location trait cannot be associated with (or deleted from) a chain. |
Sample Input Message
{
"hierarchyValue": 571,
"hierarchyLevel": "DI",
"traits": [
{
"traitId": 1
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Warehouse
The following services are included in this functional area:
-
Warehouse Download Service
-
Get Basic Warehouse Details
-
Get Warehouse Details
-
Get Warehouse Details for Provided Warehouse
-
Warehouse Download Service
The following services are included in this functional area:
-
Get Basic Warehouse Details
-
Get Warehouse Details
-
Get Warehouse Details for Provided Warehouse
Get Basic Warehouse Details
This section describes the Warehouse Detail service.
Business Overview
Warehouse Detail service allows user to retrieve Warehouse information for a selected warehouse or for all warehouses.
Service Type
Get
ReST URL
Wh/whDetail?warehouse={whNumber}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Warehouse | No | Warehouse Number. If none is specified, all |
| warehouses will be retrieved. |
Output
RestWhRecRDO
| Parameter Name | Data Type |
|---|---|
| warehouse | BigDecimal |
| warehouseName | String |
| warehouseSecondaryName | String |
| vatRegion | BigDecimal |
| organizationHierarchyType | BigDecimal |
| organizationHierarchyValue | BigDecimal |
| currencyCode | String |
| physicalWarehouse | BigDecimal |
| primaryVirtualWarehouse | BigDecimal |
| channelId | BigDecimal |
| stockholdingIndicator | String |
Parameter Name Data Type breakPackIndicator String redistributeWarehouseIndicator String restrictedIndicator String protectedIndicator String transferEntityId BigDecimal finisherInd String inboundHandlingDays BigDecimal organizationalUnitId BigDecimal virtualWarehouseType String customerOrderLocationIndicator String address1 String address2 String address3 String city String state String countryId String post String contactName String contactPhone String contactEmail String
JSON Structure
{
"warehouse": null,
"warehouseName": null,
"warehouseSecondaryName": null,
"vatRegion": "null,
"organizationHierarchyType": null,
"organizationHierarchyValue": null,
"currencyCode": null,
"physicalWarehouse": null,
"primaryVirtualWarehouse": null,
"channelId": null,
"stockholdingIndicator": null,
"breakPackIndicator": null,
"redistributeWarehouseIndicator": null,
"restrictedIndicator": null,
"protectedIndicator": null,
"transferEntityId": null,
"finisherIndicator": null,
"inboundHandlingDays": null,
"organizationalUnitId" :null,
"virtualWarehouseType" :null,
"customerOrderLocationIdicator" :null,
"address1": null,
"address2": null,
"address3": null,
"city": null,
"state": null,
"countryId": null,
"post": null,
"contactName": null,
"contactPhone": null,
"contactEmail": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_WH | Yes | No | No | No |
| ADDR | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Get Warehouse Details
Endpoints
MerchIntegrations/services/foundation/warehouse
MerchIntegrations/services/foundation/warehouse/{whId}
Functional Area
Organizational Hierarchy - Warehouses
Business Overview
This service publishes warehouse master data to downstream consuming systems. It publishes only regular warehouse entities, including finisher warehouses, and excludes importer and exporter legal-entity warehouses. The payload includes warehouse setup details together with primary-address information, all published warehouse addresses, virtualwarehouse channel information, and warehouse and address custom flex attributes.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: WH, ADDR
Additional business tables: ADD_TYPE_MODULE, V_ADD_TYPE_TL, STATE, COUNTRY, CHANNELS, WH_CFA_EXT, ADDR_CFA_EXT
JSON cache table: MERCHAPI_EXT_WH
JSON generation view: V_MERCHAPI_EXT_WH_JSON
Builds the warehouse header from WH, derives the primary address from ADDR joined to ADD_TYPE_MODULE and V_ADD_TYPE_TL, enriches address geography from STATE and COUNTRY, and resolves virtual-warehouse channel text from CHANNELS.
Warehouse- and address-level custom flex attributes are added from MERCHAPI_EXT_WH_CFA and MERCHAPI_EXT_WH_ADDR_CFA.
Functionally, the JSON view filters to WH.ORG_ENTITY_TYPE = ‘R’, so only regular warehouses, including finishers, are published; importer and exporter legal-entity warehouses are excluded from this API.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_WH_JSON and apply WH.ORG_ENTITY_TYPE = ‘R’.
Mark cache rows deleted when the warehouse no longer exists in V_MERCHAPI_EXT_WH_JSON.
ICL (Integration Change Log) table: ICL_RMS_WH and ICL_RMS_ADDR (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on WH, and address changes are captured through ICL_RMS_ADDR for ADDR rows where MODULE = ‘WH’.
ICL_RMS_ADDR rows are filtered to MODULE = ‘WH’ and republish the parent warehouse payload.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_WH
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_WAREHOUSE_ADHOC_PROCESS → MERCHAPI_EXT_WAREHOUSE_ADHOC_JOB
Webhook configuration api name: foundation/warehouse
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/warehouse
MerchIntegrations/services/foundation/warehouse/{whId}
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key (Warehouse) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1190 Input Parameter for “MerchIntegrations/services/foundation/warehouse/ {whId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| whId | Yes | Number | Warehouse Id |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-1191 PageResultsItemsMerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
Table 5-1191 (Cont.) PageResultsItemsMerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1192 MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for warehouse details. |
| warehouse | No | Number(10,0) | This feld contains the unique number that identifes the warehouse. |
| warehouseName | No | String (150) | This feld contains the warehouse name. This is published for both physical and virtual warehouses. |
| whNameSecondary | No | String (150) | This feld contains the secondary name of the warehouse. |
| No | String (100) | This feld holds the email address for the location. This is published only for the physical warehouse. | |
| stockholdingInd | No | String (1) | This feld indicates whether the warehouse is a stockholding location. In a multichannel environment, it will be N for a physical warehouse and Y for a virtual warehouse. |
| channelId | No | Number(4,0) | This feld contains the channel for which the virtual warehouse has been assigned. This is published for the virtual warehouse. |
Table 5-1192 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| channelDescription | No | String (120) | This feld contains the description of the channel for which the virtual warehouse has been assigned. |
| currencyCode | No | String (3) | This feld contains the code for the currency that the warehouse uses. This is published for physical and virtual warehouses. |
| physicalWarehouse | No | Number(10,0) | This feld contains the number of the physical warehouse corresponding to this virtual warehouse. For physical warehouses, this feld will be null. |
| primaryVirtualWareh ouse | No | Number(10,0) | This feld holds the virtual warehouse that will be used as the basis for all transactions for which only a physical warehouse, and not a virtual warehouse, has been specifed. |
| dunsNo | No | String (9) | This feld holds the Dun and Bradstreet number to identify the physical warehouse. This is published for the physical warehouse. |
| dunsLocation | No | String (4) | This feld holds the Dun and Bradstreet location number to identify the physical warehouse. This is published for the physical warehouse. |
| breakPackInd | No | String (1) | This feld indicates whether the warehouse can distribute less than the supplier case quantity. Valid values are Y or N. This is published for both physical and virtual warehouses. |
Table 5-1192 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| redistributionWareho useInd | No | String (1) | This feld indicates whether the warehouse is a redistribution warehouse, which is used to fag purchase orders for review closer to the time of receipt. If this is set to yes (Y) for a physical warehouse, then it indicates that this is a dummy location for a purchase order and that the order will have its quantities redistributed to actual receiving locations closer to expected receipt. Valid values are yes (Y) and no (N). This is published for both physical and virtual warehouses. |
| deliveryPolicy | No | String (6) | This feld contains the delivery policy of the warehouse. Next Day (NEXT) indicates that if a location is closed, the warehouse will deliver on the next day. Next Valid Delivery Day (NDD) indicates that the warehouse will wait until the next scheduled delivery day. This is published for both physical and virtual warehouses. |
| pricingLocation | No | Number(10,0) | This feld contains the location from which pricing information was copied for this virtual warehouse. This is published for the virtual warehouse. |
| pricingLocationCurren cy | No | String (3) | This feld contains the currency code of the pricing location. This is published for the virtual warehouse. |
Table 5-1192 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orgUnitId | No | Number(15,0) | This feld holds the org unit ID of the virtual warehouse. This is published for the virtual warehouse. |
| vatRegion | No | Number(4,0) | This feld holds the VAT region where the warehouse belongs. This is published for both physical and virtual warehouses. |
| orgHierarchyType | No | Number(4,0) | This feld contains the organization type that will be used for reporting purposes for the warehouse. The type comes from the organizational hierarchy. |
| orgHierarchyValue | No | Number(10,0) | This feld contains the code associated with the specifc organizational hierarchy type. Valid values include the company number, chain number, area number, and so on. |
| restrictedInd | No | String (1) | This feld indicates whether the inventory for this virtual warehouse is restricted, meaning it is impacted last in an inbound type of transaction occurring at the physical warehouse level. |
| protectedInd | No | String (1) | This feld indicates whether the inventory for this virtual warehouse is protected, meaning it is affected last in outbound transactions occurring at the physical warehouse level. |
| forecastWarehouseInd | No | String (1) | This feld determines if a virtual warehouse should be forecasted. |
Table 5-1192 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transferEntityId | No | Number(10,0) | This feld indicates the transfer entity with which this virtual warehouse is associated. |
| fnisherInd | No | String (1) | This feld indicates whether a virtual warehouse is an internal fnisher. |
| inboundHandlingDays | No | Number(2,0) | This feld indicates the number of days that the warehouse requires to receive any item and get it to the shelf so that it is ready to pick. |
| virtualWarehouseType | No | String (6) | This feld contains the virtual warehouse type. Valid values are CS_NT - Non- traditional,CS_RG - CSC,XD_GS - Global Sourcing,XD_RG - Cross Dock |
| orgEntityType | No | String (1) | This feld specifes if the warehouse is a legal entity (Importer, Exporter) or a regular warehouse. |
| customerOrderLocatio nInd | No | String (1) | This feld indicates if the virtual warehouse can source or fulfll customer orders. |
| defaultWarehouse | No | Number(10,0) | This feld contains the default sourcing warehouse linked to the virtual warehouse. |
| giftWrappingInd | No | String (1) | This feld indicates whether the warehouse supports gift wrapping. |
| customerOrderShippin gInd | No | String (1) | This feld indicates whether the virtual warehouse supports shipping customer orders. |
| investmentBuyInd | No | String (1) | This feld indicates whether investment buy is confgured for this warehouse. |
Table 5-1192 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| investmentBuyWareho useLink | No | Number(10,0) | This feld contains the warehouse linked to the investment buy. |
| replenishableInd | No | String (1) | This feld determines if a warehouse is replenishable. |
| replenishmentSourceO rder | No | Number(1,0) | This feld contains the order from which the inventory is sourced for the linked warehouses. |
| replenishableWarehou seLink | No | Number(10,0) | This feld holds the replenishable warehouse that is linked to this virtual warehouse. This link implies that the virtual warehouse is included in the net inventory calculations for the replenishable warehouse. |
| taxId | No | String (20) | This feld contains the unique tax identifcation number of the physical warehouse. |
| primaryAddressType | No | String (2) | This feld specifes the type for the address. Valid values are: 01 - Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
| primaryAddressTypeD escription | No | String (40) | This feld specifes the address type description. |
| primaryAddressAdd1 | No | String (240) | This feld contains the frst line of the address. |
| primaryAddressAdd2 | No | String (240) | This feld contains the second line of the address. |
| primaryAddressAdd3 | No | String (240) | This feld contains the third line of the address. |
| primaryAddressCity | No | String (120) | This feld contains the name of the city that is associated with the address. |
Table 5-1192 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddressState | No | String (3) | This feld contains the state abbreviation for the address. |
| primaryAddressStateN ame | No | String (120) | This feld contains the state description for the address. |
| primaryAddressCount ryId | No | String (3) | This feld contains the country where the address exists. |
| primaryAddressCount ryName | No | String (120) | This feld contains the country description where the address exists. |
| primaryAddressPost | No | String (30) | This feld contains the zip code for the address. |
| primaryAddressContac tName | No | String (120) | This feld contains the name of the contact person at this address. |
| primaryAddressContac tPhone | No | String (20) | This feld contains the phone number of the contact person at this address. |
| primaryAddressContac tTelex | No | String (20) | This feld contains the telex number of the contact person at this address. |
| primaryAddressContac tFax | No | String (20) | This feld contains the fax number of the contact person at this address. |
| primaryAddressContac tEmail | No | String (100) | This feld contains the email address of the warehouse location contact person. |
| primaryAddressPhone 2 | No | String (20) | This feld contains an additional phone number associated with the primary address. |
Table 5-1192 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddressPhone 2Type | No | String (6) | This feld contains the type of the phone number stored in the primaryAddressPhone 2 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| primaryAddressPhone 3 | No | String (20) | This feld contains a second additional phone number associated with the primary address. |
| primaryAddressPhone 3Type | No | String (6) | This feld contains the type of the phone number stored in the primaryAddressPhone 3 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| primaryAddressLatitu de | No | String (30) | This feld contains the north-south geographic coordinate of the primary address, represented in decimal degrees. |
| primaryAddressLongit ude | No | String (30) | This feld contains the east-west geographic coordinate of the primary address, represented in decimal degrees. |
| primaryAddressCount y | No | String (250) | This feld contains the county where the address exists. |
| primaryAddrJurisdicti onCode | No | String (10) | This feld contains the ID associated with the tax jurisdiction of the country-state relationship. |
Table 5-1192 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the warehouse. |
| address | No | Collection of Object | This List holds all the warehouse addresses. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the warehouse record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1193 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1194 Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressKey | No | Number(11,0) | This feld contains the unique address key. |
| addressType | No | String (2) | This feld specifes the type for the address. Valid values are: 01 - Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
| addressTypeDescriptio n | No | String (40) | This feld specifes the address type description. |
| primaryAddressInd | No | String (1) | This feld indicates whether the address is the primary address for the address type. |
| add1 | No | String (240) | This feld contains the frst line of the address. |
| add2 | No | String (240) | This feld contains the second line of the address. |
| add3 | No | String (240) | This feld contains the third line of the address. |
| city | No | String (120) | This feld contains the name of the city that is associated with the address. |
| state | No | String (3) | This feld contains the state abbreviation that is associated with the address. |
| stateName | No | String (120) | This feld contains the state description that is associated with the address. |
| countryId | No | String (3) | This feld contains the country where the address exists. |
| countryName | No | String (120) | This feld contains the country description that is associated with the address. |
| post | No | String (30) | This feld contains the zip code for the address. |
| contactName | No | String (120) | This feld contains the name of the contact person at this address. |
Table 5-1194 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| contactPhone | No | String (20) | This feld contains the phone number of the contact person at this address. |
| contactTelex | No | String (20) | This feld contains the telex number of the contact person at this address. |
| contactFax | No | String (20) | This feld contains the fax number of the contact person at this address. |
| contactEmail | No | String (100) | This feld contains the email address of the contact person at this address. |
| phone2Type | No | String (6) | This feld contains the type of the phone number stored in the phone2 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| phone2 | No | String (20) | This feld contains an additional phone number associated with the address. |
| phone3Type | No | String (6) | This feld contains the type of the phone number stored in the phone3 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| phone3 | No | String (20) | This feld contains a second additional phone number associated with the address. |
Table 5-1194 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| latitude | No | String (30) | This feld contains the north-south geographic coordinate of the address, represented in decimal degrees. |
| longitude | No | String (30) | This feld contains the east-west geographic coordinate of the address, represented in decimal degrees. |
| county | No | String (250) | This feld contains the county where the address exists. |
| jurisdictionCode | No | String (10) | This feld contains the ID associated with the tax jurisdiction of the country-state relationship. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the warehouse’s address. |
Table 5-1195 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"warehouse": 6000,
"warehouseName": null,
"whNameSecondary": null,
"email": null,
"stockholdingInd": "Y",
"channelId": 1,
"channelDescription": null,
"currencyCode": "USD",
"physicalWarehouse": 6000,
"primaryVirtualWarehouse": 1,
"dunsNo": null,
"dunsLocation": "1055",
"breakPackInd": null,
"redistributionWarehouseInd": null,
"deliveryPolicy": "NEXT",
"pricingLocation": 1,
"pricingLocationCurrency": null,
"orgUnitId": 1111111111,
"vatRegion": 1000,
"orgHierarchyType": 1,
"orgHierarchyValue": 1,
"restrictedInd": null,
"protectedInd": null,
"forecastWarehouseInd": null,
"transferEntityId": 1,
"finisherInd": null,
"inboundHandlingDays": 1,
"virtualWarehouseType": null,
"orgEntityType": null,
"customerOrderLocationInd": "Y",
"defaultWarehouse": 5,
"giftWrappingInd": "Y",
"customerOrderShippingInd": "Y",
"investmentBuyInd": null,
"investmentBuyWarehouseLink": 1,
"replenishableInd": null,
"replenishmentSourceOrder": 1,
"replenishableWarehouseLink": 1,
"taxId": null,
"primaryAddressType": "01",
"primaryAddressTypeDescription": null,
"primaryAddressAdd1": "101 First Street",
"primaryAddressAdd2": "201 Second Street",
"primaryAddressAdd3": null,
"primaryAddressCity": "Minneapolis",
"primaryAddressState": "MN",
"primaryAddressStateName": "MN",
"primaryAddressCountryId": "US",
"primaryAddressCountryName": "US",
"primaryAddressPost": "55555-1234",
"primaryAddressContactName": "Laura Johnson",
"primaryAddressContactPhone": "1800800800",
"primaryAddressContactTelex": null,
"primaryAddressContactFax": "617-897-0902",
"primaryAddressContactEmail": "someone@email.com",
"primaryAddressPhone2": "5551234567",
"primaryAddressPhone2Type": "WO",
"primaryAddressPhone3": "5551234567",
"primaryAddressPhone3Type": "WO",
"primaryAddressLatitude": "44.38129",
"primaryAddressLongitude": "-92.03521",
"primaryAddressCounty": null,
"primaryAddrJurisdictionCode": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"address": [
{
"addressKey": 114772,
"addressType": "01",
"addressTypeDescription": null,
"primaryAddressInd": "Y",
"add1": "101 First Street",
"add2": "201 Second Street",
"add3": null,
"city": "Minneapolis",
"state": "MN",
"stateName": "MN",
"countryId": "US",
"countryName": "US",
"post": "55555-1234",
"contactName": "Laura Johnson",
"contactPhone": "1800800800",
"contactTelex": null,
"contactFax": "617-897-0902",
"contactEmail": "someone@email.com",
"phone2Type": "WO",
"phone2": "5551234567",
"phone3Type": "WO",
"phone3": "5551234567",
"latitude": "44.38129",
"longitude": "-92.03521",
"county": null,
"jurisdictionCode": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| WH | Yes | No | No | No |
| WH_CFA_EXT | Yes | No | No | No |
| MERCHAPI_EXT_WH | Yes | Yes | Yes | Yes |
| V_MERCHAPI_EXT_WH_JSON | Yes | No | No | No |
| ICL_RMS_WH | Yes | No | Yes | Yes |
| ICL_RMS_ADDR | Yes | No | Yes | Yes |
Get Warehouse Details for Provided Warehouse
Endpoints
MerchIntegrations/services/foundation/warehouse
MerchIntegrations/services/foundation/warehouse/{whId}
Functional Area
Organizational Hierarchy - Warehouses
Business Overview
This service publishes warehouse master data to downstream consuming systems. It publishes only regular warehouse entities, including finisher warehouses, and excludes importer and exporter legal-entity warehouses. The payload includes warehouse setup details
together with primary-address information, all published warehouse addresses, virtualwarehouse channel information, and warehouse and address custom flex attributes.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: WH, ADDR
Additional business tables: ADD_TYPE_MODULE, V_ADD_TYPE_TL, STATE, COUNTRY, CHANNELS, WH_CFA_EXT, ADDR_CFA_EXT
JSON cache table: MERCHAPI_EXT_WH
JSON generation view: V_MERCHAPI_EXT_WH_JSON
Builds the warehouse header from WH, derives the primary address from ADDR joined to ADD_TYPE_MODULE and V_ADD_TYPE_TL, enriches address geography from STATE and COUNTRY, and resolves virtual-warehouse channel text from CHANNELS.
Warehouse- and address-level custom flex attributes are added from MERCHAPI_EXT_WH_CFA and MERCHAPI_EXT_WH_ADDR_CFA.
Functionally, the JSON view filters to WH.ORG_ENTITY_TYPE = ‘R’, so only regular warehouses, including finishers, are published; importer and exporter legal-entity warehouses are excluded from this API.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild use V_MERCHAPI_EXT_WH_JSON and apply WH.ORG_ENTITY_TYPE = ‘R’.
Mark cache rows deleted when the warehouse no longer exists in V_MERCHAPI_EXT_WH_JSON.
ICL (Integration Change Log) table: ICL_RMS_WH and ICL_RMS_ADDR (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on WH, and address changes are captured through ICL_RMS_ADDR for ADDR rows where MODULE = ‘WH’.
ICL_RMS_ADDR rows are filtered to MODULE = ‘WH’ and republish the parent warehouse payload.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_WH
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_WAREHOUSE_ADHOC_PROCESS → MERCHAPI_EXT_WAREHOUSE_ADHOC_JOB
Webhook configuration api name: foundation/warehouse
Service Type
GET
ReST URL
MerchIntegrations/services/foundation/warehouse
MerchIntegrations/services/foundation/warehouse/{whId}
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| offsetkey | No | String | Offset key (Warehouse) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1196 Input Parameter for “MerchIntegrations/services/foundation/warehouse/ {whId}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| whId | Yes | Number | Warehouse Id |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-1197 PageResultsItemsMerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1198 MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for warehouse details. |
| warehouse | No | Number(10,0) | This feld contains the unique number that identifes the warehouse. |
| warehouseName | No | String (150) | This feld contains the warehouse name. This is published for both physical and virtual warehouses. |
| whNameSecondary | No | String (150) | This feld contains the secondary name of the warehouse. |
| No | String (100) | This feld holds the email address for the location. This is published only for the physical warehouse. |
Table 5-1198 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| stockholdingInd | No | String (1) | This feld indicates whether the warehouse is a stockholding location. In a multichannel environment, it will be N for a physical warehouse and Y for a virtual warehouse. |
| channelId | No | Number(4,0) | This feld contains the channel for which the virtual warehouse has been assigned. This is published for the virtual warehouse. |
| channelDescription | No | String (120) | This feld contains the description of the channel for which the virtual warehouse has been assigned. |
| currencyCode | No | String (3) | This feld contains the code for the currency that the warehouse uses. This is published for physical and virtual warehouses. |
| physicalWarehouse | No | Number(10,0) | This feld contains the number of the physical warehouse corresponding to this virtual warehouse. For physical warehouses, this feld will be null. |
| primaryVirtualWareh ouse | No | Number(10,0) | This feld holds the virtual warehouse that will be used as the basis for all transactions for which only a physical warehouse, and not a virtual warehouse, has been specifed. |
| dunsNo | No | String (9) | This feld holds the Dun and Bradstreet number to identify the physical warehouse. This is published for the physical warehouse. |
Table 5-1198 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dunsLocation | No | String (4) | This feld holds the Dun and Bradstreet location number to identify the physical warehouse. This is published for the physical warehouse. |
| breakPackInd | No | String (1) | This feld indicates whether the warehouse can distribute less than the supplier case quantity. Valid values are Y or N. This is published for both physical and virtual warehouses. |
| redistributionWareho useInd | No | String (1) | This feld indicates whether the warehouse is a redistribution warehouse, which is used to fag purchase orders for review closer to the time of receipt. If this is set to yes (Y) for a physical warehouse, then it indicates that this is a dummy location for a purchase order and that the order will have its quantities redistributed to actual receiving locations closer to expected receipt. Valid values are yes (Y) and no (N). This is published for both physical and virtual warehouses. |
| deliveryPolicy | No | String (6) | This feld contains the delivery policy of the warehouse. Next Day (NEXT) indicates that if a location is closed, the warehouse will deliver on the next day. Next Valid Delivery Day (NDD) indicates that the warehouse will wait until the next scheduled delivery day. This is published for both physical and virtual warehouses. |
Table 5-1198 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| pricingLocation | No | Number(10,0) | This feld contains the location from which pricing information was copied for this virtual warehouse. This is published for the virtual warehouse. |
| pricingLocationCurren cy | No | String (3) | This feld contains the currency code of the pricing location. This is published for the virtual warehouse. |
| orgUnitId | No | Number(15,0) | This feld holds the org unit ID of the virtual warehouse. This is published for the virtual warehouse. |
| vatRegion | No | Number(4,0) | This feld holds the VAT region where the warehouse belongs. This is published for both physical and virtual warehouses. |
| orgHierarchyType | No | Number(4,0) | This feld contains the organization type that will be used for reporting purposes for the warehouse. The type comes from the organizational hierarchy. |
| orgHierarchyValue | No | Number(10,0) | This feld contains the code associated with the specifc organizational hierarchy type. Valid values include the company number, chain number, area number, and so on. |
| restrictedInd | No | String (1) | This feld indicates whether the inventory for this virtual warehouse is restricted, meaning it is impacted last in an inbound type of transaction occurring at the physical warehouse level. |
Table 5-1198 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| protectedInd | No | String (1) | This feld indicates whether the inventory for this virtual warehouse is protected, meaning it is affected last in outbound transactions occurring at the physical warehouse level. |
| forecastWarehouseInd | No | String (1) | This feld determines if a virtual warehouse should be forecasted. |
| transferEntityId | No | Number(10,0) | This feld indicates the transfer entity with which this virtual warehouse is associated. |
| fnisherInd | No | String (1) | This feld indicates whether a virtual warehouse is an internal fnisher. |
| inboundHandlingDays | No | Number(2,0) | This feld indicates the number of days that the warehouse requires to receive any item and get it to the shelf so that it is ready to pick. |
| virtualWarehouseType | No | String (6) | This feld contains the virtual warehouse type. Valid values are CS_NT - Non- traditional,CS_RG - CSC,XD_GS - Global Sourcing,XD_RG - Cross Dock |
| orgEntityType | No | String (1) | This feld specifes if the warehouse is a legal entity (Importer, Exporter) or a regular warehouse. |
| customerOrderLocatio nInd | No | String (1) | This feld indicates if the virtual warehouse can source or fulfll customer orders. |
| defaultWarehouse | No | Number(10,0) | This feld contains the default sourcing warehouse linked to the virtual warehouse. |
Table 5-1198 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| giftWrappingInd | No | String (1) | This feld indicates whether the warehouse supports gift wrapping. |
| customerOrderShippin gInd | No | String (1) | This feld indicates whether the virtual warehouse supports shipping customer orders. |
| investmentBuyInd | No | String (1) | This feld indicates whether investment buy is confgured for this warehouse. |
| investmentBuyWareho useLink | No | Number(10,0) | This feld contains the warehouse linked to the investment buy. |
| replenishableInd | No | String (1) | This feld determines if a warehouse is replenishable. |
| replenishmentSourceO rder | No | Number(1,0) | This feld contains the order from which the inventory is sourced for the linked warehouses. |
| replenishableWarehou seLink | No | Number(10,0) | This feld holds the replenishable warehouse that is linked to this virtual warehouse. This link implies that the virtual warehouse is included in the net inventory calculations for the replenishable warehouse. |
| taxId | No | String (20) | This feld contains the unique tax identifcation number of the physical warehouse. |
| primaryAddressType | No | String (2) | This feld specifes the type for the address. Valid values are: 01 - Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
| primaryAddressTypeD escription | No | String (40) | This feld specifes the address type description. |
Table 5-1198 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddressAdd1 | No | String (240) | This feld contains the frst line of the address. |
| primaryAddressAdd2 | No | String (240) | This feld contains the second line of the address. |
| primaryAddressAdd3 | No | String (240) | This feld contains the third line of the address. |
| primaryAddressCity | No | String (120) | This feld contains the name of the city that is associated with the address. |
| primaryAddressState | No | String (3) | This feld contains the state abbreviation for the address. |
| primaryAddressStateN ame | No | String (120) | This feld contains the state description for the address. |
| primaryAddressCount ryId | No | String (3) | This feld contains the country where the address exists. |
| primaryAddressCount ryName | No | String (120) | This feld contains the country description where the address exists. |
| primaryAddressPost | No | String (30) | This feld contains the zip code for the address. |
| primaryAddressContac tName | No | String (120) | This feld contains the name of the contact person at this address. |
| primaryAddressContac tPhone | No | String (20) | This feld contains the phone number of the contact person at this address. |
| primaryAddressContac tTelex | No | String (20) | This feld contains the telex number of the contact person at this address. |
| primaryAddressContac tFax | No | String (20) | This feld contains the fax number of the contact person at this address. |
| primaryAddressContac tEmail | No | String (100) | This feld contains the email address of the warehouse location contact person. |
Table 5-1198 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddressPhone 2 | No | String (20) | This feld contains an additional phone number associated with the primary address. |
| primaryAddressPhone 2Type | No | String (6) | This feld contains the type of the phone number stored in the primaryAddressPhone 2 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| primaryAddressPhone 3 | No | String (20) | This feld contains a second additional phone number associated with the primary address. |
| primaryAddressPhone 3Type | No | String (6) | This feld contains the type of the phone number stored in the primaryAddressPhone 3 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| primaryAddressLatitu de | No | String (30) | This feld contains the north-south geographic coordinate of the primary address, represented in decimal degrees. |
| primaryAddressLongit ude | No | String (30) | This feld contains the east-west geographic coordinate of the primary address, represented in decimal degrees. |
| primaryAddressCount y | No | String (250) | This feld contains the county where the address exists. |
Table 5-1198 (Cont.) MerchApiWarehouse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| primaryAddrJurisdicti onCode | No | String (10) | This feld contains the ID associated with the tax jurisdiction of the country-state relationship. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the warehouse. |
| address | No | Collection of Object | This List holds all the warehouse addresses. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the warehouse record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1199 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
Table 5-1199 (Cont.) CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1200 Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| addressKey | No | Number(11,0) | This feld contains the unique address key. |
| addressType | No | String (2) | This feld specifes the type for the address. Valid values are: 01 - Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 - Remittance. |
| addressTypeDescriptio n | No | String (40) | This feld specifes the address type description. |
| primaryAddressInd | No | String (1) | This feld indicates whether the address is the primary address for the address type. |
| add1 | No | String (240) | This feld contains the frst line of the address. |
| add2 | No | String (240) | This feld contains the second line of the address. |
| add3 | No | String (240) | This feld contains the third line of the address. |
| city | No | String (120) | This feld contains the name of the city that is associated with the address. |
| state | No | String (3) | This feld contains the state abbreviation that is associated with the address. |
| stateName | No | String (120) | This feld contains the state description that is associated with the address. |
| countryId | No | String (3) | This feld contains the country where the address exists. |
Table 5-1200 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| countryName | No | String (120) | This feld contains the country description that is associated with the address. |
| post | No | String (30) | This feld contains the zip code for the address. |
| contactName | No | String (120) | This feld contains the name of the contact person at this address. |
| contactPhone | No | String (20) | This feld contains the phone number of the contact person at this address. |
| contactTelex | No | String (20) | This feld contains the telex number of the contact person at this address. |
| contactFax | No | String (20) | This feld contains the fax number of the contact person at this address. |
| contactEmail | No | String (100) | This feld contains the email address of the contact person at this address. |
| phone2Type | No | String (6) | This feld contains the type of the phone number stored in the phone2 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| phone2 | No | String (20) | This feld contains an additional phone number associated with the address. |
Table 5-1200 (Cont.) Address - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| phone3Type | No | String (6) | This feld contains the type of the phone number stored in the phone3 feld. Valid values are AS - Assistant, CM - Company Main, HF - Home Fax, HO - Home, MA - Main, PA - Pager, WF - Work Fax, WO - Work, and can also be found on the codes table with a code type of PHTP. |
| phone3 | No | String (20) | This feld contains a second additional phone number associated with the address. |
| latitude | No | String (30) | This feld contains the north-south geographic coordinate of the address, represented in decimal degrees. |
| longitude | No | String (30) | This feld contains the east-west geographic coordinate of the address, represented in decimal degrees. |
| county | No | String (250) | This feld contains the county where the address exists. |
| jurisdictionCode | No | String (10) | This feld contains the ID associated with the tax jurisdiction of the country-state relationship. |
| createDateTime | No | dateTime | This feld holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the record was last updated (UTC). |
| customFlexAttribute | No | Collection of Object | This List holds custom fex attributes for the warehouse’s address. |
Table 5-1201 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"warehouse": 6000,
"warehouseName": null,
"whNameSecondary": null,
"email": null,
"stockholdingInd": "Y",
"channelId": 1,
"channelDescription": null,
"currencyCode": "USD",
"physicalWarehouse": 6000,
"primaryVirtualWarehouse": 1,
"dunsNo": null,
"dunsLocation": "1055",
"breakPackInd": null,
"redistributionWarehouseInd": null,
"deliveryPolicy": "NEXT",
"pricingLocation": 1,
"pricingLocationCurrency": null,
"orgUnitId": 1111111111,
"vatRegion": 1000,
"orgHierarchyType": 1,
"orgHierarchyValue": 1,
"restrictedInd": null,
"protectedInd": null,
"forecastWarehouseInd": null,
"transferEntityId": 1,
"finisherInd": null,
"inboundHandlingDays": 1,
"virtualWarehouseType": null,
"orgEntityType": null,
"customerOrderLocationInd": "Y",
"defaultWarehouse": 5,
"giftWrappingInd": "Y",
"customerOrderShippingInd": "Y",
"investmentBuyInd": null,
"investmentBuyWarehouseLink": 1,
"replenishableInd": null,
"replenishmentSourceOrder": 1,
"replenishableWarehouseLink": 1,
"taxId": null,
"primaryAddressType": "01",
"primaryAddressTypeDescription": null,
"primaryAddressAdd1": "101 First Street",
"primaryAddressAdd2": "201 Second Street",
"primaryAddressAdd3": null,
"primaryAddressCity": "Minneapolis",
"primaryAddressState": "MN",
"primaryAddressStateName": "MN",
"primaryAddressCountryId": "US",
"primaryAddressCountryName": "US",
"primaryAddressPost": "55555-1234",
"primaryAddressContactName": "Laura Johnson",
"primaryAddressContactPhone": "1800800800",
"primaryAddressContactTelex": null,
"primaryAddressContactFax": "617-897-0902",
"primaryAddressContactEmail": "someone@email.com",
"primaryAddressPhone2": "5551234567",
"primaryAddressPhone2Type": "WO",
"primaryAddressPhone3": "5551234567",
"primaryAddressPhone3Type": "WO",
"primaryAddressLatitude": "44.38129",
"primaryAddressLongitude": "-92.03521",
"primaryAddressCounty": null,
"primaryAddrJurisdictionCode": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"address": [
{
"addressKey": 114772,
"addressType": "01",
"addressTypeDescription": null,
"primaryAddressInd": "Y",
"add1": "101 First Street",
"add2": "201 Second Street",
"add3": null,
"city": "Minneapolis",
"state": "MN",
"stateName": "MN",
"countryId": "US",
"countryName": "US",
"post": "55555-1234",
"contactName": "Laura Johnson",
"contactPhone": "1800800800",
"contactTelex": null,
"contactFax": "617-897-0902",
"contactEmail": "someone@email.com",
"phone2Type": "WO",
"phone2": "5551234567",
"phone3Type": "WO",
"phone3": "5551234567",
"latitude": "44.38129",
"longitude": "-92.03521",
"county": null,
"jurisdictionCode": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| WH | Yes | No | No | No |
| WH_CFA_EXT | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_EXT_WH | Yes | Yes | Yes | Yes |
| V_MERCHAPI_EXT_WH_JSON | Yes | No | No | No |
| ICL_RMS_WH | Yes | No | Yes | Yes |
| ICL_RMS_ADDR | Yes | No | Yes | Yes |
Purchase Orders
The following services are included in this functional area:
-
Mobile Workflow Purchase Order Download Service
-
Create Purchase Order - Get Items for Purchase Orders
-
Create Purchase Order - Get Locations for Purchase Order
-
Create Purchase Order - Get Next Purchase Order Numbers
-
Create Purchase Order - Get Purchase Order Supplier Terms
-
Create Purchase Order - Get Suppliers for Purchase Order
-
-
Create Purchase Order - Refresh Purchase Order Item Locations
-
Create Purchase Order - Refresh Purchase Order Items
-
Create Purchase Order - Refresh Purchase Order Suppliers
-
Get Purchase Order Detail - Simple
-
-
Manage Purchase Orders Get Open Purchase Orders
-
Manage Purchase Orders - Get Purchase Order Cancel Reasons
-
Manage Purchase Orders - Get Purchase Order Header
-
Manage Purchase Orders - Get Purchase Order Items for an Order
-
Manage Purchase Orders - Get Purchase Order Locations for an Order/Item
-
- Manage Purchase Orders Get Purchase Order Origins
- Manage Purchase Orders - Get Purchase Order Statuses
-
Manage Purchase Orders - Get Users Who Have Created Purchase Orders
-
Mobile Workflow Purchase Order Upload Service
-
Create Purchase Order - Simple
-
-
Manage Purchase Orders Approve Purchase Orders
-
Manage Purchase Orders - Cancel Purchase Orders
-
-
Manage Purchase Orders Reject Purchase Orders
-
-
Manage Purchase Orders Update Purchase Order Dates
-
-
Purchase Order Download Service
-
Get Purchase Order Details
-
Get Purchase Order Details by Order Number
-
-
Purchase Order Upload Service
- Create Pre-issued Order Numbers
-
Create Purchase Order Details
-
Create Purchase Order Expenses
-
Create Purchase Order HTS
-
Create Purchase Order HTS Assessments
-
Create Purchase Order Letters of Credit
-
Create Purchase Orders
-
Delete Purchase Order Details
-
Delete Purchase Order Expenses
-
Delete Purchase Order HTS
-
Delete Purchase Order HTS Assessments
-
Delete Purchase Order Letters of Credit
-
Delete Purchase Orders
-
Update Purchase Order Details
-
Update Purchase Order Expenses
-
Update Purchase Order HTS
-
Update Purchase Order HTS Assessments
-
Update Purchase Order Letters of Credit
-
Update Purchase Orders
Mobile Workflow Purchase Order Download Service
The following services are included in this functional area:
-
Create Purchase Order - Get Items for Purchase Orders
-
Create Purchase Order - Get Locations for Purchase Order
-
Create Purchase Order - Get Next Purchase Order Numbers
-
Create Purchase Order - Get Purchase Order Supplier Terms
-
Create Purchase Order - Get Suppliers for Purchase Order
-
• Create Purchase Order - Refresh Purchase Order Item Locations • Create Purchase Order - Refresh Purchase Order Items
-
Create Purchase Order - Refresh Purchase Order Suppliers
-
Get Purchase Order Detail - Simple
-
Manage Purchase Orders - Get Open Purchase Orders
-
Manage Purchase Orders - Get Purchase Order Cancel Reasons
-
• Manage Purchase Orders - Get Purchase Order Header • Manage Purchase Orders - Get Purchase Order Items for an Order • Manage Purchase Orders - Get Purchase Order Locations for an Order/Item • Manage Purchase Orders - Get Purchase Order Origins
-
Manage Purchase Orders - Get Purchase Order Statuses
-
• Manage Purchase Orders - Get Users Who Have Created Purchase Orders
Create Purchase Order - Get Items for Purchase Orders
This section describes the Search Items service.
Business Overview
This service retrieves items applicable for Purchase Order. Item can be searched by either Item or VPN. Enter an item number, a partial item description, or a VPN in the search string.
1. When search type is ITEM, the search string can be an item number, a partial item number, an item description, or partial item description
2. When search type is VPN, the search string can be a VPN or partial VPN.
The items returned are constrained by the following criteria:
-
Approved status.
-
Transaction-level items.
-
Orderable items.
-
Pack items with Order Type as Each are filtered out.
-
Only items belonging to Normal Merchandise Purchase Type as Department are retuned.
-
When a supplier is sent as input then:
-
Only items supplied by the input supplier are returned.
-
The item information is based on the Item/Supplier/Primary Origin Country.
-
-
When supplier is not sent as input, then item information is based on the primary supplier and primary origin country.
-
If the system_options.dept_level_orders is set to”Y” and the Department ID is sent as input, then only the input department items are returned.
-
Items set for deletion are filtered out.
Service Type
Get
ReST URL
/PurchaseOrders/item?
itemSearchType={itemSearchType}&searchString={searchString}&dept={dept}&suppli
er={supplier}&locations={locations}&pageSize={pageSize}&pageNumber={pageNumber
}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| itemSearchType | Yes | Search Type item or VPN. | ITEM,VPN |
| searchString | Yes | Search string for items Id or Name. | NA |
| dept | No | Selected items’ department ID. | NA |
| supplier | No | Selected Supplier ID. | NA |
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| Locations | No | Comma Separated values for selected locations’ ID. | NA |
| PageSize | No | Maximum number of items to retrieve | NA |
| per page. | |||
| PageNumber | No | Result page to retrieve. | NA |
Output
PoItemSearchResultRDO
| Parameter Name | Data Type |
|---|---|
| item | String |
| itemDesc | String |
| supplier | BigDecimal |
| originCountry | String |
| suppPackSize | BigDecimal |
| unitCost | BigDecimal |
| supplierCurrency | String |
| baseUnitRetail | BigDecimal |
| retailCurrency | String |
| baseRetailUnitOfMeasure | String |
| itemImageUrl | String |
| dept | BigDecimal |
| itemSearchLocRDO | List |
PoItemSearchRstLocRDO
| Parameter Name | Data Type |
|---|---|
| location | BigDecimal |
| locationType | String |
| unitRetail | BigDecimal |
| retailCurrency | String |
| unitRetailUnitOfMeasure | String |
| itemLocStatus | String |
PagedResultsRDO
| Parameter Name | Data Type |
|---|---|
| totalRecordCount | BigDecimal |
| Next Page URL | String |
| Previous Page URL | String |
JSON Structure
{
"links": [],
"totalRecordCount": 1,
"results": [
{
"links": [],
"item": "100001887",
"itemDesc": "DIT Test 12:Black:Medium",
"supplier": 2200,
"originCountry": "US",
"suppPackSize": 1,
"unitCost": 5,
"supplierCurrency": "USD",
"baseUnitRetail": 7.26,
"retailCurrency": "USD",
"baseRetailUnitOfMeasure": "EA",
"itemImageUrl": null,
"dept": 1102,
"itemSearchLocRDO": [
{
"links": [],
"location": 363640301,
"locationType": "W",
"unitRetail": 7.26,
"retailCurrency": "USD",
"unitRetailUnitOfMeasure": "CKG",
"itemLocStatus": "A",
"hyperMediaContent": {
"linkRDO": []
}
}
],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| DAILY_PURGE | Yes | No | No | No |
| DEPS | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| ITEM_IMAGE | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ITEM_SUPPLIER | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| MV_CURRENCY_CONVERSION_RAT ES | Yes | No | No | No |
| RPM_MERCH_RETAIL_DEF_EXPL | Yes | No | No | No |
| RPM_ZONE | Yes | No | No | No |
| V_ITEM_MASTER | Yes | No | No | No |
| V_PACKSKU_QTY | Yes | No | No | No |
| V_SUPS | Yes | No | No | No |
| WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Create Purchase Order - Get Locations for Purchase Order
This section describes the Search Location service.
Business Overview
The Web service enables location search applicable for PO. Location can be searched by either ‘S’tore or ‘W’arehouse. Enter a location number, a partial location number, a location description, or a partial location description in the search string.
The locations returned are constrained by the following criteria:
-
Only stockholding locations are returned.
-
When search type is Warehouse then:
-
Only virtual warehouses are returned.
-
Internal finishers are filtered out.
-
-
When search type is store then only the following stores are returned:
-
Company stores.
-
Open stores.
-
-
When system_options.org_unit_ind is set as ‘Y’ then:
-
When supplier is sent as input then only locations with same org_unit_id are returned.
-
When Org Unit ID is sent as input then only locations with same org_unit_id are returned.
-
Service Type
Get
ReST URL
/PurchaseOrders/location?
locationType={locationType}&searchString={searchString}&supplier={supplier}&or
gUnitId={orgUnitId}&pageSize={pageSize}&pageNumber={pageNumber}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| LocationType | Yes | Location type Store or warehouse. | S,W |
| SearchString | Yes | Search string for locations Id or Name. | NA |
| Supplier | No | Selected Supplier ID. | NA |
| OrgUnitId | No | Selected locations’ Org unit ID. | NA |
| PageSize | No | Maximum number of locations to retrieve per page. | NA |
| PageNumber | No | Result page to retrieve. | NA |
Output
PoLocSearchResultRDO
| Parameter Name | Data Type |
|---|---|
| location | BigDecimal |
| locType | String |
| locName | String |
| locationCurrency | String |
| orgUnitId | BigDecimal |
PagedResultsRDO
| Parameter Name | Data Type |
|---|---|
| totalRecordCount | BigDecimal |
| Next Page URL | String |
| Previous Page URL | String |
JSON Structure
{
"links": [
{
"href": "/PurchaseOrders/location?
searchString=e&pageSize=1&pageNumber=2",
"rel": "next",
"type": "GET",
"methodType": null
}
],
"totalRecordCount": 100,
"results": [
{
"links": [],
"location": 292919862,
"locType": "S",
"locName": "ALLOC_FD_Store_1_292919862",
"locationCurrency": "USD",
"orgUnitId": 1111111111,
"hyperMediaContent": {
"linkRDO": []
}
}
],
"hyperMediaContent": {
"linkRDO": [
{
"href": "/PurchaseOrders/location?
searchString=e&pageSize=1&pageNumber=2",
"rel": "next",
"type": "GET",
"methodType": null
}
]
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| PARTNER_ORG_UNIT | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
| V_WH | Yes | No | No | No |
| WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Create Purchase Order - Get Next Purchase Order Numbers
Business Overview
This service retrieves next available order numbers from Merchandising. This service takes an optional query parameter of count to retrieve multiple (up to 999) order numbers. The count defaults to 1 if the query parameter is not provided.
Service Type
Get
ReST URL
/PurchaseOrders/order/id
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| count | No | Count (1-999) of order numbers to be fetched. Default value is 1. |
Output
| Parameter Name | Data Type | Details |
|---|---|---|
| order_no | Number | Deprecated (UseorderNumbers) as this service hasbeen enhanced to return multiple order numbers. This field will contain the first order number from the orderNumberslist. |
| orderNumbers | Array | Contains the list of available order numbers. |
JSON Structure
{
"order_no": 123456,
"orderNumbers": [123456, 123457]
}
Table Impact
N/A
Create Purchase Order - Get Purchase Order Supplier Terms
This section describes the valid terms.
Business Overview
Retrieves all valid terms; valid terms are enabled with flag set to Yes and within the start and end active date.
Service Type
Get
ReST URL
/PurchaseOrders/supplier/terms
Input Parameters
N/A
Output
PoSupTermsRDO
| Parameter Name | Data Type |
|---|---|
| terms | String |
| terms_code | String |
| terms_desc | String |
JSON Structure
{
"links": [],
"terms": "108",
"terms_code": "108",
"terms_desc": "02 001.00% 010 000",
"rank": null,
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| TERMS_HEAD | Yes | No | No | No |
| TERMS_DETAIL | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Create Purchase Order - Get Suppliers for Purchase Order
This section describes the Search Supplier service.
Business Overview
Supplier search can be, by entering either full or partial supplier site ID (numeric) or by a full or partial supplier site description in the search string.
Returned suppliers are constrained by the following criteria:
-
Only active supplier sites are returned.
-
When items are sent as input, then only supplier sites that are common amongst the items are returned.
-
When locations are sent as input, then only suppliers that are valid for the Org Units associated with the input locations are returned.
Service Type
Get
ReST URL
/PurchaseOrders/supplier?
supplierSearchString={supplierSearchString}&locations={locations}&items={items
}&pageSize={pageSize}&pageNumber={pageNumber}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| SupplierSearchString | Yes | Search string for Supplier’s ID or Name. |
| Item | No | Comma Separated values for items. |
| Locations | No | Comma Separated values for locations. |
| PageSize | No | Maximum number of suppliers to retrieve per page. |
| PageNumber | No | Result page to retrieve. |
Output
PoSupSearchResultRDO
| Parameter Name | Data Type |
|---|---|
| supplier | BigDecimal |
| supplierName | String |
| supplierCurrency | String |
| terms | String |
| defaultItemLeadTime | BigDecimal |
| supplierSearchItemRDO | List |
| supplierSearchItemLocRDO | List |
PoSupItemResultRDO
| Parameter Name | Data Type |
|---|---|
| item | String |
| originCountryId | String |
| leadTime | BigDecimal |
PoSupItemLocResultRDO
| Parameter Name | Data Type |
|---|---|
| item | String |
| location | BigDecimal |
Parameter Name Data Type pickupLeadTime BigDecimal
PagedResultsRDO
Parameter Name Data Type totalRecordCount BigDecimal Next Page URL String Previous Page URL String
JSON Structure
{
"links": [],
"totalRecordCount": 1,
"results": [
{
"links": [],
"supplier": 2200,
"supplierName": "Our Supplier",
"supplierCurrency": "USD",
"terms": "04",
"defaultItemLeadTime": 2,
"supplierSearchItemRDO": [
{
"links": [],
"item": "100001887",
"originCountryId": "US",
"leadTime": 2,
"hyperMediaContent": {
"linkRDO": []
}
}
],
"supplierSearchItemLocRDO": [
{
"links": [],
"item": "100001887",
"location": 363640301,
"pickupLeadTime": null,
"hyperMediaContent": {
"linkRDO": []
}
}
],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ITEM_SUPPLIER | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| ITEM_SUPP_COUNTRY_LOC | Yes | No | No | No |
| STORE | Yes | No | No | No |
| SUPS | Yes | No | No | No |
| V_SUPS | Yes | No | No | No |
| WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Create Purchase Order - Refresh Purchase Order Item Locations
This section describes the Load Locations service.
Business Overview
This Web service allows the user to refresh already selected PO locations records.
Service Type
Get
ReST URL
/PurchaseOrders/location/load?locations={locations}&supplier={supplier}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Locations | Yes | Comma Separated values for selected locations’ ID. |
| Supplier | No | Selected Supplier ID. |
Output
PoLocSearchResultRDO
| Parameter Name | Data Type |
|---|---|
| location | BigDecimal |
| locType | String |
| locName | String |
| locationCurrency | String |
Parameter Name Data Type orgUnitId BigDecimal
JSON Structure
{
"links": [],
"location": 292919862,
"locType": "S",
"locName": "ALLOC_FD_Store_1_292919862",
"locationCurrency": "USD",
"orgUnitId": 1111111111,
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| PARTNER_ORG_UNIT | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
| V_WH | Yes | No | No | No |
| WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Create Purchase Order - Refresh Purchase Order Items
This section describes the load items.
Business Overview
The primary use of loading items Web service is to refresh already selected PO items records.
Service Type
Get
ReST URL
/PurchaseOrders/item/load?item=item&supplier={supplier}&locations={locations}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Items | Yes | Comma Separated values for selected items’ ID. |
| Parameter Name | Required | Description |
|---|---|---|
| Supplier | No | Selected Supplier ID. |
| Locations | No | Comma Separated values for selected locations’ ID. |
Output
PoItemSearchResultRDO
| Parameter Name | Data Type |
|---|---|
| item | String |
| itemDesc | String |
| supplier | BigDecimal |
| originCountry | String |
| suppPackSize | BigDecimal |
| unitCost | BigDecimal |
| supplierCurrency | String |
| baseUnitRetail | BigDecimal |
| retailCurrency | String |
| baseRetailUnitOfMeasure | String |
| itemImageUrl | String |
| dept | BigDecimal |
| itemSearchLocRDO | List |
PoItemSearchRstLocRDO
| Parameter Name | Data Type |
|---|---|
| location | BigDecimal |
| locationType | String |
| unitRetail | BigDecimal |
| retailCurrency | String |
| unitRetailUnitOfMeasure | String |
| itemLocStatus | String |
PagedResultsRDO
| Parameter Name | Data Type |
|---|---|
| totalRecordCount | BigDecimal |
| Next Page URL | String |
| Previous Page URL | String |
JSON Structure
{
"links": [],
"totalRecordCount": 1,
"results": [
{
"links": [],
"item": "100001887",
"itemDesc": "DIT Test 12:Black:Medium",
"supplier": 2200,
"originCountry": "US",
"suppPackSize": 1,
"unitCost": 5,
"supplierCurrency": "USD",
"baseUnitRetail": 7.26,
"retailCurrency": "USD",
"baseRetailUnitOfMeasure": "EA",
"itemImageUrl": null,
"dept": 1102,
"itemSearchLocRDO": [
{
"links": [],
"location": 363640301,
"locationType": "W",
"unitRetail": 7.26,
"retailCurrency": "USD",
"unitRetailUnitOfMeasure": "CKG",
"itemLocStatus": "A",
"hyperMediaContent": {
"linkRDO": []
}
}
],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| DAILY_PURGE | Yes | No | No | No |
| DEPS | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| ITEM_IMAGE | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| ITEM_SUPPLIER | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| MV_CURRENCY_CONVERSION_RAT ES | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| RPM_MERCH_RETAIL_DEF_EXPL | Yes | No | No | No |
| RPM_ZONE | Yes | No | No | No |
| V_ITEM_MASTER | Yes | No | No | No |
| V_PACKSKU_QTY | Yes | No | No | No |
| V_SUPS | Yes | No | No | No |
| WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Create Purchase Order - Refresh Purchase Order Suppliers
This section describes the load supplier service.
Business Overview
Loading supplier Web service allows a user to refresh the selected supplier records.
Service Type
Get
ReST URL
/PurchaseOrders/supplier/load?
suppliers={suppliers}&locations={locations}&items={items}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Supplier | Yes | Supplier’s ID. |
| Item | No | Comma Separated values for items. |
| Locations | No | Comma Separated values for locations. |
Output
PoSupSearchResultRDO
| Parameter Name | Data Type |
|---|---|
| supplier | BigDecimal |
| supplierName | String |
| supplierCurrency | String |
| terms | String |
| defaultItemLeadTime | BigDecimal |
| supplierSearchItemRDO | List |
| supplierSearchItemLocRDO | List |
PoSupItemResultRDO
Parameter Name Data Type item String originCountryId String leadTime BigDecimal
PoSupItemLocResultRDO
Parameter Name Data Type item String location BigDecimal pickupLeadTime BigDecimal
JSON Structure
{
"links": [],
"totalRecordCount": 1,
"results": [
{
"links": [],
"supplier": 2200,
"supplierName": "Our Supplier",
"supplierCurrency": "USD",
"terms": "04",
"defaultItemLeadTime": 2,
"supplierSearchItemRDO": [
{
"links": [],
"item": "100001887",
"originCountryId": "US",
"leadTime": 2,
"hyperMediaContent": {
"linkRDO": []
}
}
],
"supplierSearchItemLocRDO": [
{
"links": [],
"item": "100001887",
"location": 363640301,
"pickupLeadTime": null,
"hyperMediaContent": {
"linkRDO": []
}
}
],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ITEM_SUPPLIER | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| ITEM_SUPP_COUNTRY_LOC | Yes | No | No | No |
| STORE | Yes | No | No | No |
| SUPS | Yes | No | No | No |
| V_SUPS | Yes | No | No | No |
| WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Get Purchase Order Detail - Simple
This section describes the Purchase Order Detail Service.
Business Overview
Purchase Order Detail service allows user to retrieve purchase order information for a selected order.
Service Type
Get
ReST URL
Po/poDetail?orderNumber={orderNumber}
Input Parameters
| Parameter Name | Required | Description |
|---|---|---|
| Order Number | Yes | Order Number |
Output
RestPoRecRDO
| Parameter Name | Data Type |
|---|---|
| orderNumber | BigDecimal |
| Parameter Name | Data Type |
|---|---|
| orderType | String |
| group | BigDecimal |
| division | BigDecimal |
| dept | BigDecimal |
| buyer | BigDecimal |
| supplier | BigDecimal |
| supplierStatus | String |
| locationType | String |
| location | BigDecimal |
| writtenDate | Date |
| notBeforeDate | Date |
| notAfterDate | Date |
| otbEndofWeekDate | Date |
| earliestShipDate | Date |
| latestShipDate | Date |
| closeDate | Date |
| terms | String |
| freightTerms | String |
| originIndicator | BigDecimal |
| shipmentMethod | String |
| purchaseType | String |
| status | String |
| currencyCode | String |
| masterPurchaseOrderNumber | BigDecimal |
| poItemTbl | List |
RestPoItemRecRDO
| Parameter Name | Data Type |
|---|---|
| item | String |
| refernceItem | String |
| packItem | String |
| originCountryId | String |
| earliestShipDate | Date |
| latestShipDate | Date |
| supplierPackSize | BigDecimal |
| location | BigDecimal |
| locationType | String |
| physicalWarehouse | BigDecimal |
| unitRetail | BigDecimal |
| quantityOrdered | BigDecimal |
| Parameter Name | Data Type |
|---|---|
| quantityPrescaled | BigDecimal |
| quantityReceived | BigDecimal |
| lastReceivedQuantity | BigDecimal |
| lastRoundQuantity | BigDecimal |
| lastGroupRoundedQunatity | BigDecimal |
| quantityCancelled | BigDecimal |
| cancelCode | String |
| cancelDate | Date |
| unitCost | BigDecimal |
| costSource | String |
| nonScaleIndicator | String |
| estimatedStockDate | Date |
| restPoItemExpTbl | List |
RestPoItemExpRecRDO
Parameter Name Data Type item String packItem String location BigDecimal locationType String componentId String componentDecsiption String alwaysDefaultIndicator String componentRate BigDecimal componentCurrency String exchangeRate BigDecimal estimatedExpenceValue BigDecimal
JSON Structure
{
"orderNumber": null,
"orderType": null,
"group": null,
"division": null,
"dept": null,
"buyer": null,
"supplier": null,
"supplierStatus": null,
"locationType": null,
"location": null,
"writtenDate": null,
"notBeforeDate": null,
"notAfterDate": null,
"otbEndOfWeekDate": null,
"earliestShipDate": null,
"latestShipDate": null,
"closeDate": null,
"terms": null,
"freightTerms": null,
"originIndicator": null,
"shipmentmethod": null,
"purchaseType": null,
"status": null,
"currencyCode": null,
"masterPurchaseOrderNumber": null,
"poItemTbl": [
{
"item": null,
"referenceItem": null,
"originCountryId": null,
"earliestShipDate": null,
"latestShipDate": null,
"supplierPackSize": null,
"location": null,
"locationType": null,
"physicalWarehouse": null,
"unitRetail": null,
"quantityOrdered": null,
"quantityPrescaled": null,
"quantityReceived": null,
"lastReceivedQuantity": null,
"lastRoundQuantity": null,
"lastGroupRoundedQuantity": null,
"quantityCancelled": null,
"cancelCode": null,
"unitCost": null,
"costSource": null,
"nonScaleIndicator": null,
"estimatedStockDate": null,
"poItemExpTbl": [
{
"item": null,
"packItem": null,
"location": null,
"locationType": null,
"componentId": null,
"componentDescription": null,
"alwaysDefaultIndicator": null,
"componentRate": null,
"componentCurrency": null,
"exchangeRate": null,
"estimatedExpenceValue": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ORDHEAD | Yes | No | No | No |
| ORDLOC | Yes | No | No | No |
| ORDSKU | Yes | No | No | No |
| ORDLOC_EXPENSES | Yes | No | No | No |
| V_DEPS | Yes | No | No | No |
| SUPS | Yes | No | No | No |
| WH | Yes | No | No | No |
| ELC_COMP | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Manage Purchase Orders - Get Open Purchase Orders
This section describes the Purchase Order Search service.
Functional Area
Procurement
Business Overview
This service retrieves summary information on all none closed purchase orders that match input criteria.
Service Type
Get
ReST URL
/PurchaseOrders/recent/purchaseOrderSearch?
statuses={statuses}&createIds={createIds}&startCreateDate={startCreateDate}&en
dCreateDate={endCreateDate}&orderNumber={orderNumber}&suppliers={suppliers}&or
iginCodes={originCodes}&departments={departments}&pageSize={pageSize}&pageNumb
er={pageNumber}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| statuses | No | List of order status | A,S,W |
| createIds | No | List of user IDs who created the PO | |
| startCreateDate | No | Long format date for starting period | |
| endCreateDate | No | Long format date for end period | |
| orderNumber | No | Order number to retrieve | |
| suppliers | No | List of order suppliers | |
| originCodes | No | List of valid Origin codes | |
| departments | No | List of valid order/item departments | |
| pageSize | Maximum number of orders to retrieve per page | ||
| pageNumber | Result page to retrieve |
Output
RpoSearchResRDO
| Parameter Name | Data Type |
|---|---|
| orderNumber | BigDecimal |
| status | String |
| supplier | BigDecimal |
| supplierName | String |
| notBeforeDate | Long |
| notAfterDate | Long |
| totalCost | BigDecimal |
| currency | String |
| previouslyApprovedIndicator | String |
| editableIndicator | String |
PagedResultsRDO
| Parameter Name | Data Type |
|---|---|
| totalRecordCount | BigDecimal |
| Next Page URL | String |
| Previous Page URL | String |
JSON Structure
{
"type": "paginationRDO",
"totalRecordCount": 252,
"hyperMediaContent": {},
"links": [],
"results": [{
"orderNumber": 12453253,
"statusId" : "W",
"supplierId": 124121,
"supplierName": "Some Supplier Site",
"notBeforeDate": 35235252,
"notAfterDate": 325235252351,
"totalCost": 243.231,
"currencyCode": "USD"
}]
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ITEM_MASTER | Yes | No | No | No |
| PRODUCT_CONFIG_OPTIONS | Yes | No | No | No |
| V_ORDHEAD | Yes | No | No | No |
| V_ORDSKU | Yes | No | No | No |
| V_SUPS | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Manage Purchase Orders - Get Purchase Order Cancel Reasons
This section describes the Cancel Reason Code List service.
Functional Area
Procurement
Business Overview
Retrieves all purchase order cancel reason codes.
Service Type
Get
ReST URL
/PurchaseOrders/recent/cancelReasonCodeList
Input Parameters
No input.
Output
CodeDetailRDO
| Parameter Name | Data Type |
|---|---|
| code | String |
| codeDescription | String |
| codeSequence | BigDecimal |
JSON Structure
[
{
"code": null,
"codeDescription": null,
"codeSequence": null,
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
]
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| CODE_HEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Manage Purchase Orders - Get Purchase Order Header
This section describes the Get Purchase Order Summary service.
Functional Area
Procurement
Business Overview
This service retrieves purchase order header detail with open to buy information.
Service Type
Get
ReST URL
/PurchaseOrders/recent/PurchaseOrderSummary?orderNumber={orderNumber}
Input Parameters
Order Number-Required
Output
RpoOrderSumRDO
| Parameter Name | Data Type |
|---|---|
| orderNumber | BigDecimal |
| status | String |
| supplier | BigDecimal |
| supplierName | String |
| notBeforeDate | Long |
| notAfterDate | Long |
| otbEowDate | Long |
| terms | String |
| termsCode | String |
| termsDescription | String |
| totalCost | BigDecimal |
| totalRetail | BigDecimal |
| Currency | String |
| createId | String |
| writtenDate | Long |
| defaultDisplayLevel | String |
| previouslyApprovedIndicator | String |
| editableIndicator | String |
| otbTable | List |
RpoOrderSumOtbRDO
| Parameter Name | Data Type |
|---|---|
| department | BigDecimal |
| classId | BigDecimal |
| subclassId | BigDecimal |
| subclassName | String |
| orderAmount | BigDecimal |
| budgetAmount | BigDecimal |
| receivedAmount | BigDecimal |
| approvedAmount | BigDecimal |
| outstandingAmount | BigDecimal |
JSON Structure
{
“orderNumber":12345,
“statusId":"W",
“supplierId":12345,
“supplierName": “Supplier 12345",
“notBeforeDate": 1234567,
“notAfterDate": 236573,
"terms":"01",
"termsCode":"01234",
"termsDescription":"Letter Of Credit",
“totalCost": 123.45,
“totalRetail": 456.78,
“currencyCode": “CAD",
“createdBy": “BUYER",
“writtenDate": 1234567,
"otbResults":
[{
"department" : 12345,
"classId": 12345,
"subClassId" : 12345,
"subClassName": "subClassName"
"budgetAmount": 12345.545,
"orderAmount": 12345.545,
"receivedAmount": 12345.545,
"approvedAmount": 12345.545
}]
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| COST_ZONE_GROUP_LOC | Yes | No | No | No |
| COUNTRY_ATTRIB | Yes | No | No | No |
| DEPS | Yes | No | No | No |
| ELC_COMP | Yes | No | No | No |
| ITEM_COST_HEAD | Yes | No | No | No |
| ITEM_EXP_DETAIL | Yes | No | No | No |
| ITEM_EXP_HEAD | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| MV_CURRENCY_CONVERSION_RAT ES | Yes | No | No | No |
| ORDHEAD | Yes | No | No | No |
| ORDLOC | Yes | No | No | No |
| ORDLOC_EXP | Yes | No | No | No |
| ORDSKU | Yes | No | No | No |
| ORDSKU_HTS | Yes | No | No | No |
| ORDSKU_HTS_ASSESS | Yes | No | No | No |
| OTB | Yes | No | No | No |
| PERIOD | Yes | No | No | No |
| PRODUCT_CONFIG_OPTIONS | Yes | No | No | No |
| STORE | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SUPS | Yes | No | No | No |
| V_ORDHEAD | Yes | No | No | No |
| V_PACKSKU_QTY | Yes | No | No | No |
| V_SUBCLASS_TL | Yes | No | No | No |
| V_SUPS | Yes | No | No | No |
| V_TERMS_HEAD_TL | Yes | No | No | No |
| WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Manage Purchase Orders - Get Purchase Order Items for an Order
This section describes the Get Purchase Order Items service.
Functional Area
Procurement
Business Overview
This service retrieves items details for an order number. Based on the display level, the items record aggregates to the level specified when applicable.
Service Type
Get
ReST URL
/PurchaseOrders/recent/PurchaseOrderItems?
orderNumber={orderNumber}&itemDisplayLevel={itemDisplayLevel}&pageSize={pageSi
ze}&pageNumber={pageNumber}
Input Parameters
Order Number - Required
Item Display Level - Optional - valid values PARENT_LEVEL , PARENT_DIFF_LEVEL , or TRAN_LEVEL
Page Size - Optional
Page Number - Optional
Output
RpoOrderSumItemRDO
| Parameter Name | Data Type |
|---|---|
| item | String |
| ItemDescription | String |
Parameter Name Data Type diff1 String diff1Description String diff2 String diff2Description String diff3 String diff3Description String diff4 String diff4Description String quantityOrdered BigDecimal totalCost BigDecimal currency String itemImageUrl String
PagedResultsRDO
Parameter Name Data Type totalRecordCount BigDecimal Next Page URL String Previous Page URL String
JSON Structure
{
"type": "paginationRDO",
"totalRecordCount": 252,
"hyperMediaContent": {},
"links": [],
"orderNumber": 1212131,
"results": [{
"itemId": 1234
"itemDescription": "some item",
"firstDiffId": 123424,
"firstDiffDescription": "desc",
"secondDiffId": 12345
"secondDiffDescription" : "desc",
"thirdDiffId": 1234324
"thirdDiffDescription" : "desc",
"fourthDiffId" : 1324,
"fourthDiffDescription" : "desc",
"quanityOrdered": 100,
"totalCost" : 12345.353,
"currencyCode": "USD",
"itemImageUrl": "http://..."
}]
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ITEM_IMAGE | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| ORDLOC | Yes | No | No | No |
| ORDSKU | Yes | No | No | No |
| ORDLOC_WKSHT | Yes | No | No | No |
| V_ITEM_MASTER | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Manage Purchase Orders - Get Purchase Order Locations for an Order/Item
This section describes the Get Purchase Order Item Locations service.
Functional Area
Procurement
Business Overview
This service retrieves item location details for an order number. The location record aggregates based on the display level when applicable.
Service Type
Get
ReST URL
/PurchaseOrders/recent/PurchaseOrderItemLocations?
orderNumber={orderNumber}&item={item}&itemDisplayLevel={itemDisplayLevel}&diff
1={diff1}&diff2={diff2}&diff3={diff3}&diff4={diff4}&pageSize={pageSize}&pageNu
mber={pageNumber}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| orderNumber | Yes | Order number | |
| item | Yes | Item Id | |
| itemDisplayLevel | No | Item display level | PARENT_LEVEL,PARENT_DIFF_LEVEL,TRAN_LEVEL |
| diff1 | No | Diff1 Id | |
| diff2 | No | Diff2 Id | |
| diff3 | No | Diff3 Id | |
| diff4 | No | Diff4 Id |
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| pageSize | No | Maximum number of | |
| items to retrieve per page | |||
| pageNumber | No | Result page to retrieve |
Output
RpoOrderItemLocRDO
| Parameter Name | Data Type |
|---|---|
| location | BigDecimal |
| locationName | String |
| quantityOrdered | BigDecimal |
| totalCost | BigDecimal |
| currency | String |
PagedResultsRDO
| Parameter Name | Data Type |
|---|---|
| totalRecordCount | BigDecimal |
| Next Page URL | String |
| Previous Page URL | String |
JSON Structure
{
"locations" : [
{
"locationId" : 12345,
"locationName" : "some location",
"orderedQuantity" : 1000,
"totalCost" : 12345.234,
"currencyCode" : "USD"
},
{
"locationId" : 12345,
"locationName" : "some location",
"orderedQuantity" : 1000,
"totalCost" : 12345.234,
"currencyCode" : "USD"
}
]
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ITEM_MASTER | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ORDLOC | Yes | No | No | No |
| V_STORE_TL | Yes | No | No | No |
| V_WH_TL | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Manage Purchase Orders - Get Purchase Order Origins
This section describes the Origin Code List service.
Functional Area
Procurement
Business Overview
Retrieves all purchase order origin codes.
Service Type
Get
ReST URL
/PurchaseOrders/recent/originCodeList
Input Parameters
No input.
Output
CodeDetailRDO
| Parameter Name | Data Type |
|---|---|
| code | String |
| codeDescription | String |
| codeSequence | BigDecimal |
JSON Structure
[
{
"code": null,
"codeDescription": null,
"codeSequence": null,
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
]
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| CODE_HEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Manage Purchase Orders - Get Purchase Order Statuses
This section describes the Purchase Order Status list.
Functional Area
Procurement
Business Overview
Retrieves all valid purchase order statuses.
Service Type
Get
ReST URL
/PurchaseOrders/recent/purchaseOrderStatusList
Input Parameters
No input.
Output
CodeDetailRDO
| Parameter Name | Data Type |
|---|---|
| code | String |
| codeDescription | String |
| codeSequence | BigDecimal |
JSON Structure
[
{
"code": null,
"codeDescription": null,
"codeSequence": null,
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
]
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| CODE_HEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Manage Purchase Orders - Get Users Who Have Created Purchase Orders
This section describes the Search Purchase Order User ID.
Functional Area
Procurement
Business Overview
This service retrieves a list of user IDs associated with creating a purchase order.
Service Type
Get
ReST URL
/PurchaseOrders/recent/searchUserIds?
searchString={searchString}&pageSize={pageSize}&pageNumber={pageNumber}
Input Parameters
-
Search String - Required
-
Page Size - Optional
-
Page Number - Optional
Output
VarcharIdRDO
| Parameter Name | Data Type |
|---|---|
| id | String |
PagedResultsRDO
Parameter Name Data Type totalRecordCount BigDecimal Next Page URL String Previous Page URL String
JSON Structure
{
"totalRecordCount": null,
"results": [
{
"id": null,
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
],
"links": [ ],
"hyperMediaContent": {
"linkRDO": [ ]
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| V_ORDHEAD | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Mobile Workflow Purchase Order Upload Service
The following services are included in this functional area:
-
Create Purchase Order - Simple
-
Manage Purchase Orders - Approve Purchase Orders
-
Manage Purchase Orders - Cancel Purchase Orders
-
Manage Purchase Orders - Reject Purchase Orders
-
Manage Purchase Orders - Update Purchase Order Dates
Create Purchase Order - Simple
Business Overview
This Web service calls the existing Merchandising XOrder API directly with input parameters. For more information on Merchandising XOrder API, see the sections addressing both the Store Order Subscription API and the PO Subscription API.
Service Type
Post
ReST URL
/PurchaseOrders
Input Parameters
Example json RDO input:
{
"links" : [ ],
"itemRDOs" : [ {
"links" : [ ],
"item" : null,
"location" :null,
"unitCost" : null,
"referenceItem" : null,
"originCountryId" : null,
"suppPackSize" : null,
"qtyOrdered" : null,
"locationType" : null,
"cancelInd" : null,
"reInstateInd" : null,
"hyperMediaContent" : {
"linkRDO" : [ ]
}
} ],
"orderNo" : null,
"supplier" : null,
"currencyCode" : null,
"terms" : null,
"notBeforeDate" : null,
"notAfterDate" : null,
"status" : "A",
"writtenDate" : null,
"origInd" : null,
"user_id" : null,
"dept" : null,
"exchangeRate" : null,
"includeOnOrdInd" : null,
"ediPoInd" : null,
"preMarkInd" : null,
"comment" : null,
"otbEowDate" : null,
"hyperMediaContent" : {
"linkRDO" : [ ]
}
}
Output
NA
Table Impact
For more information on Merchandising XOrder API, see the Store Order Subscription API and the PO Subscription API sections.
Manage Purchase Orders - Approve Purchase Orders
This section describes the Approve Purchase Orders service.
Functional Area
Procurement
Business Overview
This service approves a list of purchase orders.
Service Type
Post
ReST URL
/PurchaseOrders/recent/approvePurchaseOrders?orderNumbers={orderNumbers}
Input Parameters
Order Number -Required-comma separated list
Output
RpoStatusRDO
| Parameter Name | Data Type |
|---|---|
| successOrdersCount | BigDecimal |
| successOrdersTable | List |
| failOrdersCount | BigDecimal |
| failOrdersTable | List |
RpoFailRDO
Parameter Name Data Type orderNumber BigDecimal errorMessage String JSON Structure: { "successOrdersCount": 0, "successOrdersTable": [],
"failOrdersCount": 2,
"failOrdersTable": [
{
"orderNumber": 123,
"errorMessage": " Invalid Order Number.",
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
},
{
"orderNumber": 987,
"errorMessage": "Invalid Order Number.",
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ALC_HEAD_TEMP | No | No | No | Yes |
| ALLOC_CHRG_TEMP | No | No | No | Yes |
| ALLOC_DETAIL | Yes | No | Yes | No |
| ALLOC_DETAIL_TEMP | No | No | No | Yes |
| ALLOC_HEADER | Yes | No | Yes | No |
| ALLOC_HEADER_TEMP | No | No | No | Yes |
| CONTRACT_COST_HIST | Yes | Yes | No | No |
| CONTRACT_DETAIL | Yes | No | Yes | No |
| CONTRACT_HEADER | Yes | No | Yes | No |
| DEAL_ACTUALS_FORECAST | No | No | No | Yes |
| DEAL_ACTUALS_ITEM_LOC | No | No | No | Yes |
| DEAL_COMP_PROM | No | No | No | Yes |
| DEAL_DETAIL | No | No | No | Yes |
| DEAL_HEAD | No | No | No | Yes |
| DEAL_HEAD_CFA_EXT | No | No | No | Yes |
| DEAL_ITEMLOC_DCS | No | No | No | Yes |
| DEAL_ITEMLOC_DIV_GRP | No | No | No | Yes |
| DEAL_ITEMLOC_ITEM | No | No | No | Yes |
| DEAL_ITEMLOC_PARENT_DIFF | No | No | No | Yes |
| DEAL_QUEUE | No | No | No | Yes |
| DEAL_THRESHOLD | No | No | No | Yes |
| DEAL_THRESHOLD_REV | No | No | No | Yes |
| DOC | Yes | No | No | No |
| DOC_LINK | Yes | No | No | No |
| ITEM_LOC | Yes | No | Yes | No |
| ITEM_MASTER | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| ITEM_TICKET | Yes | No | No | No |
| LC_ACTIVITY | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| LC_AMENDMENTS | Yes | Yes | No | No |
| LC_DETAIL | Yes | Yes | No | No |
| LC_HEAD | Yes | No | Yes | No |
| LC_ORDAPPLY | No | Yes | No | Yes |
| ORD_INV_MGMT | Yes | No | No | Yes |
| ORD_LC_AMENDMENTS | Yes | No | No | No |
| ORDCUST | Yes | No | No | No |
| ORDCUST_DETAIL | Yes | Yes | No | Yes |
| ORDDIST_ITEM_TEMP | No | No | No | Yes |
| ORDHEAD | Yes | No | No | No |
| ORDHEAD_REV | No | Yes | No | No |
| ORDLC | Yes | No | Yes | No |
| ORDLOC | Yes | No | Yes | No |
| ORDLOC_DISCOUNT | No | No | No | Yes |
| ORDLOC_DISCOUNT_TEMP | No | No | No | Yes |
| ORDLOC_EXP_TEMP | No | No | No | Yes |
| ORDLOC_REV | No | Yes | No | No |
| ORDLOC_TEMP | No | No | No | Yes |
| ORDLOC_WKSHT | Yes | No | No | Yes |
| ORDSKU | Yes | No | No | No |
| ORDSKU_HTS | Yes | No | No | No |
| ORDSKU_HTS_ASSESS_TEMP | No | No | No | Yes |
| ORDSKU_HTS_TEMP | No | No | No | Yes |
| ORDSKU_REV | No | Yes | No | No |
| ORDSKU_TEMP | No | No | No | Yes |
| OTB | Yes | Yes | Yes | No |
| OTB_CASCADE_STG | No | Yes | No | No |
| PARTNER_ORG_UNIT | Yes | No | No | No |
| POP_TERMS_DEF | No | No | No | Yes |
| POP_TERMS_FULFILLMENT | No | No | No | Yes |
| PROCUREMENT_UNIT_OPTIONS | Yes | No | No | No |
| REPL_RESULTS_TEMP | No | No | No | Yes |
| REQ_DOC | Yes | Yes | No | No |
| REQ_DOC_TEMP | No | No | No | Yes |
| REV_ORDERS | No | No | No | Yes |
| RTM_UNIT_OPTIONS | Yes | No | No | No |
| STORE | Yes | No | No | No |
| SUP_AVAIL | Yes | No | Yes | No |
| SUPS | Yes | No | No | No |
| SYSTEM_CONFIG_OPTIONS | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| TAX_CALC_EVENT | Yes | Yes | No | No |
| TAX_EVENT_RUN_TYPE | Yes | No | No | No |
| TICKET_REQUEST | No | Yes | No | No |
| TIMELINE_TEMP | No | No | No | Yes |
| TRANSIT_TIMES | Yes | No | No | No |
| V_PACKSKU_QTY | Yes | No | No | No |
| WH | Yes | No | No | No |
| WO_DETAIL_TEMP | No | No | No | Yes |
| WO_HEAD_TEMP | No | No | No | Yes |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Manage Purchase Orders - Cancel Purchase Orders
This section describes the Cancel Purchase Orders service.
Functional Area
Procurement
Business Overview
This service cancels a list of purchase order.
Service Type
Post
ReST URL
/PurchaseOrders/recent/cancelPurchaseOrders?orderNumbers={orderNumbers}
Input Parameters
Order Number -Required-comma separated list
Output
RpoStatusRDO
| Parameter Name | Data Type |
|---|---|
| successOrdersCount | BigDecimal |
| successOrdersTable | List |
| failOrdersCount | BigDecimal |
| failOrdersTable | List |
RpoFailRDO
Parameter Name Data Type orderNumber BigDecimal errorMessage String JSON Structure: { "successOrdersCount": 0, "successOrdersTable": [], "failOrdersCount": 2, "failOrdersTable": [ { "orderNumber": 123, "errorMessage": "Invalid Reason Code.", "links": [], "hyperMediaContent": { "linkRDO": [] } }, { "orderNumber": 987, "errorMessage": "Invalid Order Number.", "links": [], "hyperMediaContent": { "linkRDO": [] } } ], "links": [], "hyperMediaContent": { "linkRDO": [] } }
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ALLOC_DETAIL | Yes | No | Yes | No |
| ALLOC_HEADER | Yes | No | Yes | No |
| APPT_DETAIL | Yes | No | No | No |
| APPT_HEAD | Yes | No | No | No |
| CODE_DETAIL | Yes | No | No | No |
| DEAL_CALC_QUEUE | No | No | No | Yes |
| ORDHEAD | Yes | No | Yes | No |
| ORDLOC | Yes | No | Yes | No |
| OTB | No | No | Yes | No |
| SHIPMENT | Yes | No | Yes | No |
| SHIPSKU | Yes | No | Yes | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Manage Purchase Orders - Reject Purchase Orders
This section describes the Reject Purchase Orders service.
Functional Area
Procurement
Business Overview
This service rejects a list of purchase order.
Service Type
Post
ReST URL
/PurchaseOrders/recent/rejectPurchaseOrders?orderNumbers={orderNumbers}
Input Parameters
Order Numbers - Required - comma separated list
Output
RpoStatusRDO
| Parameter Name | Data Type |
|---|---|
| successOrdersCount | BigDecimal |
| successOrdersTable | List |
| failOrdersCount | BigDecimal |
| failOrdersTable | List |
RpoFailRDO
Parameter Name Data Type orderNumber BigDecimal errorMessage String JSON Structure: { "successOrdersCount": 0,
"successOrdersTable": [],
"failOrdersCount": 2,
"failOrdersTable": [
{
"orderNumber": 123,
"errorMessage": " Invalid Order Number.",
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
},
{
"orderNumber": 987,
"errorMessage": "Invalid Order Number.",
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ALLOC_DETAIL | No | No | Yes | No |
| ALLOC_HEADER | Yes | No | Yes | No |
| CONTRACT_DETAIL | Yes | No | Yes | No |
| CONTRACT_HEADER | Yes | No | Yes | No |
| ITEM_MASTER | Yes | No | No | No |
| LC_ORDAPPLY | No | No | No | Yes |
| ORDHEAD | Yes | No | Yes | No |
| ORDLOC | Yes | No | No | No |
| OTB | No | No | Yes | No |
| SHIPMENT | Yes | No | No | No |
| SHIPSKU | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Manage Purchase Orders - Update Purchase Order Dates
This section describes the Update Purchase Orders Date service.
Functional Area
Procurement
Business Overview
This service update list of purchase order dates. If no date is sent or sent as null then the assumption is there is no change on the current record date.
Service Type
Post
ReST URL
/PurchaseOrders/recent/updatePurchaseOrderDate? notBeforeDate={notBeforeDate}¬AfterDate={notAfterDate}&otbEowDate={otbEowDate}&or derNumbers={orderNumbers}
Input Parameters
Order Numbers - Required - comma separated list
Not Before Date - Optional - in a long format
Not After Date - Optional - in a long format
OTB EWO Date - Optional - in a long format
Output
RpoStatusRDO
| Parameter Name | Data Type |
|---|---|
| successOrdersCount | BigDecimal |
| successOrdersTable | List |
| failOrdersCount | BigDecimal |
| failOrdersTable | List |
RpoFailRDO
| Parameter Name | Data Type |
|---|---|
| orderNumber | BigDecimal |
| errorMessage | String |
JSON Structure:
{
"successOrdersCount": 0,
"successOrdersTable": [],
"failOrdersCount": 2,
"failOrdersTable": [
{
"orderNumber": 123,
"errorMessage": "Invalid Reason Code.",
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
},
{
"orderNumber": 987,
"errorMessage": "Invalid Reason Code.",
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ALLOC_HEADER | No | No | Yes | No |
| CONTRACT_HEADER | Yes | No | No | No |
| DEAL_HEAD | Yes | No | Yes | No |
| ORDHEAD | Yes | No | Yes | No |
| OTB | No | No | Yes | No |
| SHIPMENT | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Purchase Order Download Service
The following services are included in this functional area:
-
Get Purchase Order Details
-
Get Purchase Order Details by Order Number
Get Purchase Order Details
Endpoints
MerchIntegrations/services/procurement/order
MerchIntegrations/services/procurement/order/{orderNo}
Functional Area
Purchase Orders
Business Overview
This service publishes external purchase orders to downstream consuming systems. The payload includes order header and line-location detail, along with supplier-sourcing, location, and customer-order enrichment. The JSON view returns orders only when ORDHEAD.STATUS is A, W, S, or C, ORDHEAD.ORIG_APPROVAL_DATE is not null, and ORDHEAD.ORDER_TYPE <> ‘DSD’, so DSD orders and orders that have never crossed an approval event are not included. Worksheet and submitted statuses can appear in the payload only after the order has already been approved at least once, and orderLocationType is derived as S, W, or SW depending on whether the order locations are stores, warehouses, or a mix of both.
The publication for order based on order detail line is only when unit cost or estimated in stock date or quantity ordered is changed. This service will not publish orders when shipping or receiving of the order has started.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: ORDHEAD, ORDLOC
Additional business tables: ORDSKU, ORDCUST, ORDCUST_DETAIL, ITEM_SUPP_COUNTRY, STORE, WH, DEPS, BUYER, RPM_PROMO, CODE_DETAIL, V_TERMS_HEAD_TL, PO_TYPE, V_PARTNER_TL, V_OUTLOC_TL, ORDHEAD_CFA_EXT, ORDSKU_CFA_EXT, ORDLOC_CFA_EXT
JSON cache table: MERCHAPI_EXT_ORDER
JSON generation view: V_MERCHAPI_EXT_ORDER_JSON
Builds the header from ORDHEAD, the detail array from ORDLOC and ORDSKU, OMS linkage from ORDCUST and ORDCUST_DETAIL, item-supplier sourcing attributes from ITEM_SUPP_COUNTRY, location enrichment from WH and STORE, descriptive lookup values from DEPS, BUYER, RPM_PROMO, CODE_DETAIL, V_TERMS_HEAD_TL, PO_TYPE, V_PARTNER_TL, and V_OUTLOC_TL, and header, item, and item-location custom flex attributes from MERCHAPI_EXT_ORDER_CFA, MERCHAPI_EXT_ORDER_ITEM_CFA, and MERCHAPI_EXT_ORD_ITEM_LOC_CFA.
The view only publishes orders where ORDHEAD.STATUS is one of A, W, S, or C, ORDHEAD.ORIG_APPROVAL_DATE is not null, and ORDHEAD.ORDER_TYPE <> ‘DSD’.
This means DSD orders and orders that have never crossed an approval event are not returned, even though worksheet and submitted statuses can still appear later in the payload after the order has already been approved once.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_MERCHAPI_EXT_ORDER_JSON. No additional filter criteria were identified beyond the cache-build logic.
Mark cache rows deleted when the order no longer exists in V_MERCHAPI_EXT_ORDER_JSON.
ICL (Integration Change Log) table: ICL_RMS_ORDER (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on ORDHEAD, ORDLOC, ORDHEAD_CFA_EXT, ORDLOC_CFA_EXT, and ORDSKU_CFA_EXT.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_ORDER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_ORDER_ADHOC_PROCESS → MERCHAPI_EXT_ORDER_ADHOC_JOB
Webhook configuration api name: procurement/order
Special handling
Additional GET query parameters: supplier, orderOriginatedInd, notBeforeDate, notAfterDate, importOrderInd, locType.
These filters are not backed by dedicated cache-table indexes. At high volume, use them only as additional criteria on top of a small-window delta fetch and not for full downloads.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime characteristics and should be evaluated separately. The available configuration for this service should therefore be reviewed and validated against the customer’s projected production data profile, including expected volume, message size, and access pattern, with the key performance-related configuration for this service covering the following:
Multi-threading and commit control
This service supports multi-threaded execution for both initial seeding and delta processing. Thread count is controlled through API_NO_OF_THREADS, and commit sizing is controlled through API_COMMIT_MAX_COUNTER.
For initial seeding, thread and commit settings should be chosen together based on expected row volume, average message size, and the complex SQL query required to build the message from multiple base and supporting tables. Common starting points for large-volume seeding are 8, 16, or 32 threads. Values of 48 or 64 threads should be considered only after testing and with awareness of competing workload in the environment.
API_COMMIT_MAX_COUNTER should be sized together with the thread setting. Typical values can range from about 100 to 1,000 rows, with higher values such as 10,000 used in some cases after testing. Where payloads are larger or the source SQL is heavier because of the number of contributing tables, a lower thread count with a higher commit value may perform better.
For delta processing, the same parameters apply. The seeding commit setting is usually a reasonable starting point, but where qualifying business events can create short-term spikes, the commit value may need to remain on the lower side so backlog drains in smaller units of work.
Dropping indexes and constraints during seeding
This option applies only to initial seeding, including truncate-and-load execution. When thread and commit settings are high, concurrent inserts can increase index maintenance overhead and slow the load.
To reduce that overhead, DROP_INDEX_ON_REFRESH can be enabled so indexes and constraints are dropped before seeding and rebuilt after the load completes.
This can improve data-load throughput, but the overall refresh plan should also account for the additional time needed for index rebuild after the seeding step finishes.
GATHER_STATS_ON_REFRESH should normally remain enabled unless testing shows a need to change it.
REST fetch considerations
REST page size should be selected based on average message size so that the average response remains below about 10 MB per call. Common page-limit values are 500, 1,000, 5,000, or 10,000 rows, and very small limits, especially below 100, should generally be avoided.
For full downloads, do not provide the since query parameter so the database can favor the primary-key access path. For delta downloads, use a small time window, typically a few minutes and at most a few hours, so the eligible row set on the LAST_UPDATE_DATETIME index remains small.
Wider delta windows, especially multi-day windows that can arise during outages or data recovery, generally do not perform well. For such scenarios, keeping BUILD_HISTOGRAM enabled allows the service to support recovery through smaller, more selective polling windows using the optimalBefore query parameter.
In this catch-up pattern, for requests up to 30 days in the past, the client provides optimalBefore and leaves before empty. The client then uses the returned before timestamp to continue polling incrementally until the backlog is cleared, and then resumes the normal shortwindow delta pattern. Hourly histogram processing groups LAST_UPDATE_DATETIME values into buckets of 10,000 rows in MERCHAPI_TIMESTAMP_HISTOGRAM using the shared HISTOGRAM_ROW_COUNT configuration.
Service Type
GET
ReST URL
MerchIntegrations/services/procurement/order
MerchIntegrations/services/procurement/order/{orderNo}
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| supplier | No | String (10) | Supplier |
| orderOriginatedInd | No | Number | Order Orginated Indicator |
| notBeforeDate | No | String | Not Before Date (Example: 2023-12-31) |
| notAfterDate | No | String | Not After Date (Example: 2023-12-31) |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| importOrderInd | No | String | Import Order Indicator - must be Y or N |
| locType | No | String | Order Location Type - must be S, W or SW |
| offsetkey | No | String (12) | Offset key (Order Number) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1202 Input Parameter for “MerchIntegrations/services/procurement/order/ {orderNo}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-1203 PageResultsItemsMerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1204 MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for purchase order details. |
| docType | No | String (1) | This feld indicates the type of document this message is for. Valid value is P for purchase order. |
| orderNo | No | Number(12,0) | This feld contains the number to uniquely identify an order within the system. |
| status | No | String (1) | This feld indicates the current status of the order. |
| orderType | No | String (3) | This feld indicates the type of order. |
| orderTypeDescription | No | String (250) | This feld contains the order type description. |
Table 5-1204 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dept | No | Number(4,0) | This feld contains the department number for orders limited to a single department and will be null for orders involving items in more than one department. |
| deptName | No | String (120) | This feld contains the name of the department. |
| buyer | No | Number(4,0) | This feld contains the number associated with the buyer for the order. |
| buyerName | No | String (120) | This feld contains the name of the authorized buyer. |
| supplier | No | Number(10,0) | This feld contains the vendor number who will provide the merchandise specifed in the order. |
| promotion | No | Number(10,0) | This feld contains the promotion number associated with the order to provide a link between the order dialog and the promotions dialog. |
| promotionDescription | No | String (1000) | This feld contains a description of the promotion. This value comes from Pricing. |
| qualityControlInd | No | String (1) | This feld determines whether or not quality control will be required when items for this order are received. |
| notBeforeDate | No | date | This feld contains the frst date that delivery of the order will be accepted. |
| notAfterDate | No | date | This feld contains the last date that delivery of the order will be accepted. |
Table 5-1204 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| otbEowDate | No | date | This feld contains the OTB budget bucket the order amount should be placed into. |
| earliestShipDate | No | date | This feld contains the earliest date when the items on the purchase order can be shipped by the supplier. This represents the earliest ship date of all the items on the order. |
| latestShipDate | No | date | This feld contains the date after which the items on the purchase order can no longer be shipped by the supplier. This represents the greatest latest ship date of all the items on the order. |
| closeDate | No | date | This feld contains the date when the order is closed. |
| terms | No | String (15) | This feld is an indicator identifying the sales terms for the order. These terms specify when payment is due and if any discounts exist for early payment. |
| termsCode | No | String (240) | This feld contains the description associated with the terms code. |
| freightTerms | No | String (30) | This feld contains an indicator that references what freight terms are related to the order. Valid values are in the FREIGHT_TERMS table. |
| paymentMethod | No | String (6) | This feld indicates how the purchase order will be paid. |
| paymentMethodDescri ption | No | String (250) | This feld contains the description of the payment method. |
Table 5-1204 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| backhaulType | No | String (6) | This feld contains the type of backhaul allowance that will be applied to the order. |
| backhaulTypeDescripti on | No | String (250) | This feld contains the description of the backhaul type. |
| backhaulAllowance | No | Number(20,4) | This feld contains the backhaul allowance value. |
| shipMethod | No | String (6) | This feld contains the method used to ship the items on the purchase order from the country of origin to the country of import. |
| shipMethodDescriptio n | No | String (250) | This feld contains the description for the shipping method. |
| purchaseType | No | String (6) | This feld indicates what is included in the supplier’s cost of the item. |
| purchaseTypeDescripti on | No | String (250) | This feld contains the description for the purchase type. |
| shipPayMethod | No | String (2) | This feld contains the code indicating the payment terms for freight charges associated with the order. |
| shipPayMethodDescrip tion | No | String (250) | This feld contains the description of the given shipment payment method. |
| fobTransactionRespon sibility | No | String (2) | This feld contains the code indicating the type of the location that is responsible for the transportation of the order. |
| fobTransactionRespon sibilityCodeDescriptio n | No | String (250) | This feld contains the description of the FOB transaction responsibility code. |
Table 5-1204 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fobTransactionRespon sibilityDescription | No | String (250) | This feld contains a user-entered feld describing the code for the location responsible for the transportation of the order. |
| fobTitlePass | No | String (2) | This feld contains an indicator used to determine where the title for goods is passed from the vendor to the purchaser. Examples include city, factory, or origin. |
| fobTitlePassCodeDescr iption | No | String (250) | This feld contains the description of the FOB title pass code. |
| fobTitlePassDescriptio n | No | String (250) | This feld contains a user-entered feld describing the code where the title of the merchandise is to be passed. It could be a city name, factory name, or place of origin. |
| vendorOrderNo | No | String (15) | This feld contains the vendor’s unique identifying number for an order. These orders may have originated by the vendor through the EDI process or this number can be associated with a Merchandising order when the order is created online. |
| exchangeRate | No | Number(20,10) | This feld contains the rate of exchange used for the purchase order between the order and primary currencies. |
| factory | No | String (10) | This feld contains the factory at which the items on the purchase order are made. This feld is only available when the system is running Import functionality. |
Table 5-1204 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| factoryDescription | No | String (240) | This feld contains the description of the factory. |
| agent | No | String (10) | This feld contains the agent that is used in the purchase of the items on the purchase order. This feld is only available when the system is running Import functionality. |
| agentDesc | No | String (240) | This feld contains the description of the agent. |
| dischargePort | No | String (5) | This feld contains the port at which the items on the purchase order will enter the country of import. This feld is only available when the system is running Import functionality. |
| dischargePortDescripti on | No | String (150) | This feld contains the description of the discharge port. |
| ladingPort | No | String (5) | This feld contains the port from which the items on the purchase order are shipped. This feld is only available when the system is running Import functionality. |
| ladingPortDescription | No | String (150) | This feld contains the description of the lading port. |
| freightContractNo | No | String (10) | This feld contains the number of the contract with a shipper that will give specifc freight rates. This feld is only available when the system is running Import functionality. |
| poType | No | String (4) | This feld contains the value associated with the PO_TYPE for the order. Valid values are in the PO_TYPE table. |
Table 5-1204 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| poTypeDescription | No | String (120) | This feld contains the description of the PO type. |
| preMarkInd | No | String (1) | This feld indicates whether or not a supplier has agreed to break an order into separate boxes so that the boxes can be sent directly to stores. |
| currencyCode | No | String (3) | This feld contains the currency code for the order. When creating an order within Merchandising, this feld will always default to the currency of the supplier, but it can be overwritten. |
| contractNo | No | Number(6,0) | This feld contains the contract number associated with this order. |
| pickupLocation | No | String (250) | This feld contains the location at which the order will be picked up, if the order is a pickup order. |
| pickupNo | No | String (25) | This feld contains the reference number for the pickup order. |
| pickupDate | No | date | This feld contains the date when the order can be picked up from the supplier. This feld is only required if the purchase type of the order is Pickup. |
| appointmentDatetime | No | date | This feld contains the date of the receiving appointment at the warehouse. |
| comments | No | String (2000) | This feld contains the miscellaneous comments attached to the purchase order. |
| writtenDate | No | date | This feld specifes the date the order was created within the system. |
Table 5-1204 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderOriginatedInd | No | Number(2,0) | This feld indicates where the order originated. |
| originalApprovalDate | No | date | This feld specifes the date that the order was originally approved. |
| originalApprovalId | No | String (254) | This feld indicates where the order was approved. It will be the user ID of the person approving the order for all orders manually approved online and will contain Replen for orders automatically approved in the replenishment process. |
| ediSentInd | No | String (1) | This feld indicates whether or not the order has been sent via EDI. |
| ediOrderInd | No | String (1) | This feld indicates whether or not the order will be transmitted to the supplier via an Electronic Data Exchange transaction. |
| importOrderInd | No | String (1) | This feld indicates if the purchase order is an import order. |
| importCountryId | No | String (3) | This feld specifes the identifer of the country into which the items on the order are being imported. |
| partnerType1 | No | String (6) | This feld contains partner 1 type. |
| partner1 | No | String (10) | This feld contains additional partner 1. |
| partnerType2 | No | String (6) | This feld contains partner 2 type. |
| partner2 | No | String (10) | This feld contains additional partner 2. |
| partnerType3 | No | String (6) | This feld contains partner 3 type. |
Table 5-1204 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| partner3 | No | String (10) | This feld contains additional partner 3. |
| importType | No | String (1) | This feld specifes the importer/exporter assigned to the supplier of the purchase order. |
| importId | No | Number(10,0) | This feld identifes the importer/exporter assigned to the supplier. This should reference the WH.WH column. |
| clearingZoneId | No | String (5) | This feld contains the clearing zone ID. |
| routingLocationId | No | String (5) | This feld contains the routing location for the import order. |
| deliverySupplier | No | Number(10,0) | This feld holds the supplier or supplier site from where the goods are delivered. |
| wfOrderNo | No | Number(10,0) | This feld contains the franchise order number for which the purchase order was created. |
| exchangeRateInd | No | String (1) | This feld contains the exchange rate indicator on a document. |
| customerOrderNo | No | String (48) | This feld holds the master customer order number from the Order Management System. |
| fullfllmentOrderNo | No | String (48) | This feld holds the number from the Order Management System (OMS) related to the fulfllment details. One or more fulfllment orders could relate back to a single customer order in OMS. |
| customerOrderInd | No | String (1) | This feld indicates whether the purchase order is linked to a customer order. |
Table 5-1204 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This column holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This column holds the date and time when the record was last updated (UTC). |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the purchase order. |
| details | No | Collection of Object | This list holds details for the purchase order. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1205 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1206 OrderDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | This feld contains the unique alphanumeric value to identify the item included in the purchase order. |
| referenceItem | No | String (25) | This feld contains the unique alphanumeric value to identify the reference item. |
| physicalLocationType | No | String (1) | This feld contains the type of location in the location feld. |
| physicalLocation | No | Number(10,0) | This feld contains the actual physical location that the item will be ordered to. This feld may contain a store or a physical warehouse. |
| virtualWarehouse | No | Number(10,0) | This feld contains the virtual warehouse for the order location when the physical location type is warehouse. |
| physicalStoreType | No | String (6) | This feld indicates the store type of the physical location store. This is only populated if physical location type is store. |
| physicalStockholdingI nd | No | String (1) | This feld indicates whether the physical location store is stockholding or not. |
| physicalQuantityOrder ed | No | Number(12,4) | This feld indicates the total quantity ordered to the physical location. |
| unitCost | No | Number(20,4) | This feld contains the unit cost for the item/ location on the order, including discounts (deal/bracket/ allowance), but not landed cost components. This feld is stored in order currency. |
Table 5-1206 (Cont.) OrderDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplierInitialUnitCost | No | Number(20,4) | Initial supplier unit cost of the item/ location on the order, before deals were applied. When discounts must be recalculated on an approved order, this cost will be used as the starting point. This value is captured as the current item/ location/supplier/ origin country cost at the time of order approval. |
| unitRetail | No | Number(20,4) | This feld contains the current retail price in local currency for the SKU at this location. |
| prescaledQuantity | No | Number(12,4) | This feld contains the order quantity (system generated or manually generated) for the item/location before order scaling processing was performed. |
| originalReplenishment Quantity | No | Number(12,4) | This feld contains the original order quantity generated by the replenishment process. |
| costSource | No | String (4) | This feld indicates the basis for the cost of the item/location on the order and whether deals or brackets have been applied. |
| lastRoundedQuantity | No | Number(12,4) | This feld holds the most recent system rounded order quantity value for the line item. |
| lastGroupRoundedQua ntity | No | Number(12,4) | This feld holds the last system rounded order quantity for the rounding group the location is a part of. |
Table 5-1206 (Cont.) OrderDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountryId | No | String (3) | This feld contains the identifer of the country from which the item is being sourced. |
| supplierPackSize | No | Number(12,4) | This feld contains the supplier pack size for this order/item. |
| earliestShipDate | No | date | This feld contains the earliest date that the item can be shipped by the supplier. |
| latestShipDate | No | date | This feld contains the date after which the item can not be shipped by the supplier. |
| pickupLocation | No | String (250) | This feld contains the location at which the order will be picked up, if the order is a pickup order. |
| pickupNo | No | String (25) | This feld is not used in Merchandising. |
| packingMethod | No | String (6) | This feld indicates whether the packing method of the item in the container is fat or hanging. Valid values are defned under code type PKMT. |
| roundLevel | No | String (6) | This feld will be used to determine how order quantities will be rounded to case, layer, and pallet. |
| transferOrderLinkId | No | Number(12,0) | This feld contains a reference number to link the item on the transfer to any purchase orders that have been created to allow the from location (i.e. warehouse) on the transfer to fulfll the transfer quantity to the to location (i.e. store) on the transfer. |
Table 5-1206 (Cont.) OrderDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| estimatedInStockDate | No | date | This feld contains the date that the item on the PO is expected to be available to ship from the PO location to another location. |
| transactionUom | No | String (4) | This feld holds the original transaction unit of measure to be passed on to the store system. It is only used for customer direct orders coming from the order management system. All quantities on the payload are expressed in the item’s standard unit of measure. |
| itemLineNo | No | Number(10,0) | This feld indicates the item line number from customer orders. |
| orderItemCreateDateT ime | No | dateTime | This column holds the record order detail item creation date and time (UTC). |
| orderItemUpdateDate Time | No | dateTime | This column holds the date and time when the order detail item was last updated (UTC). |
| orderItemLocCreateDa teTime | No | dateTime | This column holds the record order detail item location creation date and time (UTC). |
| orderItemLocUpdateD ateTime | No | dateTime | This column holds the date and time when the order detail item location was last updated (UTC). |
| orderItemCustomFlex Attribute | No | Collection of Object | This list holds custom fex attributes for purchase order item details. |
| orderItemLocationCus tomFlexAttribute | No | Collection of Object | This list holds custom fex attributes for purchase order item location details. |
Table 5-1207 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"docType": "P",
"orderNo": 464690012,
"status": "A",
"orderType": "N/B",
"orderTypeDescription": null,
"dept": 1,
"deptName": null,
"buyer": 1000,
"buyerName": null,
"supplier": 2400,
"promotion": 41,
"promotionDescription": null,
"qualityControlInd": "Y",
"notBeforeDate": "2001-12-31",
"notAfterDate": "2001-12-31",
"otbEowDate": "2001-12-31",
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"closeDate": "2001-12-31",
"terms": "02",
"termsCode": null,
"freightTerms": "03",
"paymentMethod": "LC",
"paymentMethodDescription": null,
"backhaulType": null,
"backhaulTypeDescription": null,
"backhaulAllowance": 1.0,
"shipMethod": "32",
"shipMethodDescription": null,
"purchaseType": "FOB",
"purchaseTypeDescription": null,
"shipPayMethod": "PO",
"shipPayMethodDescription": null,
"fobTransactionResponsibility": "CA",
"fobTransactionResponsibilityCodeDescription": null,
"fobTransactionResponsibilityDescription": "US",
"fobTitlePass": "CC",
"fobTitlePassCodeDescription": null,
"fobTitlePassDescription": "US",
"vendorOrderNo": "9987001",
"exchangeRate": 2,
"factory": "100",
"factoryDescription": null,
"agent": "007",
"agentDesc": null,
"dischargePort": "480",
"dischargePortDescription": null,
"ladingPort": "7",
"ladingPortDescription": null,
"freightContractNo": "111",
"poType": "4000",
"poTypeDescription": null,
"preMarkInd": "Y",
"currencyCode": "USD",
"contractNo": 1,
"pickupLocation": null,
"pickupNo": null,
"pickupDate": "2001-12-31",
"appointmentDatetime": "2001-12-31",
"comments": "Create Order",
"writtenDate": "2001-12-31",
"orderOriginatedInd": 2,
"originalApprovalDate": "2001-12-31",
"originalApprovalId": null,
"ediSentInd": null,
"ediOrderInd": "Y",
"importOrderInd": null,
"importCountryId": "US",
"partnerType1": "AG",
"partner1": "007",
"partnerType2": "E",
"partner2": "4678",
"partnerType3": null,
"partner3": null,
"importType": "W",
"importId": 10001,
"clearingZoneId": null,
"routingLocationId": null,
"deliverySupplier": 1,
"wfOrderNo": 1,
"exchangeRateInd": null,
"customerOrderNo": null,
"fullfillmentOrderNo": null,
"customerOrderInd": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"details": [
{
"item": "103900095",
"referenceItem": null,
"physicalLocationType": "W",
"physicalLocation": 6000,
"virtualWarehouse": 1,
"physicalStoreType": null,
"physicalStockholdingInd": null,
"physicalQuantityOrdered": 25,
"unitCost": 45.2,
"supplierInitialUnitCost": 1.0,
"unitRetail": 1.0,
"prescaledQuantity": 1.0,
"originalReplenishmentQuantity": 1.0,
"costSource": null,
"lastRoundedQuantity": 1.0,
"lastGroupRoundedQuantity": 1.0,
"originCountryId": "IN",
"supplierPackSize": 1,
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"pickupLocation": null,
"pickupNo": null,
"packingMethod": null,
"roundLevel": null,
"transferOrderLinkId": 1,
"estimatedInStockDate": "2001-12-31",
"transactionUom": null,
"itemLineNo": 1,
"orderItemCreateDateTime": "2001-12-31T23:59:59.000Z",
"orderItemUpdateDateTime": "2001-12-31T23:59:59.000Z",
"orderItemLocCreateDateTime": "2001-12-31T23:59:59.000Z",
"orderItemLocUpdateDateTime": "2001-12-31T23:59:59.000Z",
"orderItemCustomFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"orderItemLocationCustomFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ORDHEAD | Yes | No | No | No |
| ORDHEAD_CFA_EXT | Yes | No | No | No |
| ORDSKU_CFA_EXT | Yes | No | No | No |
| ORDLOC_CFA_EXT | Yes | No | No | No |
| MERCHAPI_EXT_ORDER | Yes | Yes | Yes | Yes |
| V_MERCHAPI_EXT_ORDER_JSON | Yes | No | No | No |
| ICL_RMS_ORDER | Yes | No | Yes | Yes |
Get Purchase Order Details by Order Number
Endpoints
MerchIntegrations/services/procurement/order
MerchIntegrations/services/procurement/order/{orderNo}
Functional Area
Purchase Orders
Business Overview
This service publishes external purchase orders to downstream consuming systems. The payload includes order header and line-location detail, along with supplier-sourcing, location, and customer-order enrichment. The JSON view returns orders only when ORDHEAD.STATUS is A, W, S, or C, ORDHEAD.ORIG_APPROVAL_DATE is not null, and ORDHEAD.ORDER_TYPE <> ‘DSD’, so DSD orders and orders that have never crossed an approval event are not included. Worksheet and submitted statuses can appear in the payload only after the order has already been approved at least once, and orderLocationType is derived as S, W, or SW depending on whether the order locations are stores, warehouses, or a mix of both.
The publication for order based on order detail line is only when unit cost or estimated in stock date or quantity ordered is changed. This service will not publish orders when shipping or receiving of the order has started.
Technical Details
This service follows the Publish API cache architecture in which the REST service serves pregenerated JSON from an integration cache table that is initially seeded and then maintained through asynchronous delta processing. For overall enablement, scheduling, and guidance on how publish api works and how webhook for this api can be implemented to stream the data out, refer to the white paper Publish APIs - Customer Enablement Overview .
Core business tables: ORDHEAD, ORDLOC
Additional business tables: ORDSKU, ORDCUST, ORDCUST_DETAIL, ITEM_SUPP_COUNTRY, STORE, WH, DEPS, BUYER, RPM_PROMO, CODE_DETAIL, V_TERMS_HEAD_TL, PO_TYPE, V_PARTNER_TL, V_OUTLOC_TL, ORDHEAD_CFA_EXT, ORDSKU_CFA_EXT, ORDLOC_CFA_EXT
JSON cache table: MERCHAPI_EXT_ORDER
JSON generation view: V_MERCHAPI_EXT_ORDER_JSON
Builds the header from ORDHEAD, the detail array from ORDLOC and ORDSKU, OMS linkage from ORDCUST and ORDCUST_DETAIL, item-supplier sourcing attributes from ITEM_SUPP_COUNTRY, location enrichment from WH and STORE, descriptive lookup values from DEPS, BUYER, RPM_PROMO, CODE_DETAIL, V_TERMS_HEAD_TL, PO_TYPE, V_PARTNER_TL, and V_OUTLOC_TL, and header, item, and item-location custom flex attributes from MERCHAPI_EXT_ORDER_CFA, MERCHAPI_EXT_ORDER_ITEM_CFA, and MERCHAPI_EXT_ORD_ITEM_LOC_CFA.
The view only publishes orders where ORDHEAD.STATUS is one of A, W, S, or C, ORDHEAD.ORIG_APPROVAL_DATE is not null, and ORDHEAD.ORDER_TYPE <> ‘DSD’.
This means DSD orders and orders that have never crossed an approval event are not returned, even though worksheet and submitted statuses can still appear later in the payload after the order has already been approved once.
Initial Seeding and post enablement rebuild/repair
Initial seeding and rebuild pull published rows from V_MERCHAPI_EXT_ORDER_JSON. No additional filter criteria were identified beyond the cache-build logic.
Mark cache rows deleted when the order no longer exists in V_MERCHAPI_EXT_ORDER_JSON.
ICL (Integration Change Log) table: ICL_RMS_ORDER (ICL consumer name = MERCHAPI)
ICL entries are created using triggers on ORDHEAD, ORDLOC, ORDHEAD_CFA_EXT, ORDLOC_CFA_EXT, and ORDSKU_CFA_EXT.
Batch Configuration. Asynchronous delta processing is supported using Background engine and also via POM scheduling. Choose one.
Process configuration name: API_EXT_ORDER
To enable via Background engine set BACKGROUND_RUN_FLAG to Y and review the BACKGROUND_RUN_INTERVAL_SECOND parameter.
POM Batch schedule process and job: MERCHAPI_DELTA_EXT_ORDER_ADHOC_PROCESS → MERCHAPI_EXT_ORDER_ADHOC_JOB
Webhook configuration api name: procurement/order
Special handling
Additional GET query parameters: supplier, orderOriginatedInd, notBeforeDate, notAfterDate, importOrderInd, locType.
These filters are not backed by dedicated cache-table indexes. At high volume, use them only as additional criteria on top of a small-window delta fetch and not for full downloads.
Performance Considerations
For customers expecting high to very high publish volume from this API, sizing and operational tuning should be addressed early in the implementation lifecycle. Initial cache seeding, ongoing delta processing, full extracts, and incremental downloads or webhook-driven delivery have different runtime characteristics and should be evaluated separately. The available configuration for this service should therefore be reviewed and validated against the customer’s projected production data profile, including expected volume, message size, and access pattern, with the key performance-related configuration for this service covering the following:
Multi-threading and commit control
This service supports multi-threaded execution for both initial seeding and delta processing. Thread count is controlled through API_NO_OF_THREADS, and commit sizing is controlled through API_COMMIT_MAX_COUNTER.
For initial seeding, thread and commit settings should be chosen together based on expected row volume, average message size, and the complex SQL query required to build the message from multiple base and supporting tables. Common starting points for large-volume seeding are 8, 16, or 32 threads. Values of 48 or 64 threads should be considered only after testing and with awareness of competing workload in the environment.
API_COMMIT_MAX_COUNTER should be sized together with the thread setting. Typical values can range from about 100 to 1,000 rows, with higher values such as 10,000 used in some cases after testing. Where payloads are larger or the source SQL is heavier because of the number of contributing tables, a lower thread count with a higher commit value may perform better.
For delta processing, the same parameters apply. The seeding commit setting is usually a reasonable starting point, but where qualifying business events can create short-term spikes, the commit value may need to remain on the lower side so backlog drains in smaller units of work.
Dropping indexes and constraints during seeding
This option applies only to initial seeding, including truncate-and-load execution. When thread and commit settings are high, concurrent inserts can increase index maintenance overhead and slow the load.
To reduce that overhead, DROP_INDEX_ON_REFRESH can be enabled so indexes and constraints are dropped before seeding and rebuilt after the load completes.
This can improve data-load throughput, but the overall refresh plan should also account for the additional time needed for index rebuild after the seeding step finishes. GATHER_STATS_ON_REFRESH should normally remain enabled unless testing shows a need to change it.
REST fetch considerations
REST page size should be selected based on average message size so that the average response remains below about 10 MB per call. Common page-limit values are 500, 1,000, 5,000, or 10,000 rows, and very small limits, especially below 100, should generally be avoided.
For full downloads, do not provide the since query parameter so the database can favor the primary-key access path. For delta downloads, use a small time window, typically a few minutes and at most a few hours, so the eligible row set on the LAST_UPDATE_DATETIME index remains small.
Wider delta windows, especially multi-day windows that can arise during outages or data recovery, generally do not perform well. For such scenarios, keeping BUILD_HISTOGRAM enabled allows the service to support recovery through smaller, more selective polling windows using the optimalBefore query parameter.
In this catch-up pattern, for requests up to 30 days in the past, the client provides optimalBefore and leaves before empty. The client then uses the returned before timestamp to continue polling incrementally until the backlog is cleared, and then resumes the normal shortwindow delta pattern. Hourly histogram processing groups LAST_UPDATE_DATETIME values into buckets of 10,000 rows in MERCHAPI_TIMESTAMP_HISTOGRAM using the shared HISTOGRAM_ROW_COUNT configuration.
Service Type
GET
ReST URL
MerchIntegrations/services/procurement/order
MerchIntegrations/services/procurement/order/{orderNo}
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| since | No | String | Since Date (Example: 2010-12-31T23:59:59.99 9Z) |
| before | No | String | Before Date (Example: 2040-12-31T23:59:59.99 9Z) |
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | No | String (10) | Supplier |
| orderOriginatedInd | No | Number | Order Orginated Indicator |
| notBeforeDate | No | String | Not Before Date (Example: 2023-12-31) |
| notAfterDate | No | String | Not After Date (Example: 2023-12-31) |
| importOrderInd | No | String | Import Order Indicator - must be Y or N |
| locType | No | String | Order Location Type - must be S, W or SW |
| offsetkey | No | String (12) | Offset key (Order Number) |
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| optimalBefore | No | String | Enables histogram- based calculation of the before timestamp when before is not provided. Valid values are Y or N. Default value is N. |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Table 5-1208 Input Parameter for “MerchIntegrations/services/procurement/order/ {orderNo}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number | |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
Table 5-1208 (Cont.) Input Parameter for “MerchIntegrations/services/procurement/ order/{orderNo}“
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Output
Table 5-1209 PageResultsItemsMerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count for pagination supported request |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1210 MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| action | No | String (6) | Action for purchase order details. |
| docType | No | String (1) | This feld indicates the type of document this message is for. Valid value is P for purchase order. |
| orderNo | No | Number(12,0) | This feld contains the number to uniquely identify an order within the system. |
Table 5-1210 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | No | String (1) | This feld indicates the current status of the order. |
| orderType | No | String (3) | This feld indicates the type of order. |
| orderTypeDescription | No | String (250) | This feld contains the order type description. |
| dept | No | Number(4,0) | This feld contains the department number for orders limited to a single department and will be null for orders involving items in more than one department. |
| deptName | No | String (120) | This feld contains the name of the department. |
| buyer | No | Number(4,0) | This feld contains the number associated with the buyer for the order. |
| buyerName | No | String (120) | This feld contains the name of the authorized buyer. |
| supplier | No | Number(10,0) | This feld contains the vendor number who will provide the merchandise specifed in the order. |
| promotion | No | Number(10,0) | This feld contains the promotion number associated with the order to provide a link between the order dialog and the promotions dialog. |
| promotionDescription | No | String (1000) | This feld contains a description of the promotion. This value comes from Pricing. |
| qualityControlInd | No | String (1) | This feld determines whether or not quality control will be required when items for this order are received. |
| notBeforeDate | No | date | This feld contains the frst date that delivery of the order will be accepted. |
Table 5-1210 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| notAfterDate | No | date | This feld contains the last date that delivery of the order will be accepted. |
| otbEowDate | No | date | This feld contains the OTB budget bucket the order amount should be placed into. |
| earliestShipDate | No | date | This feld contains the earliest date when the items on the purchase order can be shipped by the supplier. This represents the earliest ship date of all the items on the order. |
| latestShipDate | No | date | This feld contains the date after which the items on the purchase order can no longer be shipped by the supplier. This represents the greatest latest ship date of all the items on the order. |
| closeDate | No | date | This feld contains the date when the order is closed. |
| terms | No | String (15) | This feld is an indicator identifying the sales terms for the order. These terms specify when payment is due and if any discounts exist for early payment. |
| termsCode | No | String (240) | This feld contains the description associated with the terms code. |
| freightTerms | No | String (30) | This feld contains an indicator that references what freight terms are related to the order. Valid values are in the FREIGHT_TERMS table. |
| paymentMethod | No | String (6) | This feld indicates how the purchase order will be paid. |
Table 5-1210 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| paymentMethodDescri ption | No | String (250) | This feld contains the description of the payment method. |
| backhaulType | No | String (6) | This feld contains the type of backhaul allowance that will be applied to the order. |
| backhaulTypeDescripti on | No | String (250) | This feld contains the description of the backhaul type. |
| backhaulAllowance | No | Number(20,4) | This feld contains the backhaul allowance value. |
| shipMethod | No | String (6) | This feld contains the method used to ship the items on the purchase order from the country of origin to the country of import. |
| shipMethodDescriptio n | No | String (250) | This feld contains the description for the shipping method. |
| purchaseType | No | String (6) | This feld indicates what is included in the supplier’s cost of the item. |
| purchaseTypeDescripti on | No | String (250) | This feld contains the description for the purchase type. |
| shipPayMethod | No | String (2) | This feld contains the code indicating the payment terms for freight charges associated with the order. |
| shipPayMethodDescrip tion | No | String (250) | This feld contains the description of the given shipment payment method. |
| fobTransactionRespon sibility | No | String (2) | This feld contains the code indicating the type of the location that is responsible for the transportation of the order. |
| fobTransactionRespon sibilityCodeDescriptio n | No | String (250) | This feld contains the description of the FOB transaction responsibility code. |
Table 5-1210 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fobTransactionRespon sibilityDescription | No | String (250) | This feld contains a user-entered feld describing the code for the location responsible for the transportation of the order. |
| fobTitlePass | No | String (2) | This feld contains an indicator used to determine where the title for goods is passed from the vendor to the purchaser. Examples include city, factory, or origin. |
| fobTitlePassCodeDescr iption | No | String (250) | This feld contains the description of the FOB title pass code. |
| fobTitlePassDescriptio n | No | String (250) | This feld contains a user-entered feld describing the code where the title of the merchandise is to be passed. It could be a city name, factory name, or place of origin. |
| vendorOrderNo | No | String (15) | This feld contains the vendor’s unique identifying number for an order. These orders may have originated by the vendor through the EDI process or this number can be associated with a Merchandising order when the order is created online. |
| exchangeRate | No | Number(20,10) | This feld contains the rate of exchange used for the purchase order between the order and primary currencies. |
| factory | No | String (10) | This feld contains the factory at which the items on the purchase order are made. This feld is only available when the system is running Import functionality. |
Table 5-1210 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| factoryDescription | No | String (240) | This feld contains the description of the factory. |
| agent | No | String (10) | This feld contains the agent that is used in the purchase of the items on the purchase order. This feld is only available when the system is running Import functionality. |
| agentDesc | No | String (240) | This feld contains the description of the agent. |
| dischargePort | No | String (5) | This feld contains the port at which the items on the purchase order will enter the country of import. This feld is only available when the system is running Import functionality. |
| dischargePortDescripti on | No | String (150) | This feld contains the description of the discharge port. |
| ladingPort | No | String (5) | This feld contains the port from which the items on the purchase order are shipped. This feld is only available when the system is running Import functionality. |
| ladingPortDescription | No | String (150) | This feld contains the description of the lading port. |
| freightContractNo | No | String (10) | This feld contains the number of the contract with a shipper that will give specifc freight rates. This feld is only available when the system is running Import functionality. |
| poType | No | String (4) | This feld contains the value associated with the PO_TYPE for the order. Valid values are in the PO_TYPE table. |
Table 5-1210 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| poTypeDescription | No | String (120) | This feld contains the description of the PO type. |
| preMarkInd | No | String (1) | This feld indicates whether or not a supplier has agreed to break an order into separate boxes so that the boxes can be sent directly to stores. |
| currencyCode | No | String (3) | This feld contains the currency code for the order. When creating an order within Merchandising, this feld will always default to the currency of the supplier, but it can be overwritten. |
| contractNo | No | Number(6,0) | This feld contains the contract number associated with this order. |
| pickupLocation | No | String (250) | This feld contains the location at which the order will be picked up, if the order is a pickup order. |
| pickupNo | No | String (25) | This feld contains the reference number for the pickup order. |
| pickupDate | No | date | This feld contains the date when the order can be picked up from the supplier. This feld is only required if the purchase type of the order is Pickup. |
| appointmentDatetime | No | date | This feld contains the date of the receiving appointment at the warehouse. |
| comments | No | String (2000) | This feld contains the miscellaneous comments attached to the purchase order. |
| writtenDate | No | date | This feld specifes the date the order was created within the system. |
Table 5-1210 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderOriginatedInd | No | Number(2,0) | This feld indicates where the order originated. |
| originalApprovalDate | No | date | This feld specifes the date that the order was originally approved. |
| originalApprovalId | No | String (254) | This feld indicates where the order was approved. It will be the user ID of the person approving the order for all orders manually approved online and will contain Replen for orders automatically approved in the replenishment process. |
| ediSentInd | No | String (1) | This feld indicates whether or not the order has been sent via EDI. |
| ediOrderInd | No | String (1) | This feld indicates whether or not the order will be transmitted to the supplier via an Electronic Data Exchange transaction. |
| importOrderInd | No | String (1) | This feld indicates if the purchase order is an import order. |
| importCountryId | No | String (3) | This feld specifes the identifer of the country into which the items on the order are being imported. |
| partnerType1 | No | String (6) | This feld contains partner 1 type. |
| partner1 | No | String (10) | This feld contains additional partner 1. |
| partnerType2 | No | String (6) | This feld contains partner 2 type. |
| partner2 | No | String (10) | This feld contains additional partner 2. |
| partnerType3 | No | String (6) | This feld contains partner 3 type. |
Table 5-1210 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| partner3 | No | String (10) | This feld contains additional partner 3. |
| importType | No | String (1) | This feld specifes the importer/exporter assigned to the supplier of the purchase order. |
| importId | No | Number(10,0) | This feld identifes the importer/exporter assigned to the supplier. This should reference the WH.WH column. |
| clearingZoneId | No | String (5) | This feld contains the clearing zone ID. |
| routingLocationId | No | String (5) | This feld contains the routing location for the import order. |
| deliverySupplier | No | Number(10,0) | This feld holds the supplier or supplier site from where the goods are delivered. |
| wfOrderNo | No | Number(10,0) | This feld contains the franchise order number for which the purchase order was created. |
| exchangeRateInd | No | String (1) | This feld contains the exchange rate indicator on a document. |
| customerOrderNo | No | String (48) | This feld holds the master customer order number from the Order Management System. |
| fullfllmentOrderNo | No | String (48) | This feld holds the number from the Order Management System (OMS) related to the fulfllment details. One or more fulfllment orders could relate back to a single customer order in OMS. |
| customerOrderInd | No | String (1) | This feld indicates whether the purchase order is linked to a customer order. |
Table 5-1210 (Cont.) MerchApiOrder - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| createDateTime | No | dateTime | This column holds the record creation date and time (UTC). |
| updateDateTime | No | dateTime | This column holds the date and time when the record was last updated (UTC). |
| customFlexAttribute | No | Collection of Object | This list holds custom fex attributes for the purchase order. |
| details | No | Collection of Object | This list holds details for the purchase order. |
| cacheTimestamp | No | dateTime | This feld specifes the date and time when the record was fetched into the cache for web service publication (UTC). |
| cacheCreateTimestam p | No | dateTime | This feld specifes the date and time when the record was frst created for web service publication (UTC). |
Table 5-1211 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | No | String (30) | This feld holds the custom fex attribute name. |
| value | No | String (250) | This feld holds the numeric or character value of the custom fex attribute. |
| valueDate | No | date | This feld holds the date value of the custom fex attribute. |
| createDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was created (UTC). |
| updateDateTime | No | dateTime | This feld holds the date and time when the custom fex attribute was last updated (UTC). |
Table 5-1212 OrderDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | This feld contains the unique alphanumeric value to identify the item included in the purchase order. |
| referenceItem | No | String (25) | This feld contains the unique alphanumeric value to identify the reference item. |
| physicalLocationType | No | String (1) | This feld contains the type of location in the location feld. |
| physicalLocation | No | Number(10,0) | This feld contains the actual physical location that the item will be ordered to. This feld may contain a store or a physical warehouse. |
| virtualWarehouse | No | Number(10,0) | This feld contains the virtual warehouse for the order location when the physical location type is warehouse. |
| physicalStoreType | No | String (6) | This feld indicates the store type of the physical location store. This is only populated if physical location type is store. |
| physicalStockholdingI nd | No | String (1) | This feld indicates whether the physical location store is stockholding or not. |
| physicalQuantityOrder ed | No | Number(12,4) | This feld indicates the total quantity ordered to the physical location. |
| unitCost | No | Number(20,4) | This feld contains the unit cost for the item/ location on the order, including discounts (deal/bracket/ allowance), but not landed cost components. This feld is stored in order currency. |
Table 5-1212 (Cont.) OrderDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplierInitialUnitCost | No | Number(20,4) | Initial supplier unit cost of the item/ location on the order, before deals were applied. When discounts must be recalculated on an approved order, this cost will be used as the starting point. This value is captured as the current item/ location/supplier/ origin country cost at the time of order approval. |
| unitRetail | No | Number(20,4) | This feld contains the current retail price in local currency for the SKU at this location. |
| prescaledQuantity | No | Number(12,4) | This feld contains the order quantity (system generated or manually generated) for the item/location before order scaling processing was performed. |
| originalReplenishment Quantity | No | Number(12,4) | This feld contains the original order quantity generated by the replenishment process. |
| costSource | No | String (4) | This feld indicates the basis for the cost of the item/location on the order and whether deals or brackets have been applied. |
| lastRoundedQuantity | No | Number(12,4) | This feld holds the most recent system rounded order quantity value for the line item. |
| lastGroupRoundedQua ntity | No | Number(12,4) | This feld holds the last system rounded order quantity for the rounding group the location is a part of. |
Table 5-1212 (Cont.) OrderDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| originCountryId | No | String (3) | This feld contains the identifer of the country from which the item is being sourced. |
| supplierPackSize | No | Number(12,4) | This feld contains the supplier pack size for this order/item. |
| earliestShipDate | No | date | This feld contains the earliest date that the item can be shipped by the supplier. |
| latestShipDate | No | date | This feld contains the date after which the item can not be shipped by the supplier. |
| pickupLocation | No | String (250) | This feld contains the location at which the order will be picked up, if the order is a pickup order. |
| pickupNo | No | String (25) | This feld is not used in Merchandising. |
| packingMethod | No | String (6) | This feld indicates whether the packing method of the item in the container is fat or hanging. Valid values are defned under code type PKMT. |
| roundLevel | No | String (6) | This feld will be used to determine how order quantities will be rounded to case, layer, and pallet. |
| transferOrderLinkId | No | Number(12,0) | This feld contains a reference number to link the item on the transfer to any purchase orders that have been created to allow the from location (i.e. warehouse) on the transfer to fulfll the transfer quantity to the to location (i.e. store) on the transfer. |
Table 5-1212 (Cont.) OrderDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| estimatedInStockDate | No | date | This feld contains the date that the item on the PO is expected to be available to ship from the PO location to another location. |
| transactionUom | No | String (4) | This feld holds the original transaction unit of measure to be passed on to the store system. It is only used for customer direct orders coming from the order management system. All quantities on the payload are expressed in the item’s standard unit of measure. |
| itemLineNo | No | Number(10,0) | This feld indicates the item line number from customer orders. |
| orderItemCreateDateT ime | No | dateTime | This column holds the record order detail item creation date and time (UTC). |
| orderItemUpdateDate Time | No | dateTime | This column holds the date and time when the order detail item was last updated (UTC). |
| orderItemLocCreateDa teTime | No | dateTime | This column holds the record order detail item location creation date and time (UTC). |
| orderItemLocUpdateD ateTime | No | dateTime | This column holds the date and time when the order detail item location was last updated (UTC). |
| orderItemCustomFlex Attribute | No | Collection of Object | This list holds custom fex attributes for purchase order item details. |
| orderItemLocationCus tomFlexAttribute | No | Collection of Object | This list holds custom fex attributes for purchase order item location details. |
Table 5-1213 LinkItems - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetch and contains the offsetkey which uniquely identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"action": "INSERT",
"docType": "P",
"orderNo": 464690012,
"status": "A",
"orderType": "N/B",
"orderTypeDescription": null,
"dept": 1,
"deptName": null,
"buyer": 1000,
"buyerName": null,
"supplier": 2400,
"promotion": 41,
"promotionDescription": null,
"qualityControlInd": "Y",
"notBeforeDate": "2001-12-31",
"notAfterDate": "2001-12-31",
"otbEowDate": "2001-12-31",
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"closeDate": "2001-12-31",
"terms": "02",
"termsCode": null,
"freightTerms": "03",
"paymentMethod": "LC",
"paymentMethodDescription": null,
"backhaulType": null,
"backhaulTypeDescription": null,
"backhaulAllowance": 1.0,
"shipMethod": "32",
"shipMethodDescription": null,
"purchaseType": "FOB",
"purchaseTypeDescription": null,
"shipPayMethod": "PO",
"shipPayMethodDescription": null,
"fobTransactionResponsibility": "CA",
"fobTransactionResponsibilityCodeDescription": null,
"fobTransactionResponsibilityDescription": "US",
"fobTitlePass": "CC",
"fobTitlePassCodeDescription": null,
"fobTitlePassDescription": "US",
"vendorOrderNo": "9987001",
"exchangeRate": 2,
"factory": "100",
"factoryDescription": null,
"agent": "007",
"agentDesc": null,
"dischargePort": "480",
"dischargePortDescription": null,
"ladingPort": "7",
"ladingPortDescription": null,
"freightContractNo": "111",
"poType": "4000",
"poTypeDescription": null,
"preMarkInd": "Y",
"currencyCode": "USD",
"contractNo": 1,
"pickupLocation": null,
"pickupNo": null,
"pickupDate": "2001-12-31",
"appointmentDatetime": "2001-12-31",
"comments": "Create Order",
"writtenDate": "2001-12-31",
"orderOriginatedInd": 2,
"originalApprovalDate": "2001-12-31",
"originalApprovalId": null,
"ediSentInd": null,
"ediOrderInd": "Y",
"importOrderInd": null,
"importCountryId": "US",
"partnerType1": "AG",
"partner1": "007",
"partnerType2": "E",
"partner2": "4678",
"partnerType3": null,
"partner3": null,
"importType": "W",
"importId": 10001,
"clearingZoneId": null,
"routingLocationId": null,
"deliverySupplier": 1,
"wfOrderNo": 1,
"exchangeRateInd": null,
"customerOrderNo": null,
"fullfillmentOrderNo": null,
"customerOrderInd": null,
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z",
"customFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"details": [
{
"item": "103900095",
"referenceItem": null,
"physicalLocationType": "W",
"physicalLocation": 6000,
"virtualWarehouse": 1,
"physicalStoreType": null,
"physicalStockholdingInd": null,
"physicalQuantityOrdered": 25,
"unitCost": 45.2,
"supplierInitialUnitCost": 1.0,
"unitRetail": 1.0,
"prescaledQuantity": 1.0,
"originalReplenishmentQuantity": 1.0,
"costSource": null,
"lastRoundedQuantity": 1.0,
"lastGroupRoundedQuantity": 1.0,
"originCountryId": "IN",
"supplierPackSize": 1,
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"pickupLocation": null,
"pickupNo": null,
"packingMethod": null,
"roundLevel": null,
"transferOrderLinkId": 1,
"estimatedInStockDate": "2001-12-31",
"transactionUom": null,
"itemLineNo": 1,
"orderItemCreateDateTime": "2001-12-31T23:59:59.000Z",
"orderItemUpdateDateTime": "2001-12-31T23:59:59.000Z",
"orderItemLocCreateDateTime": "2001-12-31T23:59:59.000Z",
"orderItemLocUpdateDateTime": "2001-12-31T23:59:59.000Z",
"orderItemCustomFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
],
"orderItemLocationCustomFlexAttribute": [
{
"name": "attribute1",
"value": "value1",
"valueDate": "2001-12-31",
"createDateTime": "2001-12-31T23:59:59.000Z",
"updateDateTime": "2001-12-31T23:59:59.000Z"
}
]
}
],
"cacheTimestamp": "2001-12-31T23:59:59.000Z",
"cacheCreateTimestamp": "2001-12-31T23:59:59.000Z"
}
],
"hasMore": true,
"limit": 1000,
"count": 1000,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?
limit=1000&since=1970-01-01T00:00:00.001Z&before=2024-01-01T00:00:00.001Z&offs
etkey=1234,XYZ",
"rel": "next"
}
]
}
Table Impact
The list of table includes the data pre-processing for this service along with the table/views queried during the ReST call.
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| MERCHAPI_CONFIG | Yes | No | No | No |
| MERCHAPI_CONSUMER_CONFIG | Yes | No | No | No |
| MERCHAPI_ASYNC_REQUEST | Yes | No | No | No |
| MERCH_BATCH_PARAM | Yes | No | No | No |
| ORDHEAD | Yes | No | No | No |
| ORDHEAD_CFA_EXT | Yes | No | No | No |
| ORDSKU_CFA_EXT | Yes | No | No | No |
| ORDLOC_CFA_EXT | Yes | No | No | No |
| MERCHAPI_EXT_ORDER | Yes | Yes | Yes | Yes |
| V_MERCHAPI_EXT_ORDER_JSON | Yes | No | No | No |
| ICL_RMS_ORDER | Yes | No | Yes | Yes |
Purchase Order Upload Service
The following services are included in this functional area:
-
Create Pre-issued Order Numbers
-
Create Purchase Order Details
-
Create Purchase Order Expenses
-
Create Purchase Order HTS
-
Create Purchase Order HTS Assessments
-
Create Purchase Order Letters of Credit
-
Create Purchase Orders
-
Delete Purchase Order Details
-
Delete Purchase Order Expenses
-
Delete Purchase Order HTS
-
Delete Purchase Order HTS Assessments
-
Delete Purchase Order Letters of Credit
-
Delete Purchase Orders
-
Update Purchase Order Details
-
Update Purchase Order Expenses
-
Update Purchase Order HTS
-
Update Purchase Order HTS Assessments
-
Update Purchase Order Letters of Credit
-
Update Purchase Orders
Create Pre-issued Order Numbers
Functional Area
Purchase Orders
Business Overview
This webservice generates pre-issued order numbers for the calling application with a set expiry date to be used in orders that will later be created and integrated to Merchandising.
Service Type
POST
ReST URL
MerchIntegrations/services/purchaseOrder/preIssuedOrderNumber/create
Input Payload Details
Table 5-1214 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | No | Number (10) | Contains the supplier to which the order number is assigned. |
| quantity | Yes | Number (4) | Contains the number of order numbers to be generated. |
| expiryDays | Yes | Number (4) | Contains the number of days before the pre-issued order numbers expire. |
Sample Input Message
{
"supplier": 2400,
"quantity": 5,
"expiryDays": 14
}
Response Code: 200 (Success)
Table 5-1215 CreateResponse - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNumbers | No | Collection of | References a collection of order |
| Object | numbers generated. |
Table 5-1216 OrderNumbers - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| supplier | No | Number (10) | Contains the supplier to which the order number is assigned. |
| orderNo | Yes | Number (12) | Contains the order number generated in Merchandising. |
| expiryDate | Yes | date | The date when the pre-issued order number will expire. |
Sample Response Message
{
"orderNumbers": [
{
"supplier": 2400,
"orderNo": 90989990,
"expiryDate": "2001-12-31"
}
]
}
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"
]
}
Create Purchase Order Details
Functional Area
Purchase Orders
Business Overview
This webservice is used to create new detail level attributes of the purchase order such as the addition of items and locations in order to keep Merchandising in sync with an external system that is responsible for maintaining purchase orders. Order details can be created for orders in Approved, Worksheet, Submitted or Closed status. The only information needed at the header level is the order number, which if not provided, will cause the message to be rejected. If an item/location combination has the Purchase Type as ‘Consignment / Concession’ for the primary supplier, then orders can only be created from the primary supplier for that location. In case of an order being raised for a parent item which is owned at a location but has consignment / concession child items under it, and the supplier is a non-primary one, then the child items which are not owned at that location will be omitted from the order.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
POST
ReST URL
MerchIntegrations/services/purchaseOrder/details/create
Input Payload Details
Table 5-1217 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | |
| Object |
Table 5-1218 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| approvedBy | No | String (254) | Indicates where the order was approved. It will be the user ID of the person approving the order. |
Table 5-1218 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| details | No | Collection of Object | This references the order detail node. |
| itemDetails | No | Collection of Object | This references the collection of items in the order. |
Table 5-1219 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | An approved, transaction level item. If a pack, it must be an orderable pack (with an order_as_type of ‘P’). This is required if the ref_item feld is not populated. An item/location may be added to the order in worksheet or approved status. |
| location | Yes | Number (10) | An active store or warehouse. If multichannel is on, and a warehouse is being order to, a virtual warehouse is expected. An item/location may be added to the order in worksheet or approved status. |
| locationType | No | String (1) | The location type of the location. Valid values are ‘S’ store and ‘W’ warehouse. This feld cannot be modifed. |
| unitCost | No | Number (20,4) | The cost of the item from the supplier in the order’s currency. This can be modifed if the status is worksheet or approved, but not if any portion of the item’s order quantity is in transit or has been received. If it is not specifed on the message, it will default from the item supplier cost for this location. |
| referenceItem | No | String (25) | The id of a reference item which can be used instead of using the item feld. If the item feld is not populated this feld is required. A ref item/ location may be added to the order in worksheet or approved status. |
| originCountry | No | String (3) | The identifer of the country from which the item is being sourced. This feld cannot be modifed. |
| supplierPackSize | No | Number (12,4) | The supplier pack size for the item on the order. This may be updated in worksheet or approved status. |
Table 5-1219 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| quantityOrdered | No | Number (12,4) | The quantity ordered of item. This can be updated in worksheet or approved status to adjust the quantity of an item/location or cancel an item/ location from the order. |
| cancelInd | No | String (1) | Indicates if the detail record’s quantity should be cancelled. Valid values are ‘Y’es and ‘N’o. |
| reinstateInd | No | String (1) | Indicates if a detail record which was previously cancelled should be reinstated. This will reinstate in the order quantity the amount in the cancelled bucket. Valid values are ’Y’es and ‘N’o. |
| deliveryDate | No | date | The date by which goods are to be delivered. There can be multiple item-locations on the order with different delivery dates. |
| quantityCancelled | No | Number (12,4) | This feld contains the quantity that was left to be ordered when the line item was cancelled. |
| cancelCode | No | String (1) | This feld contains the reason that the line item was cancelled. This feld is required if a line item is cancelled. |
| estimatedInstockDate | No | date | Date that the item on the PO is expected to be available to ship from the PO location to another location. It is calculated as the Order Creation or Approval Date + Supplier Lead Time + Transit Days between the Supplier and the PO/location + Item/ Warehouse Inbound Handling Days (if PO location is a warehouse). |
| earliestShipDate | No | date | The date before which the item can not be shipped by the supplier. |
| latestShipDate | No | date | The date after which the item can not be shipped by the supplier. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes for the order/ location. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
Table 5-1220 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1221 ItemDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | An approved, transaction level item. If a pack, it must be an orderable pack (with an order_as_type of ‘P’). This is required if the ref_item feld is not populated. An item/location may be added to the order in worksheet or approved status. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes for ordsku. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL |
Sample Input Message { "items": [ { "orderNo": 464690012, "approvedBy": null, "dataLoadingDestination": "RMS", "details": [ { "item": "103900095", "location": 6000, "locationType": "W", "unitCost": 45.2, "referenceItem": null, "originCountry": "IN", "supplierPackSize": 1, "quantityOrdered": 25, "cancelInd": null, "reinstateInd": null, "deliveryDate": "2001-12-31", "quantityCancelled": null, "cancelCode": null, "estimatedInstockDate": "2001-12-31", "earliestShipDate": "2001-12-31", "latestShipDate": "2001-12-31",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
]
}
],
"itemDetails": [
{
"item": "103900095",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Create Purchase Order Expenses
Functional Area
Purchase Orders
Business Overview
This webservice is used to create expense information on the purchase order within Merchandising in order to keep it in sync with an external system that is responsible for maintaining purchase orders. It also updates order header information with the values provided in the request if the order is not yet submitted or approved. Expenses may be created alongside the creation of a new order or added to an existing order that has location records defined. Internally, the service sets the status of the order to Worksheet in order to accommodate the modification of expense information for purchase orders in the system that have been submitted or approved. Validation of the new expense information is performed before automatic order re-approval is attempted.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
POST
ReST URL
MerchIntegrations/services/purchaseOrder/expenses/create
Input Payload Details
Table 5-1222 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of order |
| Object | expenses. |
Table 5-1223 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| supplier | No | Number (10) | The identifer of the supplier from which the order will be sourced. This cannot be modifed if details exist for the PO. |
Table 5-1223 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| currencyCode | No | String (3) | The code of the order’s currency. If not populated, the supplier’s currency will be used. This feld can be modifed if the order status is worksheet or approved and the order has not been shipped. |
| terms | No | String (15) | The sales terms of the order. If not populated on the create message, will default to the supplier’s terms. This can be modifed in worksheet or approved status. |
| notBeforeDate | No | date | The frst date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| notAfterDate | No | date | The last date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| otbEowDate | No | date | The end of week date of the OTB bucket used. This can be modifed in worksheet or approved status. |
| dept | No | Number (4) | The department in which are all the items on the order. This feld is required if the system enforces single department ordering. This cannot be modifed if details exist for the PO. |
| status | No | String (1) | The code for the status of the order. Valid values are ‘W’ worksheet and ‘A’ approved for PO creation. It is also possible to modify the status to ‘C’ closed. |
| includeOnOrderInd | No | String (1) | Indicates if the order should be included in on-order calculations. This can be modifed in worksheet or approved status. Valid values are Y and N. |
| writtenDate | No | date | The date the order was created. If this feld is not populated on the message it will default to the time of creation in RMS. It cannot be modifed. |
| origin | No | String (2) | Indicates where the order originated. Valid values include: 2 - Manual, 6 - AIP generated order, 7 , 8, 12 - Consignment Vendor Order. |
| ediPoInd | No | String (1) | Indicates whether or not the order will be transmitted to the supplier via an Electronic Data Exchange transaction. Valid values are: Y = Submit via EDI, N = Do not use EDI. |
Table 5-1223 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| preMarkInd | No | String (1) | This feld indicated whether or not a supplier has agreed to break an order into separate boxes so that the boxes can be sent directly to stores. Valid values are Y and N. |
| approvedBy | No | String (254) | Indicates where the order was approved. It will be the user ID of the person approving the order. |
| commentDesc | No | String (2000) | Any comments pertaining to the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| masterOrderNo | No | Number (12) | This feld indicates the master order number from which child records were created. |
| ladingPort | No | String (5) | This feld indicates the port from which the items on the purchase order are shipped. |
| dischargePort | No | String (5) | This feld indicates the port at which the items on the purchase order will enter the country of import. |
| factory | No | String (10) | This feld indicates the factory at which the items on the purchase order are made. |
| agent | No | String (10) | This feld indicates the agent that is used in the purchase of the items on the purchase order. |
| shipMethod | No | String (6) | This feld indicates the method used to ship the items on the purchase order from the country of origin to the country of import. |
| partnerType1 | No | String (6) | This feld indicates Partner 1 Type. |
| partner1 | No | String (10) | This feld indicates the Additional Partner 1. |
| partnerType2 | No | String (6) | This feld indicates Partner 2 Type. |
| partner2 | No | String (10) | This feld indicates the Additional Partner 2. |
| partnerType3 | No | String (6) | This feld indicates Partner 3 Type. |
| partner3 | No | String (10) | This feld indicates the Additional Partner 3. |
| importCountry | No | String (3) | The identifer of the country into which the items on the order are being imported. |
Table 5-1223 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| purchaseType | No | String (6) | This feld indicates whats included in the suppliers cost of the item. Valid values include C (Cost), CI (Cost and Insurance), CIF (Cost, Insurance and Freight) and FOB (Free on Board). |
| paymentMethod | No | String (6) | This feld indicates the default method for how purchase orders for this site will be paid. Valid values are in the code type PYMT(Payment Method). Examples are Open Account(OA), Letter of Credit(LC) and Wire Transfer(WT). |
| titlePassLocationType | No | String (2) | Contains the code indicating the type of location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and City (CI). |
| titlePassLocation | No | String (250) | Contains the description of the location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. |
| purchaseOrderType | No | String (4) | This feld contains the value associated with the PO_TYPE for the order. |
| orderType | No | String (3) | Indicates the type of order and which Open To Buy bucket will be updated. Valid values include: N/B - Non Basic, ARB - Automatic Reorder of Basic, BRB - Buyer Reorder of Basic, DSD - Direct Store Delivery |
| buyer | No | Number (4) | Contains the number associated with the buyer for the order. |
| location | No | Number (10) | This feld contains the location all items on the order will be delivered to if populated. i. e. It will mean a single location order. |
| locationType | No | String (1) | This feld contains the type of location in the location feld. Valid values are: Valid values are S (Store) or W (Warehouse). |
| promotion | No | Number (10) | Contains the RPCS offer ID associated with the order to provide a link between the order dialog and the promotions dialog. |
| qualityControlInd | No | String (1) | Determines whether or not quality control will be required when items for this order are received. Valid values are Y and N. |
Table 5-1223 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| freightTerms | No | String (30) | Indicator that references what freight terms are related to the order. |
| backhaulType | No | String (6) | This feld contains the type of backhaul allowance that will be applied to the order. Some examples are Calculated or Flat rate. |
| backhaulAllowance | No | Number (20,4) | This feld will contain the backhaul allowance value. |
| shipPayMethod | No | String (2) | Code indicating the payment terms for freight charges associated with the order. Valid values include: CC - Collect, CF - Collect Freight Credited Back to Customer, DF - Defned by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller. |
| transportationResponsibility Type | No | String (2) | Contains the code indicating the type of location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and Country (CC). |
| transportationResponsibility | No | String (250) | Contains the description of the location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. |
| vendorOrderNo | No | String (15) | Contains the vendors unique identifying number for an order. These orders may have originated by the vendor through the EDI process or this number can be associated to a Oracle Retail order when the order is created on-line. |
| freightContractNo | No | String (10) | The number of the contract with a shipper that will give specifc freight rates. This feld is only available when the system is running Import functionality. |
| pickupLocation | No | String (250) | Contains the location at which the order will be picked up, if the order is a Pickup order. |
| pickupNo | No | String (25) | Contains the reference number of the Pickup order. |
| pickupDate | No | date | Contains the date when the order can be picked up from the Supplier. This feld is only required if the Purchase Type of the order is Pickup. |
Table 5-1223 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| appointmentDateTime | No | date-time | This column will hold the date and time of the receiving appointment at the warehouse. |
| importType | No | String (1) | Valid values are IMporter and EXporter. This is the default importer/ exporter assigned to the supplier of the Puchase order. |
| importId | No | Number (10) | This identifes the importer/exporter assigned to the supplier. This should reference the WH. WH folumn with foreign key created. |
| clearingZoneId | No | String (5) | This column will hold the clearing zone id. |
| routingLocation | No | String (5) | This is the default routing location for the import order. FK on OUTLOC. OUTLOC_ID. |
| reApproveInd | No | String (1) | This feld indicates that the update to the corresponding purchase order needs to be performed, and then it should be approved again. Valid values are Y and N. |
| earliestShipDate | No | date | The date before which the item can not be shipped by the supplier. |
| latestShipDate | No | date | The date after which the item can not be shipped by the supplier. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes at the order header level. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| expenses | No | Collection of Object | References the expense associated with a particular item/location of the purchase order. |
Table 5-1224 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1225 Expenses - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This feld contains alphanumeric value that uniquely identifes the item. |
| packItem | No | String (25) | This feld contains alphanumeric value that uniquely identifes the pack. |
| location | Yes | Number (10) | This feld contains the location that item will be ordered to. This feld may contain a store or a warehouse. |
| locationType | Yes | String (1) | This feld contains the type of location in the location feld. Valid values are: S - Store W - Warehouse. |
| component | Yes | String (10) | This feld contains a user specifed code representing a specifc expense found on the ELC_COMP table. |
| computationValueBase | No | String (10) | This feld contains a code representing the base value for calculating the expense. |
| calculationBasis | No | String (1) | This feld contains the basis the expense will be calculated against if there is no CVB code attached to the expense. Valid values are S (Supplier) or O (Order). If the Cost Basis is S then when calculating the expense, the items supplier cost will be used. If the Cost Basis is O then the order unit cost of the item on the order will be used to calculate the expense. The code type for this feld is EXCB. |
| componentRate | Yes | Number (20,4) | This feld contains the rate to be charged against the calculation base of the component (either value or specifc). |
| componentCurrency | Yes | String (3) | This feld contains the currency the expense or assessment is to be entered in. If the Calculation Basis is V (Value), then comp_currency will be NULL. |
| exchangeRate | Yes | Number (20,10) | This feld contains the exchange rate of the individual expense. |
| perCount | No | Number (12,4) | This feld contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10. |
Table 5-1225 (Cont.) Expenses - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| perCountUom | No | String (4) | This feld contains the unit of measure in which the Per Count is specifed. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count UOM would be the Unit of Measure code for Kilograms. |
| nominationFlag1 | Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
| inDuty | Yes | String (1) | If Import Management is enabled in Merchandising (i. e. system_options. import_ind = Y), the inDuty fag is used to indicate if the value of the cost component should be included in total duty. |
Table 5-1225 (Cont.) Expenses - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nominationFlag3 | Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense | Yes | String (1) | See description for nom_fag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_fag_2 is used to indicate the status of a component in duty calculation nom_fag_4 is used to indicate the status of a component in ELC calculation nom_fag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 fags can not be used for any other purposes if ALC is turned on. |
| inAlc | Yes | String (1) | See description for nom_fag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_fag_2 is used to indicate the status of a component in duty calculation nom_fag_4 is used to indicate the status of a component in ELC calculation nom_fag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 fags can not be used for any other purposes if ALC is turned on. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"orderNo": 464690012,
"supplier": 2400,
"currencyCode": "USD",
"terms": "02",
"notBeforeDate": "2001-12-31",
"notAfterDate": "2001-12-31",
"otbEowDate": "2001-12-31",
"dept": null,
"status": "A",
"includeOnOrderInd": "Y",
"writtenDate": "2001-12-31",
"origin": "2",
"ediPoInd": "Y",
"preMarkInd": "Y",
"approvedBy": null,
"commentDesc": "Create Order",
"dataLoadingDestination": "RMS",
"masterOrderNo": null,
"ladingPort": "7",
"dischargePort": "480",
"factory": "100",
"agent": "007",
"shipMethod": "32",
"partnerType1": "AG",
"partner1": "007",
"partnerType2": "E",
"partner2": "4678",
"partnerType3": null,
"partner3": null,
"importCountry": "US",
"purchaseType": "FOB",
"paymentMethod": "LC",
"titlePassLocationType": "FF",
"titlePassLocation": "US",
"purchaseOrderType": "4000",
"orderType": "N/B",
"buyer": 1000,
"location": null,
"locationType": null,
"promotion": 41,
"qualityControlInd": "Y",
"freightTerms": "03",
"backhaulType": null,
"backhaulAllowance": null,
"shipPayMethod": "PO",
"transportationResponsibilityType": "FF",
"transportationResponsibility": "US",
"vendorOrderNo": "9987001",
"freightContractNo": "111",
"pickupLocation": null,
"pickupNo": null,
"pickupDate": null,
"appointmentDateTime": "2001-12-31T23:59:59.123Z",
"importType": "W",
"importId": 10001,
"clearingZoneId": null,
"routingLocation": null,
"reApproveInd": null,
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"expenses": [
{
"item": "103900095",
"packItem": null,
"location": 10001,
"locationType": "W",
"component": "OCFRT",
"computationValueBase": null,
"calculationBasis": null,
"componentRate": 17,
"componentCurrency": "INR",
"exchangeRate": 29,
"perCount": 1,
"perCountUom": "M3",
"nominationFlag1": "N",
"inDuty": "N",
"nominationFlag3": "N",
"inExpense": "+",
"inAlc": "N"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Purchase Order HTS
Functional Area
Purchase Orders
Business Overview
This webservice is used to create Harmonized Tariff Schedules and related assessments within Merchandising in order to keep it in sync with an external system that is responsible for maintaining purchase orders. It also updates order header information with the values provided in the request if the order has not yet been submitted or approved. HTS and Assessments may be created together with the creation of a new import order or added to an existing order. Internally, the service sets the status of the order to Worksheet in order to accommodate the addition of HTS information for purchase orders in the system that have been submitted or approved. Validation of the new HTS information is performed before automatic order reapproval is attempted.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
POST
ReST URL
MerchIntegrations/services/purchaseOrder/hts/create
Input Payload Details
Table 5-1226 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of order HTS |
| Object | records. |
Table 5-1227 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| supplier | No | Number (10) | The identifer of the supplier from which the order will be sourced. This cannot be modifed if details exist for the PO. |
Table 5-1227 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| currencyCode | No | String (3) | The code of the order’s currency. If not populated, the supplier’s currency will be used. This feld can be modifed if the order status is worksheet or approved and the order has not been shipped. |
| terms | No | String (15) | The sales terms of the order. If not populated on the create message, will default to the supplier’s terms. This can be modifed in worksheet or approved status. |
| notBeforeDate | No | date | The frst date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| notAfterDate | No | date | The last date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| otbEowDate | No | date | The end of week date of the OTB bucket used. This can be modifed in worksheet or approved status. |
| dept | No | Number (4) | The department in which are all the items on the order. This feld is required if the system enforces single department ordering. This cannot be modifed if details exist for the PO. |
| status | No | String (1) | The code for the status of the order. Valid values are ‘W’ worksheet and ‘A’ approved for PO creation. It is also possible to modify the status to ‘C’ closed. |
| includeOnOrderInd | No | String (1) | Indicates if the order should be included in on-order calculations. This can be modifed in worksheet or approved status. Valid values are Y and N. |
| writtenDate | No | date | The date the order was created. If this feld is not populated on the message it will default to the time of creation in RMS. It cannot be modifed. |
| origin | No | String (2) | Indicates where the order originated. Valid values include: 2 - Manual, 6 - AIP generated order, 7 , 8, 12 - Consignment Vendor Order. |
| ediPoInd | No | String (1) | Indicates whether or not the order will be transmitted to the supplier via an Electronic Data Exchange transaction. Valid values are: Y = Submit via EDI, N = Do not use EDI. |
Table 5-1227 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| preMarkInd | No | String (1) | This feld indicated whether or not a supplier has agreed to break an order into separate boxes so that the boxes can be sent directly to stores. Valid values are Y and N. |
| approvedBy | No | String (254) | Indicates where the order was approved. It will be the user ID of the person approving the order. |
| commentDesc | No | String (2000) | Any comments pertaining to the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| masterOrderNo | No | Number (12) | This feld indicates the master order number from which child records were created. |
| ladingPort | No | String (5) | This feld indicates the port from which the items on the purchase order are shipped. |
| dischargePort | No | String (5) | This feld indicates the port at which the items on the purchase order will enter the country of import. |
| factory | No | String (10) | This feld indicates the factory at which the items on the purchase order are made. |
| agent | No | String (10) | This feld indicates the agent that is used in the purchase of the items on the purchase order. |
| shipMethod | No | String (6) | This feld indicates the method used to ship the items on the purchase order from the country of origin to the country of import. |
| partnerType1 | No | String (6) | This feld indicates Partner 1 Type. |
| partner1 | No | String (10) | This feld indicates the Additional Partner 1. |
| partnerType2 | No | String (6) | This feld indicates Partner 2 Type. |
| partner2 | No | String (10) | This feld indicates the Additional Partner 2. |
| partnerType3 | No | String (6) | This feld indicates Partner 3 Type. |
| partner3 | No | String (10) | This feld indicates the Additional Partner 3. |
| importCountry | No | String (3) | The identifer of the country into which the items on the order are being imported. |
Table 5-1227 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| purchaseType | No | String (6) | This feld indicates whats included in the suppliers cost of the item. Valid values include C (Cost), CI (Cost and Insurance), CIF (Cost, Insurance and Freight) and FOB (Free on Board). |
| paymentMethod | No | String (6) | This feld indicates the default method for how purchase orders for this site will be paid. Valid values are in the code type PYMT(Payment Method). Examples are Open Account(OA), Letter of Credit(LC) and Wire Transfer(WT). |
| titlePassLocationType | No | String (2) | Contains the code indicating the type of location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and City (CI). |
| titlePassLocation | No | String (250) | Contains the description of the location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. |
| purchaseOrderType | No | String (4) | This feld contains the value associated with the PO_TYPE for the order. |
| orderType | No | String (3) | Indicates the type of order and which Open To Buy bucket will be updated. Valid values include: N/B - Non Basic, ARB - Automatic Reorder of Basic, BRB - Buyer Reorder of Basic, DSD - Direct Store Delivery |
| buyer | No | Number (4) | Contains the number associated with the buyer for the order. |
| location | No | Number (10) | This feld contains the location all items on the order will be delivered to if populated. i. e. It will mean a single location order. |
| locationType | No | String (1) | This feld contains the type of location in the location feld. Valid values are: Valid values are S (Store) or W (Warehouse). |
| promotion | No | Number (10) | Contains the RPCS offer ID associated with the order to provide a link between the order dialog and the promotions dialog. |
| qualityControlInd | No | String (1) | Determines whether or not quality control will be required when items for this order are received. Valid values are Y and N. |
Table 5-1227 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| freightTerms | No | String (30) | Indicator that references what freight terms are related to the order. |
| backhaulType | No | String (6) | This feld contains the type of backhaul allowance that will be applied to the order. Some examples are Calculated or Flat rate. |
| backhaulAllowance | No | Number (20,4) | This feld will contain the backhaul allowance value. |
| shipPayMethod | No | String (2) | Code indicating the payment terms for freight charges associated with the order. Valid values include: CC - Collect, CF - Collect Freight Credited Back to Customer, DF - Defned by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller. |
| transportationResponsibility Type | No | String (2) | Contains the code indicating the type of location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and Country (CC). |
| transportationResponsibility | No | String (250) | Contains the description of the location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. |
| vendorOrderNo | No | String (15) | Contains the vendors unique identifying number for an order. These orders may have originated by the vendor through the EDI process or this number can be associated to a Oracle Retail order when the order is created on-line. |
| freightContractNo | No | String (10) | The number of the contract with a shipper that will give specifc freight rates. This feld is only available when the system is running Import functionality. |
| pickupLocation | No | String (250) | Contains the location at which the order will be picked up, if the order is a Pickup order. |
| pickupNo | No | String (25) | Contains the reference number of the Pickup order. |
| pickupDate | No | date | Contains the date when the order can be picked up from the Supplier. This feld is only required if the Purchase Type of the order is Pickup. |
Table 5-1227 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| appointmentDateTime | No | date-time | This column will hold the date and time of the receiving appointment at the warehouse. |
| importType | No | String (1) | Valid values are IMporter and EXporter. This is the default importer/ exporter assigned to the supplier of the Puchase order. |
| importId | No | Number (10) | This identifes the importer/exporter assigned to the supplier. This should reference the WH. WH folumn with foreign key created. |
| clearingZoneId | No | String (5) | This column will hold the clearing zone id. |
| routingLocation | No | String (5) | This is the default routing location for the import order. FK on OUTLOC. OUTLOC_ID. |
| reApproveInd | No | String (1) | This feld indicates that the update to the corresponding purchase order needs to be performed, and then it should be approved again. Valid values are Y and N. |
| earliestShipDate | No | date | The date before which the item can not be shipped by the supplier. |
| latestShipDate | No | date | The date after which the item can not be shipped by the supplier. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes at the order header level. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| hts | No | Collection of Object | References the HTS code associated with a particular item of the purchase order. |
Table 5-1228 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1229 Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This feld contains an unique alphanumeric value that identifes the item. |
| packItem | No | String (25) | This feld contains alphanumeric value that uniquely identifes the pack. |
| hts | Yes | String (25) | This feld contains an identifer for the Harmonized Tariff Schedule code. |
| status | Yes | String (1) | This feld contains a fag to indicate the status of the Purchase Order/ Item/HTS relationship. Valid values are (W)orksheet and (A)pproved. |
| originCountry | Yes | String (3) | This feld contains the country of manufacture when the HTS tracking level is M. When the HTS tracking level is S, this stores the country of sourcing. |
| importCountry | No | String (3) | This feld contains the country that the item will be imported in to. |
| assessments | No | Collection of Object | References the HTS code assessments associated with a particular item of the purchase order. |
Table 5-1230 Assessments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| component | Yes | String (10) | This feld contains a user specifed code representing the specifc assessment component found on the ELC_COMP table. |
| computationValueBase | No | String (10) | This feld contains a code representing the base value for calculating the assessment. |
| componentRate | Yes | Number (20,4) | This feld contains the rate to be charged against the calculation base. This feld will hold a percentage value if the Calculation Basis of the Component is Value or a monetary amount in the currency defned for the assessment (usually the import country’s currency) if the Calculation Basis is Specifc. |
| perCount | No | Number (12,4) | This feld contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10. |
Table 5-1230 (Cont.) Assessments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| perCountUom | No | String (4) | This feld contains the unit of measure in which the Per Count is specifed. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count UOM would be the Unit of Measure code for Kilograms. |
| nominationFlag1 | Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
| inDuty | Yes | String (1) | If Import Management is enabled in Merchandising (i. e. system_options. import_ind = Y), the inDuty fag is used to indicate if the value of the cost component should be included in total duty. |
Table 5-1230 (Cont.) Assessments - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| nominationFlag3 Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense Yes | String (1) | The inExpense fag is used to indicate if the value of the cost component should be included in total expenses. |
| inAlc Yes | String (1) | The inALC fag is used for cost components where the retailer does not expect to receive an actual value for the charge via an obligation or customs entry. The inALC fag allows the value of the cost component to be included in ALC via direct nomination and indicates to the system that the estimated value on the order should be used as the actual value as well because no other actual will be provided. |
| Sample Input Message | ||
{"collectionSize": 1,"items": [ | ||
{"orderNo": 464690012,"supplier": 2400,"currencyCode": "USD","terms": "02","notBeforeDate": "2001-12-31","notAfterDate": "2001-12-31","otbEowDate": "2001-12-31","dept": null, |
"status": "A",
"includeOnOrderInd": "Y",
"writtenDate": "2001-12-31",
"origin": "2",
"ediPoInd": "Y",
"preMarkInd": "Y",
"approvedBy": null,
"commentDesc": "Create Order",
"dataLoadingDestination": "RMS",
"masterOrderNo": null,
"ladingPort": "7",
"dischargePort": "480",
"factory": "100",
"agent": "007",
"shipMethod": "32",
"partnerType1": "AG",
"partner1": "007",
"partnerType2": "E",
"partner2": "4678",
"partnerType3": null,
"partner3": null,
"importCountry": "US",
"purchaseType": "FOB",
"paymentMethod": "LC",
"titlePassLocationType": "FF",
"titlePassLocation": "US",
"purchaseOrderType": "4000",
"orderType": "N/B",
"buyer": 1000,
"location": null,
"locationType": null,
"promotion": 41,
"qualityControlInd": "Y",
"freightTerms": "03",
"backhaulType": null,
"backhaulAllowance": null,
"shipPayMethod": "PO",
"transportationResponsibilityType": "FF",
"transportationResponsibility": "US",
"vendorOrderNo": "9987001",
"freightContractNo": "111",
"pickupLocation": null,
"pickupNo": null,
"pickupDate": null,
"appointmentDateTime": "2001-12-31T23:59:59.123Z",
"importType": "W",
"importId": 10001,
"clearingZoneId": null,
"routingLocation": null,
"reApproveInd": null,
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"hts": [
{
"item": "103900095",
"packItem": null,
"hts": "9014111112",
"status": "W",
"originCountry": "IN",
"importCountry": "US",
"assessments": [
{
"component": "DTYCAUS",
"computationValueBase": null,
"componentRate": 12,
"perCount": 1,
"perCountUom": "EA",
"nominationFlag1": "N",
"inDuty": "+",
"nominationFlag3": "-",
"inExpense": "N",
"inAlc": "N"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
]
}
}
Create Purchase Order HTS Assessments
Functional Area
Purchase Orders
Business Overview
This webservice is used to create Harmonized Tariff Schedules assessments within Merchandising in order to keep it in sync with an external system that is responsible for maintaining purchase orders. It also updates order header information with the values provided in the request if the order is not yet submitted or approved. Assessments may be created together with the creation of a new import order or added to an existing order. Internally, the service sets the status of the order to Worksheet in order to accommodate the addition of HTS information for purchase orders in the system that have been submitted or approved. Validation of the new and updated information is performed before automatic order re-approval is attempted.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
POST
ReST URL
MerchIntegrations/services/purchaseOrder/hts/assessments/create
Input Payload Details
Table 5-1231 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of order HTS |
| Object | assessment records. |
Table 5-1232 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| supplier | No | Number (10) | The identifer of the supplier from which the order will be sourced. This cannot be modifed if details exist for the PO. |
Table 5-1232 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| currencyCode | No | String (3) | The code of the order’s currency. If not populated, the supplier’s currency will be used. This feld can be modifed if the order status is worksheet or approved and the order has not been shipped. |
| terms | No | String (15) | The sales terms of the order. If not populated on the create message, will default to the supplier’s terms. This can be modifed in worksheet or approved status. |
| notBeforeDate | No | date | The frst date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| notAfterDate | No | date | The last date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| otbEowDate | No | date | The end of week date of the OTB bucket used. This can be modifed in worksheet or approved status. |
| dept | No | Number (4) | The department in which are all the items on the order. This feld is required if the system enforces single department ordering. This cannot be modifed if details exist for the PO. |
| status | No | String (1) | The code for the status of the order. Valid values are ‘W’ worksheet and ‘A’ approved for PO creation. It is also possible to modify the status to ‘C’ closed. |
| includeOnOrderInd | No | String (1) | Indicates if the order should be included in on-order calculations. This can be modifed in worksheet or approved status. Valid values are Y and N. |
| writtenDate | No | date | The date the order was created. If this feld is not populated on the message it will default to the time of creation in RMS. It cannot be modifed. |
| origin | No | String (2) | Indicates where the order originated. Valid values include: 2 - Manual, 6 - AIP generated order, 7 , 8, 12 - Consignment Vendor Order. |
| ediPoInd | No | String (1) | Indicates whether or not the order will be transmitted to the supplier via an Electronic Data Exchange transaction. Valid values are: Y = Submit via EDI, N = Do not use EDI. |
Table 5-1232 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| preMarkInd | No | String (1) | This feld indicated whether or not a supplier has agreed to break an order into separate boxes so that the boxes can be sent directly to stores. Valid values are Y and N. |
| approvedBy | No | String (254) | Indicates where the order was approved. It will be the user ID of the person approving the order. |
| commentDesc | No | String (2000) | Any comments pertaining to the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| masterOrderNo | No | Number (12) | This feld indicates the master order number from which child records were created. |
| ladingPort | No | String (5) | This feld indicates the port from which the items on the purchase order are shipped. |
| dischargePort | No | String (5) | This feld indicates the port at which the items on the purchase order will enter the country of import. |
| factory | No | String (10) | This feld indicates the factory at which the items on the purchase order are made. |
| agent | No | String (10) | This feld indicates the agent that is used in the purchase of the items on the purchase order. |
| shipMethod | No | String (6) | This feld indicates the method used to ship the items on the purchase order from the country of origin to the country of import. |
| partnerType1 | No | String (6) | This feld indicates Partner 1 Type. |
| partner1 | No | String (10) | This feld indicates the Additional Partner 1. |
| partnerType2 | No | String (6) | This feld indicates Partner 2 Type. |
| partner2 | No | String (10) | This feld indicates the Additional Partner 2. |
| partnerType3 | No | String (6) | This feld indicates Partner 3 Type. |
| partner3 | No | String (10) | This feld indicates the Additional Partner 3. |
| importCountry | No | String (3) | The identifer of the country into which the items on the order are being imported. |
Table 5-1232 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| purchaseType | No | String (6) | This feld indicates whats included in the suppliers cost of the item. Valid values include C (Cost), CI (Cost and Insurance), CIF (Cost, Insurance and Freight) and FOB (Free on Board). |
| paymentMethod | No | String (6) | This feld indicates the default method for how purchase orders for this site will be paid. Valid values are in the code type PYMT(Payment Method). Examples are Open Account(OA), Letter of Credit(LC) and Wire Transfer(WT). |
| titlePassLocationType | No | String (2) | Contains the code indicating the type of location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and City (CI). |
| titlePassLocation | No | String (250) | Contains the description of the location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. |
| purchaseOrderType | No | String (4) | This feld contains the value associated with the PO_TYPE for the order. |
| orderType | No | String (3) | Indicates the type of order and which Open To Buy bucket will be updated. Valid values include: N/B - Non Basic, ARB - Automatic Reorder of Basic, BRB - Buyer Reorder of Basic, DSD - Direct Store Delivery |
| buyer | No | Number (4) | Contains the number associated with the buyer for the order. |
| location | No | Number (10) | This feld contains the location all items on the order will be delivered to if populated. i. e. It will mean a single location order. |
| locationType | No | String (1) | This feld contains the type of location in the location feld. Valid values are: Valid values are S (Store) or W (Warehouse). |
| promotion | No | Number (10) | Contains the RPCS offer ID associated with the order to provide a link between the order dialog and the promotions dialog. |
| qualityControlInd | No | String (1) | Determines whether or not quality control will be required when items for this order are received. Valid values are Y and N. |
Table 5-1232 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| freightTerms | No | String (30) | Indicator that references what freight terms are related to the order. |
| backhaulType | No | String (6) | This feld contains the type of backhaul allowance that will be applied to the order. Some examples are Calculated or Flat rate. |
| backhaulAllowance | No | Number (20,4) | This feld will contain the backhaul allowance value. |
| shipPayMethod | No | String (2) | Code indicating the payment terms for freight charges associated with the order. Valid values include: CC - Collect, CF - Collect Freight Credited Back to Customer, DF - Defned by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller. |
| transportationResponsibility Type | No | String (2) | Contains the code indicating the type of location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and Country (CC). |
| transportationResponsibility | No | String (250) | Contains the description of the location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. |
| vendorOrderNo | No | String (15) | Contains the vendors unique identifying number for an order. These orders may have originated by the vendor through the EDI process or this number can be associated to a Oracle Retail order when the order is created on-line. |
| freightContractNo | No | String (10) | The number of the contract with a shipper that will give specifc freight rates. This feld is only available when the system is running Import functionality. |
| pickupLocation | No | String (250) | Contains the location at which the order will be picked up, if the order is a Pickup order. |
| pickupNo | No | String (25) | Contains the reference number of the Pickup order. |
| pickupDate | No | date | Contains the date when the order can be picked up from the Supplier. This feld is only required if the Purchase Type of the order is Pickup. |
Table 5-1232 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| appointmentDateTime | No | date-time | This column will hold the date and time of the receiving appointment at the warehouse. |
| importType | No | String (1) | Valid values are IMporter and EXporter. This is the default importer/ exporter assigned to the supplier of the Puchase order. |
| importId | No | Number (10) | This identifes the importer/exporter assigned to the supplier. This should reference the WH. WH folumn with foreign key created. |
| clearingZoneId | No | String (5) | This column will hold the clearing zone id. |
| routingLocation | No | String (5) | This is the default routing location for the import order. FK on OUTLOC. OUTLOC_ID. |
| reApproveInd | No | String (1) | This feld indicates that the update to the corresponding purchase order needs to be performed, and then it should be approved again. Valid values are Y and N. |
| earliestShipDate | No | date | The date before which the item can not be shipped by the supplier. |
| latestShipDate | No | date | The date after which the item can not be shipped by the supplier. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes at the order header level. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| hts | No | Collection of Object | References the HTS code associated with a particular item of the purchase order. |
Table 5-1233 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1234 Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This feld contains an unique alphanumeric value that identifes the item. |
| packItem | No | String (25) | This feld contains alphanumeric value that uniquely identifes the pack. |
| hts | Yes | String (25) | This feld contains an identifer for the Harmonized Tariff Schedule code. |
| status | Yes | String (1) | This feld contains a fag to indicate the status of the Purchase Order/ Item/HTS relationship. Valid values are (W)orksheet and (A)pproved. |
| originCountry | Yes | String (3) | This feld contains the country of manufacture when the HTS tracking level is M. When the HTS tracking level is S, this stores the country of sourcing. |
| importCountry | No | String (3) | This feld contains the country that the item will be imported in to. |
| assessments | No | Collection of Object | References the HTS code assessments associated with a particular item of the purchase order. |
Table 5-1235 Assessments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| component | Yes | String (10) | This feld contains a user specifed code representing the specifc assessment component found on the ELC_COMP table. |
| computationValueBase | No | String (10) | This feld contains a code representing the base value for calculating the assessment. |
| componentRate | Yes | Number (20,4) | This feld contains the rate to be charged against the calculation base. This feld will hold a percentage value if the Calculation Basis of the Component is Value or a monetary amount in the currency defned for the assessment (usually the import country’s currency) if the Calculation Basis is Specifc. |
| perCount | No | Number (12,4) | This feld contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10. |
Table 5-1235 (Cont.) Assessments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| perCountUom | No | String (4) | This feld contains the unit of measure in which the Per Count is specifed. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count UOM would be the Unit of Measure code for Kilograms. |
| nominationFlag1 | Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
| inDuty | Yes | String (1) | If Import Management is enabled in Merchandising (i. e. system_options. import_ind = Y), the inDuty fag is used to indicate if the value of the cost component should be included in total duty. |
Table 5-1235 (Cont.) Assessments - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| nominationFlag3 Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense Yes | String (1) | The inExpense fag is used to indicate if the value of the cost component should be included in total expenses. |
| inAlc Yes | String (1) | The inALC fag is used for cost components where the retailer does not expect to receive an actual value for the charge via an obligation or customs entry. The inALC fag allows the value of the cost component to be included in ALC via direct nomination and indicates to the system that the estimated value on the order should be used as the actual value as well because no other actual will be provided. |
| Sample Input Message | ||
{"collectionSize": 1,"items": [ | ||
{"orderNo": 464690012,"supplier": 2400,"currencyCode": "USD","terms": "02","notBeforeDate": "2001-12-31","notAfterDate": "2001-12-31","otbEowDate": "2001-12-31","dept": null, |
"status": "A",
"includeOnOrderInd": "Y",
"writtenDate": "2001-12-31",
"origin": "2",
"ediPoInd": "Y",
"preMarkInd": "Y",
"approvedBy": null,
"commentDesc": "Create Order",
"dataLoadingDestination": "RMS",
"masterOrderNo": null,
"ladingPort": "7",
"dischargePort": "480",
"factory": "100",
"agent": "007",
"shipMethod": "32",
"partnerType1": "AG",
"partner1": "007",
"partnerType2": "E",
"partner2": "4678",
"partnerType3": null,
"partner3": null,
"importCountry": "US",
"purchaseType": "FOB",
"paymentMethod": "LC",
"titlePassLocationType": "FF",
"titlePassLocation": "US",
"purchaseOrderType": "4000",
"orderType": "N/B",
"buyer": 1000,
"location": null,
"locationType": null,
"promotion": 41,
"qualityControlInd": "Y",
"freightTerms": "03",
"backhaulType": null,
"backhaulAllowance": null,
"shipPayMethod": "PO",
"transportationResponsibilityType": "FF",
"transportationResponsibility": "US",
"vendorOrderNo": "9987001",
"freightContractNo": "111",
"pickupLocation": null,
"pickupNo": null,
"pickupDate": null,
"appointmentDateTime": "2001-12-31T23:59:59.123Z",
"importType": "W",
"importId": 10001,
"clearingZoneId": null,
"routingLocation": null,
"reApproveInd": null,
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"hts": [
{
"item": "103900095",
"packItem": null,
"hts": "9014111112",
"status": "W",
"originCountry": "IN",
"importCountry": "US",
"assessments": [
{
"component": "DTYCAUS",
"computationValueBase": null,
"componentRate": 12,
"perCount": 1,
"perCountUom": "EA",
"nominationFlag1": "N",
"inDuty": "+",
"nominationFlag3": "-",
"inExpense": "N",
"inAlc": "N"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
]
}
}
Create Purchase Order Letters of Credit
Functional Area
Purchase Orders
Business Overview
This webservice is used to create letter of credit information within Merchandising when the order payment type is Letter of Credit in order to keep it in sync with an external system that is responsible for maintaining purchase orders. It also updates order header information with the values provided in the request if the order has not yet been submitted or approved. For an existing order that has a payment type of Letter of Credit, the modification of header level order information is not necessary; however header level fields, particularly the payment type can be updated in case a letter of credit needs to be attached to the worksheet order that has an existing payment type other than Letter of Credit. Internally, the service sets the status of the order to Worksheet in order to accommodate the modification of letter of credit information for purchase orders in the system that have been submitted or approved. Validation of updated information is performed before automatic order re-approval is attempted.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
POST
ReST URL
MerchIntegrations/services/purchaseOrder/lettersOfCredit/create
Input Payload Details
Table 5-1236 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of letter of |
| Object | credit records. |
Table 5-1237 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| supplier | No | Number (10) | The identifer of the supplier from which the order will be sourced. This cannot be modifed if details exist for the PO. |
Table 5-1237 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| currencyCode | No | String (3) | The code of the order’s currency. If not populated, the supplier’s currency will be used. This feld can be modifed if the order status is worksheet or approved and the order has not been shipped. |
| terms | No | String (15) | The sales terms of the order. If not populated on the create message, will default to the supplier’s terms. This can be modifed in worksheet or approved status. |
| notBeforeDate | No | date | The frst date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| notAfterDate | No | date | The last date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| otbEowDate | No | date | The end of week date of the OTB bucket used. This can be modifed in worksheet or approved status. |
| dept | No | Number (4) | The department in which are all the items on the order. This feld is required if the system enforces single department ordering. This cannot be modifed if details exist for the PO. |
| status | No | String (1) | The code for the status of the order. Valid values are ‘W’ worksheet and ‘A’ approved for PO creation. It is also possible to modify the status to ‘C’ closed. |
| includeOnOrderInd | No | String (1) | Indicates if the order should be included in on-order calculations. This can be modifed in worksheet or approved status. Valid values are Y and N. |
| writtenDate | No | date | The date the order was created. If this feld is not populated on the message it will default to the time of creation in RMS. It cannot be modifed. |
| origin | No | String (2) | Indicates where the order originated. Valid values include: 2 - Manual, 6 - AIP generated order, 7 , 8, 12 - Consignment Vendor Order. |
| ediPoInd | No | String (1) | Indicates whether or not the order will be transmitted to the supplier via an Electronic Data Exchange transaction. Valid values are: Y = Submit via EDI, N = Do not use EDI. |
Table 5-1237 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| preMarkInd | No | String (1) | This feld indicated whether or not a supplier has agreed to break an order into separate boxes so that the boxes can be sent directly to stores. Valid values are Y and N. |
| approvedBy | No | String (254) | Indicates where the order was approved. It will be the user ID of the person approving the order. |
| commentDesc | No | String (2000) | Any comments pertaining to the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| masterOrderNo | No | Number (12) | This feld indicates the master order number from which child records were created. |
| ladingPort | No | String (5) | This feld indicates the port from which the items on the purchase order are shipped. |
| dischargePort | No | String (5) | This feld indicates the port at which the items on the purchase order will enter the country of import. |
| factory | No | String (10) | This feld indicates the factory at which the items on the purchase order are made. |
| agent | No | String (10) | This feld indicates the agent that is used in the purchase of the items on the purchase order. |
| shipMethod | No | String (6) | This feld indicates the method used to ship the items on the purchase order from the country of origin to the country of import. |
| partnerType1 | No | String (6) | This feld indicates Partner 1 Type. |
| partner1 | No | String (10) | This feld indicates the Additional Partner 1. |
| partnerType2 | No | String (6) | This feld indicates Partner 2 Type. |
| partner2 | No | String (10) | This feld indicates the Additional Partner 2. |
| partnerType3 | No | String (6) | This feld indicates Partner 3 Type. |
| partner3 | No | String (10) | This feld indicates the Additional Partner 3. |
| importCountry | No | String (3) | The identifer of the country into which the items on the order are being imported. |
Table 5-1237 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| purchaseType | No | String (6) | This feld indicates whats included in the suppliers cost of the item. Valid values include C (Cost), CI (Cost and Insurance), CIF (Cost, Insurance and Freight) and FOB (Free on Board). |
| paymentMethod | No | String (6) | This feld indicates the default method for how purchase orders for this site will be paid. Valid values are in the code type PYMT(Payment Method). Examples are Open Account(OA), Letter of Credit(LC) and Wire Transfer(WT). |
| titlePassLocationType | No | String (2) | Contains the code indicating the type of location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and City (CI). |
| titlePassLocation | No | String (250) | Contains the description of the location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. |
| purchaseOrderType | No | String (4) | This feld contains the value associated with the PO_TYPE for the order. |
| orderType | No | String (3) | Indicates the type of order and which Open To Buy bucket will be updated. Valid values include: N/B - Non Basic, ARB - Automatic Reorder of Basic, BRB - Buyer Reorder of Basic, DSD - Direct Store Delivery |
| buyer | No | Number (4) | Contains the number associated with the buyer for the order. |
| location | No | Number (10) | This feld contains the location all items on the order will be delivered to if populated. i. e. It will mean a single location order. |
| locationType | No | String (1) | This feld contains the type of location in the location feld. Valid values are: Valid values are S (Store) or W (Warehouse). |
| promotion | No | Number (10) | Contains the RPCS offer ID associated with the order to provide a link between the order dialog and the promotions dialog. |
| qualityControlInd | No | String (1) | Determines whether or not quality control will be required when items for this order are received. Valid values are Y and N. |
Table 5-1237 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| freightTerms | No | String (30) | Indicator that references what freight terms are related to the order. |
| backhaulType | No | String (6) | This feld contains the type of backhaul allowance that will be applied to the order. Some examples are Calculated or Flat rate. |
| backhaulAllowance | No | Number (20,4) | This feld will contain the backhaul allowance value. |
| shipPayMethod | No | String (2) | Code indicating the payment terms for freight charges associated with the order. Valid values include: CC - Collect, CF - Collect Freight Credited Back to Customer, DF - Defned by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller. |
| transportationResponsibility Type | No | String (2) | Contains the code indicating the type of location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and Country (CC). |
| transportationResponsibility | No | String (250) | Contains the description of the location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. |
| vendorOrderNo | No | String (15) | Contains the vendors unique identifying number for an order. These orders may have originated by the vendor through the EDI process or this number can be associated to a Oracle Retail order when the order is created on-line. |
| freightContractNo | No | String (10) | The number of the contract with a shipper that will give specifc freight rates. This feld is only available when the system is running Import functionality. |
| pickupLocation | No | String (250) | Contains the location at which the order will be picked up, if the order is a Pickup order. |
| pickupNo | No | String (25) | Contains the reference number of the Pickup order. |
| pickupDate | No | date | Contains the date when the order can be picked up from the Supplier. This feld is only required if the Purchase Type of the order is Pickup. |
Table 5-1237 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| appointmentDateTime | No | date-time | This column will hold the date and time of the receiving appointment at the warehouse. |
| importType | No | String (1) | Valid values are IMporter and EXporter. This is the default importer/ exporter assigned to the supplier of the Puchase order. |
| importId | No | Number (10) | This identifes the importer/exporter assigned to the supplier. This should reference the WH. WH folumn with foreign key created. |
| clearingZoneId | No | String (5) | This column will hold the clearing zone id. |
| routingLocation | No | String (5) | This is the default routing location for the import order. FK on OUTLOC. OUTLOC_ID. |
| reApproveInd | No | String (1) | This feld indicates that the update to the corresponding purchase order needs to be performed, and then it should be approved again. Valid values are Y and N. |
| earliestShipDate | No | date | The date before which the item can not be shipped by the supplier. |
| latestShipDate | No | date | The date after which the item can not be shipped by the supplier. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes at the order header level. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| letterOfCredit | No | Record | References the letter of credit for the purchase order. |
Table 5-1238 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1239 LetterOfCredit - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| lcReferenceId | No | Number (8) | This feld contains the ID of the LC to which the order is attached. |
| lcGroupId | No | String (10) | This feld contains an ID that can be used to group Orders together so that they can be attached to a single Letter of Credit. |
| applicant | Yes | String (10) | This feld contains the ID of the applicant being used for the LC process. |
| benefciary | Yes | Number (10) | This feld contains the ID of the benefciary being used for the LC process. |
| merchandiseDescription | Yes | String (2000) | This feld holds a description of the merchandise on the order. |
| transshipmentInd | Yes | String (1) | This feld indicates whether or not the LC to which the order is attached will allow the order to be transshipped. Valid values are ‘Y’es and ‘N’o. |
| partialShipmentInd | Yes | String (1) | This feld indicates whether or not the LC to which the order is attached will allow the order to be partially shipped. Valid values are ‘Y’es and ’N’o. |
| lcAttachedInd | Yes | String (1) | This feld indicates whether or not the order has been attached to a Letter of Credit. Valid values are Y and N. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"orderNo": 464690012,
"supplier": 2400,
"currencyCode": "USD",
"terms": "02",
"notBeforeDate": "2001-12-31",
"notAfterDate": "2001-12-31",
"otbEowDate": "2001-12-31",
"dept": null,
"status": "A",
"includeOnOrderInd": "Y",
"writtenDate": "2001-12-31",
"origin": "2",
"ediPoInd": "Y",
"preMarkInd": "Y",
"approvedBy": "RMS_ADMIN",
"commentDesc": "Create Order",
"dataLoadingDestination": "RMS",
"masterOrderNo": null,
"ladingPort": "7",
"dischargePort": "480",
"factory": "100",
"agent": "007",
"shipMethod": "32",
"partnerType1": "AG",
"partner1": "007",
"partnerType2": "E",
"partner2": "4678",
"partnerType3": null,
"partner3": null,
"importCountry": "US",
"purchaseType": "FOB",
"paymentMethod": "LC",
"titlePassLocationType": "FF",
"titlePassLocation": "US",
"purchaseOrderType": "4000",
"orderType": "N/B",
"buyer": 1000,
"location": null,
"locationType": null,
"promotion": 41,
"qualityControlInd": "Y",
"freightTerms": "03",
"backhaulType": null,
"backhaulAllowance": null,
"shipPayMethod": "PO",
"transportationResponsibilityType": "FF",
"transportationResponsibility": "US",
"vendorOrderNo": "9987001",
"freightContractNo": "111",
"pickupLocation": null,
"pickupNo": null,
"pickupDate": null,
"appointmentDateTime": "2001-12-31T23:59:59.123Z",
"importType": "W",
"importId": 10001,
"clearingZoneId": null,
"routingLocation": null,
"reApproveInd": null,
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"letterOfCredit": {
"lcReferenceId": 10015000,
"lcGroupId": null,
"applicant": "500",
"beneficiary": 2400,
"merchandiseDescription": "Bath Essentials",
"transshipmentInd": "Y",
"partialShipmentInd": "Y",
"lcAttachedInd": "Y"
}
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Create Purchase Orders
Functional Area
Purchase Orders
Business Overview
This webservice is used to create purchase orders in order to keep Merchandising in sync with an external system that is responsible for maintaining purchase orders. It creates orders in Worksheet, Approved or Closed status. It also creates other data associated with a purchase order, including letter of credit, expenses, harmonized tariff schedules (HTS) and assessments, and custom flex attributes (CFAS). It also will apply rounding rules, default inventory management parameters, apply bracket costs, update open to buy buckets, and insert a record into the deals queue for deals to be applied to the order, if applicable. If the location specified
on a purchase order is a franchise store, a corresponding franchise order is also created along with the PO.
It is assumed that the source of the orders sent in this service is not the supplier, as vendor managed inventory (VMI) POs can be sent using the Upload Purchase Order and Purchase Order Change Acknowledgements from Suppliers to Merchandising (ediupack) batch upload. It also does not support creating customer order POs or contract POs. Customer order POs are assumed to be sent using the Customer Order Fulfillment Subscription API and contract orders are created using replenishment processes in Merchandising or manually using the UI.
Service Type
POST
ReST URL
MerchIntegrations/services/purchaseOrders/create
Input Payload Details
Table 5-1240 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | Collection of orders. |
| Object |
Table 5-1241 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| supplier | No | Number (10) | The identifer of the supplier from which the order will be sourced. This cannot be modifed if details exist for the PO. |
| currencyCode | No | String (3) | The code of the order’s currency. If this is not populated, the supplier’s currency will be used. This feld can be modifed if the order status is worksheet or approved and the order has not been shipped. |
| terms | No | String (15) | The sales terms of the order. If this is not populated on the create message, will default to the supplier’s terms. This can be modifed in worksheet or approved status. |
| notBeforeDate | No | date | The frst date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| notAfterDate | No | date | The last date that delivery will be accepted. This can be modifed in worksheet or approved status. |
Table 5-1241 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| otbEowDate | No | date | The end of week date of the OTB bucket used. This can be modifed in worksheet or approved status. |
| dept | No | Number (4) | The department in which are all the items on the order. This feld is required if the system enforces single department ordering. This cannot be modifed if details exist for the PO. |
| status | No | String (1) | The code for the status of the order. Valid values are ‘W’ worksheet and ‘A’ approved for PO creation. It is also possible to modify the status to ‘C’ closed. |
| exchangeRate | No | Number (20,10) | The rate of exchange for the PO used between the order and primary currencies. This feld can be modifed if the order status is worksheet or approved and the order has not been shipped. |
| includeOnOrderInd | No | String (1) | Indicates if the order should be included in on-order calculations. This can be modifed in worksheet or approved status. Valid values are Y and N. |
| writtenDate | No | date | The date the order was created. If this feld is not populated on the message it will default to the time of creation in RMS. It cannot be modifed. |
| origin | No | String (2) | Indicates where the order originated. Valid values include: 2 - Manual, 6 - AIP generated order, 7 , 8, 12 - Consignment Vendor Order. |
| ediPoInd | No | String (1) | Indicates whether or not the order will be transmitted to the supplier via an Electronic Data Exchange transaction. Valid values are: Y = Submit via EDI, N = Do not use EDI. |
| preMarkInd | No | String (1) | This feld indicated whether or not a supplier has agreed to break an order into separate boxes so that the boxes can be sent directly to stores. Valid values are Y and N. |
| approvedBy | No | String (254) | Indicates where the order was approved. It will be the user ID of the person approving the order. |
| commentDesc | No | String (2000) | Any comments pertaining to the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If this is not defned, the default is STG. |
Table 5-1241 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| masterOrderNo | No | Number (12) | This feld indicates the master order number from which child records were created. |
| ladingPort | No | String (5) | This feld indicates the port from which the items on the purchase order are shipped. |
| dischargePort | No | String (5) | This feld indicates the port at which the items on the purchase order will enter the country of import. |
| factory | No | String (10) | This feld indicates the factory at which the items on the purchase order are made. |
| agent | No | String (10) | This feld indicates the agent that is used in the purchase of the items on the purchase order. |
| shipMethod | No | String (6) | This feld indicates the method used to ship the items on the purchase order from the country of origin to the country of import. |
| partnerType1 | No | String (6) | This feld indicates Partner 1 Type. |
| partner1 | No | String (10) | This feld indicates the Additional Partner 1. |
| partnerType2 | No | String (6) | This feld indicates Partner 2 Type. |
| partner2 | No | String (10) | This feld indicates the Additional Partner 2. |
| partnerType3 | No | String (6) | This feld indicates Partner 3 Type. |
| partner3 | No | String (10) | This feld indicates the Additional Partner 3. |
| importCountry | No | String (3) | The identifer of the country into which the items on the order are being imported. |
| purchaseType | No | String (6) | This feld indicates what is included in the suppliers cost of the item. Valid values include C (Cost), CI (Cost and Insurance), CIF (Cost, Insurance and Freight) and FOB (Free on Board). |
| paymentMethod | No | String (6) | This feld indicates the default method for how purchase orders for this site will be paid. Valid values are in the code type PYMT(Payment Method). Examples are Open Account(OA), Letter of Credit(LC) and Wire Transfer(WT). |
Table 5-1241 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| titlePassLocationType | No | String (2) | Contains the code indicating the type of location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and City (CI). |
| titlePassLocation | No | String (250) | Contains the description of the location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. |
| purchaseOrderType | No | String (4) | This feld contains the value associated with the PO_TYPE for the order. |
| orderType | No | String (3) | Indicates the type of order and which Open To Buy bucket will be updated. Valid values include: N/B - Non Basic, ARB - Automatic Reorder of Basic, BRB - Buyer Reorder of Basic, DSD - Direct Store Delivery |
| buyer | No | Number (4) | Contains the number associated with the buyer for the order. |
| location | No | Number (10) | This feld contains the location all items on the order will be delivered to if populated. i. e. It will mean a single location order. |
| locationType | No | String (1) | This feld contains the type of location in the location feld. Valid values are: Valid values are S (Store) or W (Warehouse). |
| promotion | No | Number (10) | Contains the RPCS offer ID associated with the order to provide a link between the order dialog and the promotions dialog. |
| qualityControlInd | No | String (1) | Determines whether or not quality control will be required when items for this order are received. Valid values are Y and N. |
| freightTerms | No | String (30) | Indicator that references what freight terms are related to the order. |
| backhaulType | No | String (6) | This feld contains the type of backhaul allowance that will be applied to the order. Some examples are Calculated or Flat rate. |
| backhaulAllowance | No | Number (20,4) | This feld will contain the backhaul allowance value. |
Table 5-1241 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| shipPayMethod | No | String (2) | Code indicating the payment terms for freight charges associated with the order. Valid values include: CC - Collect, CF - Collect Freight Credited Back to Customer, DF - Defned by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller. |
| transportationResponsibility Type | No | String (2) | Contains the code indicating the type of location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and Country (CC). |
| transportationResponsibility | No | String (250) | Contains the description of the location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. |
| vendorOrderNo | No | String (15) | Contains the vendors unique identifying number for an order. These orders may have originated by the vendor through the EDI process or this number can be associated to an Oracle Retail order when the order is created on-line. |
| freightContractNo | No | String (10) | The number of the contract with a shipper that will give specifc freight rates. This feld is only available when the system is running Import functionality. |
| pickupLocation | No | String (250) | Contains the location at which the order will be picked up, if the order is a Pickup order. |
| pickupNo | No | String (25) | Contains the reference number of the Pickup order. |
| pickupDate | No | date | Contains the date when the order can be picked up from the Supplier. This feld is only required if the Purchase Type of the order is Pickup. |
| appointmentDateTime | No | date-time | This column will hold the date and time of the receiving appointment at the warehouse. |
| importType | No | String (1) | Valid values are IMporter and EXporter. This is the default importer/ exporter assigned to the supplier of the Purchase order. |
Table 5-1241 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| importId | No | Number (10) | This identifes the importer/exporter assigned to the supplier. This should reference the WH. WH column with foreign key created. |
| clearingZoneId | No | String (5) | This column will hold the clearing zone id. |
| routingLocation | No | String (5) | This is the default routing location for the import order. FK on OUTLOC. OUTLOC_ID. |
| reApproveInd | No | String (1) | This feld indicates that the update to the corresponding purchase order needs to be performed, and then it should be approved again. Valid values are Y and N. |
| earliestShipDate | No | date | The date before which the item can not be shipped by the supplier. |
| latestShipDate | No | date | The date after which the item can not be shipped by the supplier. |
| fleId | No | String (20) | In order to support supplier pooling via the buyer worksheet, the recommended order quantities for the individual suppliers are linked together for logistical purposes while generating orders from the worksheet based on this identifer. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes at the order header level. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| details | No | Collection of Object | This references the order detail node. |
| itemDetails | No | Collection of Object | This references the collection of items in the order. |
| letterOfCredit | No | Record | References the letter of credit for the purchase order. |
| expenses | No | Collection of Object | References the expense associated with a particular item/location of the purchase order. |
| hts | No | Collection of Object | References the HTS code associated with a particular item of the purchase order. |
Table 5-1242 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | An approved, transaction level item. If a pack, it must be an orderable pack (with an order_as_type of ‘P’). This is required if the ref_item feld is not populated. An item/location may be added to the order in worksheet or approved status. |
| location | Yes | Number (10) | An active store or warehouse. If multichannel is on, and a warehouse is being order to, a virtual warehouse is expected. An item/location may be added to the order in worksheet or approved status. |
| locationType | No | String (1) | The location type of the location. Valid values are ‘S’ store and ‘W’ warehouse. This feld cannot be modifed. |
| unitCost | No | Number (20,4) | The cost of the item from the supplier in the order’s currency. This can be modifed if the status is worksheet or approved, but not if any portion of the item’s order quantity is in transit or has been received. If it is not specifed on the message, it will default from the item supplier cost for this location. |
| referenceItem | No | String (25) | The id of a reference item which can be used instead of using the item feld. If the item feld is not populated this feld is required. A ref item/ location may be added to the order in worksheet or approved status. |
| originCountry | No | String (3) | The identifer of the country from which the item is being sourced. This feld cannot be modifed. |
| supplierPackSize | No | Number (12,4) | The supplier pack size for the item on the order. This may be updated in worksheet or approved status. |
| quantityOrdered | No | Number (12,4) | The quantity ordered of item. This can be updated in worksheet or approved status to adjust the quantity of an item/location or cancel an item/ location from the order. |
| cancelInd | No | String (1) | Indicates if the detail record’s quantity should be cancelled. Valid values are ‘Y’es and ‘N’o. |
| reinstateInd | No | String (1) | Indicates if a detail record which was previously cancelled should be reinstated. This will reinstate in the order quantity the amount in the cancelled bucket. Valid values are ’Y’es and ‘N’o. |
Table 5-1242 (Cont.) Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| deliveryDate | No | date | The date by which goods are to be delivered. There can be multiple item-locations on the order with different delivery dates. |
| quantityCancelled | No | Number (12,4) | This feld contains the quantity that was left to be ordered when the line item was cancelled. |
| cancelCode | No | String (1) | This feld contains the reason that the line item was cancelled. This feld is required if a line item is cancelled. |
| estimatedInstockDate | No | date | Date that the item on the PO is expected to be available to ship from the PO location to another location. It is calculated as the Order Creation or Approval Date + Supplier Lead Time + Transit Days between the Supplier and the PO/location + Item/ Warehouse Inbound Handling Days (if PO location is a warehouse). |
| earliestShipDate | No | date | The date before which the item can not be shipped by the supplier. |
| latestShipDate | No | date | The date after which the item can not be shipped by the supplier. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes at the order header level. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
Table 5-1243 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1244 ItemDetails - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | An approved, transaction level item. If a pack, it must be an orderable pack (with an order_as_type of ‘P’). This is required if the ref_item feld is not populated. An item/location may be added to the order in worksheet or approved status. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured, named attribute is missing from the input collection, its value will be set to NULL. |
Table 5-1245 LetterOfCredit - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| lcReferenceId | No | Number (8) | This feld contains the ID of the LC to which the order is attached. |
| lcGroupId | No | String (10) | This feld contains an ID that can be used to group Orders together so that they can be attached to a single Letter of Credit. |
| applicant | Yes | String (10) | This feld contains the ID of the applicant being used for the LC process. |
| benefciary | Yes | Number (10) | This feld contains the ID of the benefciary being used for the LC process. |
| merchandiseDescription | Yes | String (2000) | This feld holds a description of the merchandise on the order. |
| transshipmentInd | Yes | String (1) | This feld indicates whether or not the LC to which the order is attached will allow the order to be transshipped. Valid values are ‘Y’es and ‘N’o. |
| partialShipmentInd | Yes | String (1) | This feld indicates whether or not the LC to which the order is attached will allow the order to be partially shipped. Valid values are ‘Y’es and ’N’o. |
| lcAttachedInd | Yes | String (1) | This feld indicates whether or not the order has been attached to a Letter of Credit. Valid values are Y and N. |
Table 5-1246 Expenses - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This feld contains alphanumeric value that uniquely identifes the item. |
| packItem | No | String (25) | This feld contains alphanumeric value that uniquely identifes the pack. |
| location | Yes | Number (10) | This feld contains the location that item will be ordered to. This feld may contain a store or a warehouse. |
| locationType | Yes | String (1) | This feld contains the type of location in the location feld. Valid values are: S - Store W - Warehouse. |
| component | Yes | String (10) | This feld contains a user specifed code representing a specifc expense found on the ELC_COMP table. |
| computationValueBase | No | String (10) | This feld contains a code representing the base value for calculating the expense. |
| calculationBasis | No | String (1) | This feld contains the basis the expense will be calculated against if there is no CVB code attached to the expense. Valid values are S (Supplier) or O (Order). If the Cost Basis is S then when calculating the expense, the items supplier cost will be used. If the Cost Basis is O then the order unit cost of the item on the order will be used to calculate the expense. The code type for this feld is EXCB. |
| componentRate | Yes | Number (20,4) | This feld contains the rate to be charged against the calculation base of the component (either value or specifc). |
| componentCurrency | Yes | String (3) | This feld contains the currency the expense or assessment is to be entered in. If the Calculation Basis is V (Value), then comp_currency will be NULL. |
| exchangeRate | No | Number (20,10) | This feld contains the exchange rate of the individual expense. |
| perCount | No | Number (12,4) | This feld contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10. |
Table 5-1246 (Cont.) Expenses - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| perCountUom | No | String (4) | This feld contains the unit of measure in which the Per Count is specifed. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count UOM would be the Unit of Measure code for Kilograms. |
| nominationFlag1 | Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
| inDuty | Yes | String (1) | See description for nom_fag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_fag_2 is used to indicate the status of a component in duty calculation nom_fag_4 is used to indicate the status of a component in ELC calculation nom_fag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 fags can not be used for any other purposes if ALC is turned on. |
Table 5-1246 (Cont.) Expenses - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nominationFlag3 | Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense | Yes | String (1) | See description for nom_fag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_fag_2 is used to indicate the status of a component in duty calculation nom_fag_4 is used to indicate the status of a component in ELC calculation nom_fag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 fags can not be used for any other purposes if ALC is turned on. |
| inAlc | Yes | String (1) | See description for nom_fag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_fag_2 is used to indicate the status of a component in duty calculation nom_fag_4 is used to indicate the status of a component in ELC calculation nom_fag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 fags can not be used for any other purposes if ALC is turned on. |
Table 5-1247 Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This feld contains an unique alphanumeric value that identifes the item. |
Table 5-1247 (Cont.) Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| packItem | No | String (25) | This feld contains alphanumeric value that uniquely identifes the pack. |
| hts | Yes | String (25) | This feld contains an identifer for the Harmonized Tariff Schedule code. |
| status | Yes | String (1) | This feld contains a fag to indicate the status of the Purchase Order/ Item/HTS relationship. Valid values are (W)orksheet and (A)pproved. |
| originCountry | Yes | String (3) | This feld contains the country of manufacture when the HTS tracking level is M. When the HTS tracking level is S, this stores the country of sourcing. |
| importCountry | No | String (3) | This feld contains the country that the item will be imported in to. |
| assessments | No | Collection of Object | References the HTS code assessments associated with a particular item of the purchase order. |
Table 5-1248 Assessments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| component | Yes | String (10) | This feld contains a user specifed code representing the specifc assessment component found on the ELC_COMP table. |
| computationValueBase | No | String (10) | This feld contains a code representing the base value for calculating the assessment. |
| componentRate | Yes | Number (20,4) | This feld contains the rate to be charged against the calculation base. This feld will hold a percentage value if the Calculation Basis of the Component is Value or a monetary amount in the currency defned for the assessment (usually the import country’s currency) if the Calculation Basis is Specifc. |
| perCount | No | Number (12,4) | This feld contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10. |
Table 5-1248 (Cont.) Assessments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| perCountUom | No | String (4) | This feld contains the unit of measure in which the Per Count is specifed. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count UOM would be the Unit of Measure code for Kilograms. |
| nominationFlag1 | Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
| inDuty | Yes | String (1) | See description for nom_fag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_fag_2 is used to indicate the status of a component in duty calculation nom_fag_4 is used to indicate the status of a component in ELC calculation nom_fag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 fags can not be used for any other purposes if ALC is turned on. |
Table 5-1248 (Cont.) Assessments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nominationFlag3 | Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense | Yes | String (1) | See description for nom_fag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_fag_2 is used to indicate the status of a component in duty calculation nom_fag_4 is used to indicate the status of a component in ELC calculation nom_fag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 fags can not be used for any other purposes if ALC is turned on. |
| inAlc | Yes | String (1) | See description for nom_fag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_fag_2 is used to indicate the status of a component in duty calculation nom_fag_4 is used to indicate the status of a component in ELC calculation nom_fag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 fags can not be used for any other purposes if ALC is turned on. |
Sample Input Message
{
"items": [
{
"orderNo": 464690012,
"supplier": 2400,
"currencyCode": "USD",
"terms": "02",
"notBeforeDate": "2001-12-31",
"notAfterDate": "2001-12-31",
"otbEowDate": "2001-12-31",
"dept": null,
"status": "A",
"exchangeRate": 2,
"includeOnOrderInd": "Y",
"writtenDate": "2001-12-31",
"origin": "2",
"ediPoInd": "Y",
"preMarkInd": "Y",
"approvedBy": null,
"commentDesc": "Create Order",
"dataLoadingDestination": "RMS",
"masterOrderNo": null,
"ladingPort": "7",
"dischargePort": "480",
"factory": "100",
"agent": "007",
"shipMethod": "32",
"partnerType1": "AG",
"partner1": "007",
"partnerType2": "E",
"partner2": "4678",
"partnerType3": null,
"partner3": null,
"importCountry": "US",
"purchaseType": "FOB",
"paymentMethod": "LC",
"titlePassLocationType": "FF",
"titlePassLocation": "US",
"purchaseOrderType": "4000",
"orderType": "N/B",
"buyer": 1000,
"location": null,
"locationType": null,
"promotion": 41,
"qualityControlInd": "Y",
"freightTerms": "03",
"backhaulType": null,
"backhaulAllowance": null,
"shipPayMethod": "PO",
"transportationResponsibilityType": "FF",
"transportationResponsibility": "US",
"vendorOrderNo": "9987001",
"freightContractNo": "111",
"pickupLocation": null,
"pickupNo": null,
"pickupDate": null,
"appointmentDateTime": "2001-12-31T23:59:59.123Z",
"importType": "W",
"importId": 10001,
"clearingZoneId": null,
"routingLocation": null,
"reApproveInd": null,
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"fileId": "String",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"details": [
{
"item": "103900095",
"location": 10001,
"locationType": "W",
"unitCost": 45.2,
"referenceItem": null,
"originCountry": "IN",
"supplierPackSize": 1,
"quantityOrdered": 25,
"cancelInd": null,
"reinstateInd": null,
"deliveryDate": "2001-12-31",
"quantityCancelled": null,
"cancelCode": null,
"estimatedInstockDate": "2001-12-31",
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
]
}
],
"itemDetails": [
{
"item": "103900095",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
]
}
],
"letterOfCredit": {
"lcReferenceId": 10015000,
"lcGroupId": null,
"applicant": "500",
"beneficiary": 2400,
"merchandiseDescription": "Bath Essentials",
"transshipmentInd": "Y",
"partialShipmentInd": "Y",
"lcAttachedInd": "Y"
},
"expenses": [
{
"item": "103900095",
"packItem": null,
"location": 10001,
"locationType": "W",
"component": "OCFRT",
"computationValueBase": null,
"calculationBasis": null,
"componentRate": 17,
"componentCurrency": "INR",
"exchangeRate": 29,
"perCount": 1,
"perCountUom": "M3",
"nominationFlag1": "N",
"inDuty": "N",
"nominationFlag3": "N",
"inExpense": "+",
"inAlc": "N"
}
],
"hts": [
{
"item": "103900095",
"packItem": null,
"hts": "9014111112",
"status": "W",
"originCountry": "IN",
"importCountry": "US",
"assessments": [
{
"component": "DTYCAUS",
"computationValueBase": null,
"componentRate": 12,
"perCount": 1,
"perCountUom": "EA",
"nominationFlag1": "N",
"inDuty": "+",
"nominationFlag3": "-",
"inExpense": "N",
"inAlc": "N"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Delete Purchase Order Details
Functional Area
Purchase Orders
Business Overview
This webservice is used to delete line items from purchase orders in the worksheet status in order to keep Merchandising in sync with an external system that is responsible for maintaining purchase orders. For orders that are not in worksheet status, when a detail delete is requested, it will update the quantities to cancelled quantities and will be subject for re-approval.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
DELETE
ReST URL
MerchIntegrations/services/purchaseOrder/details/delete
Input Payload Details
Table 5-1249 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of | |
| Object |
Table 5-1250 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| details | No | Collection of Object | This references the order detail node. |
Table 5-1251 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | An approved, transaction level item. If a pack, it must be an orderable pack (with an order_as_type of ‘P’). |
| location | Yes | Number (10) | An active store or warehouse. If multichannel is on, and a warehouse is being order to, a virtual warehouse is expected. |
| referenceItem | No | String (25) | The id of a reference item which can be used instead of using the item feld. If the item feld is not populated this feld is required. |
Sample Input Message
{
"items": [
{
"orderNo": 464690012,
"dataLoadingDestination": "RMS",
"details": [
{
"item": "100000323",
"location": 10001,
"referenceItem": null
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Delete Purchase Order Expenses
Functional Area
Purchase Orders
Business Overview
This webservice is used to delete expense information from the purchase order within Merchandising in order to keep it in sync with an external system that is responsible for maintaining purchase orders. It also updates order header information with the values provided in the request if the order is not yet submitted or approved. Internally, the service sets the status of the order to Worksheet in order to accommodate the modification of expense information for purchase orders in the system that have been submitted or approved. Validation of the updated information is performed before automatic order re-approval is attempted.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
DELETE
ReST URL
MerchIntegrations/services/purchaseOrder/expenses/delete
Input Payload Details
Table 5-1252 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of order |
| Object | expenses. |
Table 5-1253 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| expenses | No | Collection of Object | References the expense associated with a particular item/location of the purchase order. |
Table 5-1254 Expenses - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Unique alphanumeric value that identifes the item. |
| packItem | No | String (25) | Alphanumeric value that uniquely identifes the pack. |
| location | Yes | Number (10) | This feld contains the location that the item was ordered to. |
| component | Yes | String (10) | This feld contains the component id. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"orderNo": 464690012,
"dataLoadingDestination": "RMS",
"expenses": [
{
"item": "103900095",
"packItem": null,
"location": 10001,
"component": "OCFRT"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Purchase Order HTS
Functional Area
Purchase Orders
Business Overview
This webservice is used to delete Harmonized Tariff Schedules and related assessments within Merchandising in order to keep it in sync with an external system that is responsible for maintaining purchase orders. It also updates order header information with the values provided in the request if the order is not yet submitted or approved. When deleting HTS information from a purchase order that has been submitted or approved, internally, the service sets the status of the order to Worksheet in order to accommodate the change in HTS information.
Validation of the new HTS information is performed before automatic order re-approval is attempted.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
DELETE
ReST URL
MerchIntegrations/services/purchaseOrder/hts/delete
Input Payload Details
Table 5-1255 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of order HTS records. |
Table 5-1256 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| hts | No | Collection of Object | References the HTS code associated with a particular item of the purchase order. |
Table 5-1257 Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Unique alphanumeric value that identifes the item. |
| packItem | No | String (25) | Alphanumeric value that uniquely identifes the pack. |
| hts | Yes | String (25) | The unique identifer for the Harmonized Tariff Schedule code. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"orderNo": 464690012,
"dataLoadingDestination": "RMS",
"hts": [
{
"item": "103900095",
"packItem": null,
"hts": "9014111112"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Purchase Order HTS Assessments
Functional Area
Purchase Orders
Business Overview
This webservice is used to delete Harmonized Tariff Schedule assessments within Merchandising in order to keep it in sync with an external system that is responsible for maintaining purchase orders. It also updates order header information with the values provided in the request if the order is not yet submitted or approved. When deleting assessment information from a purchase order that has been submitted or approved, the service internally sets the status of the order to Worksheet in order to accommodate the change in information.
Validation of the new HTS information is performed before automatic order re-approval is attempted.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
DELETE
ReST URL
MerchIntegrations/services/purchaseOrder/hts/assessments/delete
Input Payload Details
Table 5-1258 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of order HTS |
| Object | assessment records. |
Table 5-1259 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| hts | No | Collection of Object | References the HTS code associated with a particular item of the purchase order. |
Table 5-1260 Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Unique alphanumeric value that identifes the item. |
| packItem | No | String (25) | Alphanumeric value that uniquely identifes the pack. |
| hts | Yes | String (25) | The unique identifer for the Harmonized Tariff Schedule code. |
| assessments | No | Collection of Object | References the assessment associated with the HTS of a particular item in the purchase order. |
Table 5-1261 Assessments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| component | Yes | String (10) | This feld contains the component id. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"orderNo": 464690012,
"dataLoadingDestination": "RMS",
"hts": [
{
"item": "103900095",
"packItem": null,
"hts": "9014111112",
"assessments": [
{
"component": "MPFUS"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Purchase Order Letters of Credit
Functional Area
Purchase Orders
Business Overview
This webservice is used to delete letter of credit information within Merchandising when the order payment type is Letter of Credit in order to keep it in sync with an external system that is responsible for maintaining purchase orders.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
DELETE
ReST URL
MerchIntegrations/services/purchaseOrder/lettersOfCredit/delete
Input Payload Details
Table 5-1262 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of letter of |
| Object | credit records. |
Table 5-1263 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"orderNo": 464690012,
"dataLoadingDestination": "RMS"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Delete Purchase Orders
Functional Area
Purchase Orders
Business Overview
This webservice is used to delete purchase orders from Merchandising in sync with an external system that is responsible for maintaining purchase orders. If you are deleting the entire purchase order, this service will first validate that the order number is valid since an existing order number is the only required field for a header delete message. Deleting an order will in effect set the status of the order at the header level to D. Only worksheet orders can be deleted and deletion will not be allowed if the order is submitted, approved or has been approved, or if allocations exist for the order. Delete messages will still be processed, however it will be treated as an update of cancelled quantity and the quantity ordered will be reduced to the quantity available to be cancelled. If this results in all line items being cancelled or if the delete is made at header level, the status of the order will become Closed.
If an order is still in worksheet status, the entire order will be deleted. If the order involves any franchise stores, then any franchise order or return created with the order will also be cancelled or deleted.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
DELETE
ReST URL
MerchIntegrations/services/purchaseOrders/delete
Input Payload Details
Table 5-1264 Delete - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of orders. |
Table 5-1265 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"orderNo": 464690012,
"dataLoadingDestination": "RMS"
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Purchase Order Details
Functional Area
Purchase Orders
Business Overview
This webservice is used to update detail level attributes of the purchase order such as order quantities, unit cost and line item cancellation information in order to keep Merchandising in sync with an external system that is responsible for maintaining purchase orders. Order details can be updated for orders in Approved, Worksheet, Submitted or Closed status. The only information needed at the header level is the order number, which if not provided, will cause the message to be rejected. All other details provided at the header level will be ignored. Modifying order quantity, as well as supplier pack size or unit cost on an approved or submitted order will in effect set the order status to worksheet and subject it for automatic re-approval. When modifying order quantities, the full amount should be provided, not just the difference in the old and new values. Validations are also done on quantity changes, such as the ordered quantity should not go below the allocated quantity or replenishment quantity, quantity ordered cannot not be less than quantity received.
Fields that can be modified in worksheet, submitted and approved status:
Supplier Pack Size Unit Cost – for items with no received quantities Quantity Ordered Fields that cannot be modified in statuses other than worksheet: Origin Country ID Location
Fields that can be modified only in approved status:
Quantity Cancelled
Cancel Code
Reinstating order lines
To reinstate orders, the reinstate indicator should be set to Y. In effect, this will set the cancelled quantities of the line items to 0 and reinstate the ordered quantities.
Cancelling a line item in an approved order
In order to cancel a line item on the order, you can set the cancel indicator at the detail level to Y and at the same time, the quantity ordered for that line item must be set to 0. For partial cancellations, either reduce the quantity of an approved order or populate the quantity cancelled field making sure the cancel indicator is blank or set to N. This will allow for the automatic re-approval of the entire order, if there are line items still on the order once processed by the API. The cancel indicator and reinstate indicator cannot both be set to Y at the same time.
For more details on Purchase Orders, see the Create Purchase Order service description.
Reinstating Order Lines
To reinstate orders, the reinstate indicator should be set to Y. In effect, this will set the cancelled quantities of the line items to 0 and reinstate the ordered quantities. This will set the status of the reinstated order to Worksheet.
Cancelling a Line Item in an Approved Order
In order to cancel a line item on the order, you can set the cancel indicator at the detail level to Y and at the same time, the quantity ordered for that line item must be set to 0. For partial cancellations, either reduce the quantity of an approved order or populate the quantity cancelled field making sure the cancel indicator is blank or set to N. This will allow for the automatic re-approval of the entire order, if there are line items still on the order once processed by the API. The cancel indicator and reinstate indicator cannot both be set to Y at the same time.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/purchaseOrder/details/update
Input Payload Details
Update - Object. See list of elements for detail
Items - Object. See list of elements for detail
Details - Object. See list of elements for detail
CustomFlexAttribute - Object. See list of elements for detail
ItemDetails - Object. See list of elements for detail
Response Code: 200 (Success)
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.
Update Purchase Order Expenses
Functional Area
Purchase Orders
Business Overview
This webservice is used to update expense information on the purchase order within Merchandising in order to keep it in sync with an external system that is responsible for maintaining purchase orders. It also updates order header information with the values provided in the request if the order is not yet submitted or approved. Internally, the service sets the status of the order to Worksheet in order to accommodate the modification of expense information for purchase orders in the system that have been submitted or approved. Validation of the new expense information is performed before automatic order re-approval is attempted.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/purchaseOrder/expenses/update
Input Payload Details
Table 5-1266 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of order |
| Object | expenses. |
Table 5-1267 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| supplier | No | Number (10) | The identifer of the supplier from which the order will be sourced. This cannot be modifed if details exist for the PO. |
Table 5-1267 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| currencyCode | No | String (3) | The code of the order’s currency. If not populated, the supplier’s currency will be used. This feld can be modifed if the order status is worksheet or approved and the order has not been shipped. |
| terms | No | String (15) | The sales terms of the order. If not populated on the create message, will default to the supplier’s terms. This can be modifed in worksheet or approved status. |
| notBeforeDate | No | date | The frst date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| notAfterDate | No | date | The last date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| otbEowDate | No | date | The end of week date of the OTB bucket used. This can be modifed in worksheet or approved status. |
| dept | No | Number (4) | The department in which are all the items on the order. This feld is required if the system enforces single department ordering. This cannot be modifed if details exist for the PO. |
| status | No | String (1) | The code for the status of the order. Valid values are ‘W’ worksheet and ‘A’ approved for PO creation. It is also possible to modify the status to ‘C’ closed. |
| includeOnOrderInd | No | String (1) | Indicates if the order should be included in on-order calculations. This can be modifed in worksheet or approved status. Valid values are Y and N. |
| writtenDate | No | date | The date the order was created. If this feld is not populated on the message it will default to the time of creation in RMS. It cannot be modifed. |
| origin | No | String (2) | Indicates where the order originated. Valid values include: 2 - Manual, 6 - AIP generated order, 7 , 8, 12 - Consignment Vendor Order. |
| ediPoInd | No | String (1) | Indicates whether or not the order will be transmitted to the supplier via an Electronic Data Exchange transaction. Valid values are: Y = Submit via EDI, N = Do not use EDI. |
Table 5-1267 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| preMarkInd | No | String (1) | This feld indicated whether or not a supplier has agreed to break an order into separate boxes so that the boxes can be sent directly to stores. Valid values are Y and N. |
| approvedBy | No | String (254) | Indicates where the order was approved. It will be the user ID of the person approving the order. |
| commentDesc | No | String (2000) | Any comments pertaining to the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| masterOrderNo | No | Number (12) | This feld indicates the master order number from which child records were created. |
| ladingPort | No | String (5) | This feld indicates the port from which the items on the purchase order are shipped. |
| dischargePort | No | String (5) | This feld indicates the port at which the items on the purchase order will enter the country of import. |
| factory | No | String (10) | This feld indicates the factory at which the items on the purchase order are made. |
| agent | No | String (10) | This feld indicates the agent that is used in the purchase of the items on the purchase order. |
| shipMethod | No | String (6) | This feld indicates the method used to ship the items on the purchase order from the country of origin to the country of import. |
| partnerType1 | No | String (6) | This feld indicates Partner 1 Type. |
| partner1 | No | String (10) | This feld indicates the Additional Partner 1. |
| partnerType2 | No | String (6) | This feld indicates Partner 2 Type. |
| partner2 | No | String (10) | This feld indicates the Additional Partner 2. |
| partnerType3 | No | String (6) | This feld indicates Partner 3 Type. |
| partner3 | No | String (10) | This feld indicates the Additional Partner 3. |
| importCountry | No | String (3) | The identifer of the country into which the items on the order are being imported. |
Table 5-1267 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| purchaseType | No | String (6) | This feld indicates whats included in the suppliers cost of the item. Valid values include C (Cost), CI (Cost and Insurance), CIF (Cost, Insurance and Freight) and FOB (Free on Board). |
| paymentMethod | No | String (6) | This feld indicates the default method for how purchase orders for this site will be paid. Valid values are in the code type PYMT(Payment Method). Examples are Open Account(OA), Letter of Credit(LC) and Wire Transfer(WT). |
| titlePassLocationType | No | String (2) | Contains the code indicating the type of location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and City (CI). |
| titlePassLocation | No | String (250) | Contains the description of the location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. |
| purchaseOrderType | No | String (4) | This feld contains the value associated with the PO_TYPE for the order. |
| orderType | No | String (3) | Indicates the type of order and which Open To Buy bucket will be updated. Valid values include: N/B - Non Basic, ARB - Automatic Reorder of Basic, BRB - Buyer Reorder of Basic, DSD - Direct Store Delivery |
| buyer | No | Number (4) | Contains the number associated with the buyer for the order. |
| location | No | Number (10) | This feld contains the location all items on the order will be delivered to if populated. i. e. It will mean a single location order. |
| locationType | No | String (1) | This feld contains the type of location in the location feld. Valid values are: Valid values are S (Store) or W (Warehouse). |
| promotion | No | Number (10) | Contains the RPCS offer ID associated with the order to provide a link between the order dialog and the promotions dialog. |
| qualityControlInd | No | String (1) | Determines whether or not quality control will be required when items for this order are received. Valid values are Y and N. |
Table 5-1267 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| freightTerms | No | String (30) | Indicator that references what freight terms are related to the order. |
| backhaulType | No | String (6) | This feld contains the type of backhaul allowance that will be applied to the order. Some examples are Calculated or Flat rate. |
| backhaulAllowance | No | Number (20,4) | This feld will contain the backhaul allowance value. |
| shipPayMethod | No | String (2) | Code indicating the payment terms for freight charges associated with the order. Valid values include: CC - Collect, CF - Collect Freight Credited Back to Customer, DF - Defned by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller. |
| transportationResponsibility Type | No | String (2) | Contains the code indicating the type of location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and Country (CC). |
| transportationResponsibility | No | String (250) | Contains the description of the location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. |
| vendorOrderNo | No | String (15) | Contains the vendors unique identifying number for an order. These orders may have originated by the vendor through the EDI process or this number can be associated to a Oracle Retail order when the order is created on-line. |
| freightContractNo | No | String (10) | The number of the contract with a shipper that will give specifc freight rates. This feld is only available when the system is running Import functionality. |
| pickupLocation | No | String (250) | Contains the location at which the order will be picked up, if the order is a Pickup order. |
| pickupNo | No | String (25) | Contains the reference number of the Pickup order. |
| pickupDate | No | date | Contains the date when the order can be picked up from the Supplier. This feld is only required if the Purchase Type of the order is Pickup. |
Table 5-1267 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| appointmentDateTime | No | date-time | This column will hold the date and time of the receiving appointment at the warehouse. |
| importType | No | String (1) | Valid values are IMporter and EXporter. This is the default importer/ exporter assigned to the supplier of the Puchase order. |
| importId | No | Number (10) | This identifes the importer/exporter assigned to the supplier. This should reference the WH. WH folumn with foreign key created. |
| clearingZoneId | No | String (5) | This column will hold the clearing zone id. |
| routingLocation | No | String (5) | This is the default routing location for the import order. FK on OUTLOC. OUTLOC_ID. |
| reApproveInd | No | String (1) | This feld indicates that the update to the corresponding purchase order needs to be performed, and then it should be approved again. Valid values are Y and N. |
| earliestShipDate | No | date | The date before which the item can not be shipped by the supplier. |
| latestShipDate | No | date | The date after which the item can not be shipped by the supplier. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| expenses | No | Collection of Object | References the expense associated with a particular item/location of the purchase order. |
Table 5-1268 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of |
| the attribute. | |||
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1269 Expenses - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This feld contains alphanumeric value that uniquely identifes the item. |
| packItem | No | String (25) | This feld contains alphanumeric value that uniquely identifes the pack. |
| location | Yes | Number (10) | This feld contains the location that item will be ordered to. This feld may contain a store or a warehouse. |
| locationType | Yes | String (1) | This feld contains the type of location in the location feld. Valid values are: S - Store W - Warehouse. |
| component | Yes | String (10) | This feld contains a user specifed code representing a specifc expense found on the ELC_COMP table. |
| computationValueBase | No | String (10) | This feld contains a code representing the base value for calculating the expense. |
| calculationBasis | No | String (1) | This feld contains the basis the expense will be calculated against if there is no CVB code attached to the expense. Valid values are S (Supplier) or O (Order). If the Cost Basis is S then when calculating the expense, the items supplier cost will be used. If the Cost Basis is O then the order unit cost of the item on the order will be used to calculate the expense. The code type for this feld is EXCB. |
| componentRate | Yes | Number (20,4) | This feld contains the rate to be charged against the calculation base of the component (either value or specifc). |
| componentCurrency | Yes | String (3) | This feld contains the currency the expense or assessment is to be entered in. If the Calculation Basis is V (Value), then comp_currency will be NULL. |
| exchangeRate | Yes | Number (20,10) | This feld contains the exchange rate of the individual expense. |
| perCount | No | Number (12,4) | This feld contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10. |
Table 5-1269 (Cont.) Expenses - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| perCountUom | No | String (4) | This feld contains the unit of measure in which the Per Count is specifed. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count UOM would be the Unit of Measure code for Kilograms. |
| nominationFlag1 | Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
| inDuty | Yes | String (1) | If Import Management is enabled in Merchandising (i. e. system_options. import_ind = Y), the inDuty fag is used to indicate if the value of the cost component should be included in total duty. |
Table 5-1269 (Cont.) Expenses - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| nominationFlag3 Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense Yes | String (1) | The inExpense fag is used to indicate if the value of the cost component should be included in total expenses. |
| inAlc Yes | String (1) | The inALC fag is used for cost components where the retailer does not expect to receive an actual value for the charge via an obligation or customs entry. The inALC fag allows the value of the cost component to be included in ALC via direct nomination and indicates to the system that the estimated value on the order should be used as the actual value as well because no other actual will be provided. |
| Sample Input Message | ||
{"collectionSize": 1,"items": [ | ||
{"orderNo": 464690012,"supplier": 2400,"currencyCode": "USD","terms": "02","notBeforeDate": "2001-12-31","notAfterDate": "2001-12-31","otbEowDate": "2001-12-31","dept": null, |
"status": "A",
"includeOnOrderInd": "Y",
"writtenDate": "2001-12-31",
"origin": "2",
"ediPoInd": "Y",
"preMarkInd": "Y",
"approvedBy": null,
"commentDesc": "Create Order",
"dataLoadingDestination": "RMS",
"masterOrderNo": null,
"ladingPort": "7",
"dischargePort": "480",
"factory": "100",
"agent": "007",
"shipMethod": "32",
"partnerType1": "AG",
"partner1": "007",
"partnerType2": "E",
"partner2": "4678",
"partnerType3": null,
"partner3": null,
"importCountry": "US",
"purchaseType": "FOB",
"paymentMethod": "LC",
"titlePassLocationType": "FF",
"titlePassLocation": "US",
"purchaseOrderType": "4000",
"orderType": "N/B",
"buyer": 1000,
"location": null,
"locationType": null,
"promotion": 41,
"qualityControlInd": "Y",
"freightTerms": "03",
"backhaulType": null,
"backhaulAllowance": null,
"shipPayMethod": "PO",
"transportationResponsibilityType": "FF",
"transportationResponsibility": "US",
"vendorOrderNo": "9987001",
"freightContractNo": "111",
"pickupLocation": null,
"pickupNo": null,
"pickupDate": null,
"appointmentDateTime": "2001-12-31T23:59:59.123Z",
"importType": "W",
"importId": 10001,
"clearingZoneId": null,
"routingLocation": null,
"reApproveInd": null,
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"expenses": [
{
"item": "103900095",
"packItem": null,
"location": 10001,
"locationType": "W",
"component": "OCFRT",
"computationValueBase": null,
"calculationBasis": null,
"componentRate": 17,
"componentCurrency": "INR",
"exchangeRate": 29,
"perCount": 1,
"perCountUom": "M3",
"nominationFlag1": "N",
"inDuty": "N",
"nominationFlag3": "N",
"inExpense": "+",
"inAlc": "N"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Purchase Order HTS
Functional Area
Purchase Orders
Business Overview
This webservice is used to update Harmonized Tariff Schedules and related assessments within Merchandising in order to keep it in sync with an external system that is responsible for maintaining purchase orders. It also updates order header information with the values provided in the request if the order is not yet submitted or approved. When updating HTS information for a purchase order that has been submitted or approved, internally, the service sets the status of the order to Worksheet in order to accommodate the change in HTS information. Validation of the new HTS information is performed before automatic order re-approval is attempted.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/purchaseOrder/hts/update
Input Payload Details
Table 5-1270 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of order HTS |
| Object | records. |
Table 5-1271 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| supplier | No | Number (10) | The identifer of the supplier from which the order will be sourced. This cannot be modifed if details exist for the PO. |
| currencyCode | No | String (3) | The code of the order’s currency. If not populated, the supplier’s currency will be used. This feld can be modifed if the order status is worksheet or approved and the order has not been shipped. |
Table 5-1271 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| terms | No | String (15) | The sales terms of the order. If not populated on the create message, will default to the supplier’s terms. This can be modifed in worksheet or approved status. |
| notBeforeDate | No | date | The frst date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| notAfterDate | No | date | The last date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| otbEowDate | No | date | The end of week date of the OTB bucket used. This can be modifed in worksheet or approved status. |
| dept | No | Number (4) | The department in which are all the items on the order. This feld is required if the system enforces single department ordering. This cannot be modifed if details exist for the PO. |
| status | No | String (1) | The code for the status of the order. Valid values are ‘W’ worksheet and ‘A’ approved for PO creation. It is also possible to modify the status to ‘C’ closed. |
| includeOnOrderInd | No | String (1) | Indicates if the order should be included in on-order calculations. This can be modifed in worksheet or approved status. Valid values are Y and N. |
| writtenDate | No | date | The date the order was created. If this feld is not populated on the message it will default to the time of creation in RMS. It cannot be modifed. |
| origin | No | String (2) | Indicates where the order originated. Valid values include: 2 - Manual, 6 - AIP generated order, 7 , 8, 12 - Consignment Vendor Order. |
| ediPoInd | No | String (1) | Indicates whether or not the order will be transmitted to the supplier via an Electronic Data Exchange transaction. Valid values are: Y = Submit via EDI, N = Do not use EDI. |
| preMarkInd | No | String (1) | This feld indicated whether or not a supplier has agreed to break an order into separate boxes so that the boxes can be sent directly to stores. Valid values are Y and N. |
| approvedBy | No | String (254) | Indicates where the order was approved. It will be the user ID of the person approving the order. |
Table 5-1271 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| commentDesc | No | String (2000) | Any comments pertaining to the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| masterOrderNo | No | Number (12) | This feld indicates the master order number from which child records were created. |
| ladingPort | No | String (5) | This feld indicates the port from which the items on the purchase order are shipped. |
| dischargePort | No | String (5) | This feld indicates the port at which the items on the purchase order will enter the country of import. |
| factory | No | String (10) | This feld indicates the factory at which the items on the purchase order are made. |
| agent | No | String (10) | This feld indicates the agent that is used in the purchase of the items on the purchase order. |
| shipMethod | No | String (6) | This feld indicates the method used to ship the items on the purchase order from the country of origin to the country of import. |
| partnerType1 | No | String (6) | This feld indicates Partner 1 Type. |
| partner1 | No | String (10) | This feld indicates the Additional Partner 1. |
| partnerType2 | No | String (6) | This feld indicates Partner 2 Type. |
| partner2 | No | String (10) | This feld indicates the Additional Partner 2. |
| partnerType3 | No | String (6) | This feld indicates Partner 3 Type. |
| partner3 | No | String (10) | This feld indicates the Additional Partner 3. |
| importCountry | No | String (3) | The identifer of the country into which the items on the order are being imported. |
| purchaseType | No | String (6) | This feld indicates whats included in the suppliers cost of the item. Valid values include C (Cost), CI (Cost and Insurance), CIF (Cost, Insurance and Freight) and FOB (Free on Board). |
| paymentMethod | No | String (6) | This feld indicates the default method for how purchase orders for this site will be paid. Valid values are in the code type PYMT(Payment Method). Examples are Open Account(OA), Letter of Credit(LC) and Wire Transfer(WT). |
Table 5-1271 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| titlePassLocationType | No | String (2) | Contains the code indicating the type of location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and City (CI). |
| titlePassLocation | No | String (250) | Contains the description of the location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. |
| purchaseOrderType | No | String (4) | This feld contains the value associated with the PO_TYPE for the order. |
| orderType | No | String (3) | Indicates the type of order and which Open To Buy bucket will be updated. Valid values include: N/B - Non Basic, ARB - Automatic Reorder of Basic, BRB - Buyer Reorder of Basic, DSD - Direct Store Delivery |
| buyer | No | Number (4) | Contains the number associated with the buyer for the order. |
| location | No | Number (10) | This feld contains the location all items on the order will be delivered to if populated. i. e. It will mean a single location order. |
| locationType | No | String (1) | This feld contains the type of location in the location feld. Valid values are: Valid values are S (Store) or W (Warehouse). |
| promotion | No | Number (10) | Contains the RPCS offer ID associated with the order to provide a link between the order dialog and the promotions dialog. |
| qualityControlInd | No | String (1) | Determines whether or not quality control will be required when items for this order are received. Valid values are Y and N. |
| freightTerms | No | String (30) | Indicator that references what freight terms are related to the order. |
| backhaulType | No | String (6) | This feld contains the type of backhaul allowance that will be applied to the order. Some examples are Calculated or Flat rate. |
| backhaulAllowance | No | Number (20,4) | This feld will contain the backhaul allowance value. |
Table 5-1271 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| shipPayMethod | No | String (2) | Code indicating the payment terms for freight charges associated with the order. Valid values include: CC - Collect, CF - Collect Freight Credited Back to Customer, DF - Defned by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller. |
| transportationResponsibility Type | No | String (2) | Contains the code indicating the type of location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and Country (CC). |
| transportationResponsibility | No | String (250) | Contains the description of the location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. |
| vendorOrderNo | No | String (15) | Contains the vendors unique identifying number for an order. These orders may have originated by the vendor through the EDI process or this number can be associated to a Oracle Retail order when the order is created on-line. |
| freightContractNo | No | String (10) | The number of the contract with a shipper that will give specifc freight rates. This feld is only available when the system is running Import functionality. |
| pickupLocation | No | String (250) | Contains the location at which the order will be picked up, if the order is a Pickup order. |
| pickupNo | No | String (25) | Contains the reference number of the Pickup order. |
| pickupDate | No | date | Contains the date when the order can be picked up from the Supplier. This feld is only required if the Purchase Type of the order is Pickup. |
| appointmentDateTime | No | date-time | This column will hold the date and time of the receiving appointment at the warehouse. |
| importType | No | String (1) | Valid values are IMporter and EXporter. This is the default importer/ exporter assigned to the supplier of the Puchase order. |
Table 5-1271 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| importId | No | Number (10) | This identifes the importer/exporter assigned to the supplier. This should reference the WH. WH folumn with foreign key created. |
| clearingZoneId | No | String (5) | This column will hold the clearing zone id. |
| routingLocation | No | String (5) | This is the default routing location for the import order. FK on OUTLOC. OUTLOC_ID. |
| reApproveInd | No | String (1) | This feld indicates that the update to the corresponding purchase order needs to be performed, and then it should be approved again. Valid values are Y and N. |
| earliestShipDate | No | date | The date before which the item can not be shipped by the supplier. |
| latestShipDate | No | date | The date after which the item can not be shipped by the supplier. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| hts | No | Collection of Object | References the HTS code associated with a particular item of the purchase order. |
Table 5-1272 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1273 Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This feld contains an unique alphanumeric value that identifes the item. |
| packItem | No | String (25) | This feld contains alphanumeric value that uniquely identifes the pack. |
Table 5-1273 (Cont.) Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hts | Yes | String (25) | This feld contains an identifer for the Harmonized Tariff Schedule code. |
| status | Yes | String (1) | This feld contains a fag to indicate the status of the Purchase Order/ Item/HTS relationship. Valid values are (W)orksheet and (A)pproved. |
| originCountry | Yes | String (3) | This feld contains the country of manufacture when the HTS tracking level is M. When the HTS tracking level is S, this stores the country of sourcing. |
| importCountry | No | String (3) | This feld contains the country that the item will be imported in to. |
| assessments | No | Collection of Object | References the HTS code assessments associated with a particular item of the purchase order. |
Table 5-1274 Assessments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| component | Yes | String (10) | This feld contains a user specifed code representing the specifc assessment component found on the ELC_COMP table. |
| computationValueBase | No | String (10) | This feld contains a code representing the base value for calculating the assessment. |
| componentRate | Yes | Number (20,4) | This feld contains the rate to be charged against the calculation base. This feld will hold a percentage value if the Calculation Basis of the Component is Value or a monetary amount in the currency defned for the assessment (usually the import country’s currency) if the Calculation Basis is Specifc. |
| perCount | No | Number (12,4) | This feld contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10. |
| perCountUom | No | String (4) | This feld contains the unit of measure in which the Per Count is specifed. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count UOM would be the Unit of Measure code for Kilograms. |
Table 5-1274 (Cont.) Assessments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| nominationFlag1 | Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
| inDuty | Yes | String (1) | If Import Management is enabled in Merchandising (i. e. system_options. import_ind = Y), the inDuty fag is used to indicate if the value of the cost component should be included in total duty. |
| nominationFlag3 | Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense | Yes | String (1) | The inExpense fag is used to indicate if the value of the cost component should be included in total expenses. |
Table 5-1274 (Cont.) Assessments - Object. See list of elements for detail
Element Name Required Data Type Description inAlc Yes String (1) The inALC flag is used for cost components where the retailer does not expect to receive an actual value for the charge via an obligation or customs entry. The inALC flag allows the value of the cost component to be included in ALC via direct nomination and indicates to the system that the estimated value on the order should be used as the actual value as well because no other actual will be provided. Sample Input Message { "collectionSize": 1, "items": [ { "orderNo": 464690012, "supplier": 2400, "currencyCode": "USD", "terms": "02", "notBeforeDate": "2001-12-31", "notAfterDate": "2001-12-31", "otbEowDate": "2001-12-31", "dept": null, "status": "A", "includeOnOrderInd": "Y", "writtenDate": "2001-12-31", "origin": "2", "ediPoInd": "Y", "preMarkInd": "Y", "approvedBy": null, "commentDesc": "Create Order", "dataLoadingDestination": "RMS", "masterOrderNo": null, "ladingPort": "7", "dischargePort": "480", "factory": "100", "agent": "007", "shipMethod": "32", "partnerType1": "AG", "partner1": "007", "partnerType2": "E", "partner2": "4678", "partnerType3": null, "partner3": null, "importCountry": "US", "purchaseType": "FOB", "paymentMethod": "LC", "titlePassLocationType": "FF",
"titlePassLocation": "US",
"purchaseOrderType": "4000",
"orderType": "N/B",
"buyer": 1000,
"location": null,
"locationType": null,
"promotion": 41,
"qualityControlInd": "Y",
"freightTerms": "03",
"backhaulType": null,
"backhaulAllowance": null,
"shipPayMethod": "PO",
"transportationResponsibilityType": "FF",
"transportationResponsibility": "US",
"vendorOrderNo": "9987001",
"freightContractNo": "111",
"pickupLocation": null,
"pickupNo": null,
"pickupDate": null,
"appointmentDateTime": "2001-12-31T23:59:59.123Z",
"importType": "W",
"importId": 10001,
"clearingZoneId": null,
"routingLocation": null,
"reApproveInd": null,
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"hts": [
{
"item": "103900095",
"packItem": null,
"hts": "9014111112",
"status": "W",
"originCountry": "IN",
"importCountry": "US",
"assessments": [
{
"component": "DTYCAUS",
"computationValueBase": null,
"componentRate": 12,
"perCount": 1,
"perCountUom": "EA",
"nominationFlag1": "N",
"inDuty": "+",
"nominationFlag3": "-",
"inExpense": "N",
"inAlc": "N"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Purchase Order HTS Assessments
Functional Area
Purchase Orders
Business Overview
This webservice is used to update Harmonized Tariff Schedules assessments within Merchandising in order to keep it in sync with an external system that is responsible for maintaining purchase orders. It also updates order header information with the values provided in the request if the order is not yet submitted or approved. When updating assessment information for a purchase order that has been submitted or approved, the service internally sets the status of the order to Worksheet in order to accommodate the change in assessment information. Validation of the new information is performed before automatic order re-approval is attempted.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/purchaseOrder/hts/assessments/update
Input Payload Details
Table 5-1275 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of order HTS |
| Object | assessment records. |
Table 5-1276 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| supplier | No | Number (10) | The identifer of the supplier from which the order will be sourced. This cannot be modifed if details exist for the PO. |
| currencyCode | No | String (3) | The code of the order’s currency. If not populated, the supplier’s currency will be used. This feld can be modifed if the order status is worksheet or approved and the order has not been shipped. |
| terms | No | String (15) | The sales terms of the order. If not populated on the create message, will default to the supplier’s terms. This can be modifed in worksheet or approved status. |
| notBeforeDate | No | date | The frst date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| notAfterDate | No | date | The last date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| otbEowDate | No | date | The end of week date of the OTB bucket used. This can be modifed in worksheet or approved status. |
| dept | No | Number (4) | The department in which are all the items on the order. This feld is required if the system enforces single department ordering. This cannot be modifed if details exist for the PO. |
Table 5-1276 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| status | No | String (1) | The code for the status of the order. Valid values are ‘W’ worksheet and ‘A’ approved for PO creation. It is also possible to modify the status to ‘C’ closed. |
| includeOnOrderInd | No | String (1) | Indicates if the order should be included in on-order calculations. This can be modifed in worksheet or approved status. Valid values are Y and N. |
| writtenDate | No | date | The date the order was created. If this feld is not populated on the message it will default to the time of creation in RMS. It cannot be modifed. |
| origin | No | String (2) | Indicates where the order originated. Valid values include: 2 - Manual, 6 - AIP generated order, 7 , 8, 12 - Consignment Vendor Order. |
| ediPoInd | No | String (1) | Indicates whether or not the order will be transmitted to the supplier via an Electronic Data Exchange transaction. Valid values are: Y = Submit via EDI, N = Do not use EDI. |
| preMarkInd | No | String (1) | This feld indicated whether or not a supplier has agreed to break an order into separate boxes so that the boxes can be sent directly to stores. Valid values are Y and N. |
| approvedBy | No | String (254) | Indicates where the order was approved. It will be the user ID of the person approving the order. |
| commentDesc | No | String (2000) | Any comments pertaining to the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| masterOrderNo | No | Number (12) | This feld indicates the master order number from which child records were created. |
| ladingPort | No | String (5) | This feld indicates the port from which the items on the purchase order are shipped. |
| dischargePort | No | String (5) | This feld indicates the port at which the items on the purchase order will enter the country of import. |
| factory | No | String (10) | This feld indicates the factory at which the items on the purchase order are made. |
Table 5-1276 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| agent | No | String (10) | This feld indicates the agent that is used in the purchase of the items on the purchase order. |
| shipMethod | No | String (6) | This feld indicates the method used to ship the items on the purchase order from the country of origin to the country of import. |
| partnerType1 | No | String (6) | This feld indicates Partner 1 Type. |
| partner1 | No | String (10) | This feld indicates the Additional Partner 1. |
| partnerType2 | No | String (6) | This feld indicates Partner 2 Type. |
| partner2 | No | String (10) | This feld indicates the Additional Partner 2. |
| partnerType3 | No | String (6) | This feld indicates Partner 3 Type. |
| partner3 | No | String (10) | This feld indicates the Additional Partner 3. |
| importCountry | No | String (3) | The identifer of the country into which the items on the order are being imported. |
| purchaseType | No | String (6) | This feld indicates whats included in the suppliers cost of the item. Valid values include C (Cost), CI (Cost and Insurance), CIF (Cost, Insurance and Freight) and FOB (Free on Board). |
| paymentMethod | No | String (6) | This feld indicates the default method for how purchase orders for this site will be paid. Valid values are in the code type PYMT(Payment Method). Examples are Open Account(OA), Letter of Credit(LC) and Wire Transfer(WT). |
| titlePassLocationType | No | String (2) | Contains the code indicating the type of location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and City (CI). |
| titlePassLocation | No | String (250) | Contains the description of the location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. |
| purchaseOrderType | No | String (4) | This feld contains the value associated with the PO_TYPE for the order. |
Table 5-1276 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderType | No | String (3) | Indicates the type of order and which Open To Buy bucket will be updated. Valid values include: N/B - Non Basic, ARB - Automatic Reorder of Basic, BRB - Buyer Reorder of Basic, DSD - Direct Store Delivery |
| buyer | No | Number (4) | Contains the number associated with the buyer for the order. |
| location | No | Number (10) | This feld contains the location all items on the order will be delivered to if populated. i. e. It will mean a single location order. |
| locationType | No | String (1) | This feld contains the type of location in the location feld. Valid values are: Valid values are S (Store) or W (Warehouse). |
| promotion | No | Number (10) | Contains the RPCS offer ID associated with the order to provide a link between the order dialog and the promotions dialog. |
| qualityControlInd | No | String (1) | Determines whether or not quality control will be required when items for this order are received. Valid values are Y and N. |
| freightTerms | No | String (30) | Indicator that references what freight terms are related to the order. |
| backhaulType | No | String (6) | This feld contains the type of backhaul allowance that will be applied to the order. Some examples are Calculated or Flat rate. |
| backhaulAllowance | No | Number (20,4) | This feld will contain the backhaul allowance value. |
| shipPayMethod | No | String (2) | Code indicating the payment terms for freight charges associated with the order. Valid values include: CC - Collect, CF - Collect Freight Credited Back to Customer, DF - Defned by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller. |
| transportationResponsibility Type | No | String (2) | Contains the code indicating the type of location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and Country (CC). |
Table 5-1276 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transportationResponsibility | No | String (250) | Contains the description of the location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. |
| vendorOrderNo | No | String (15) | Contains the vendors unique identifying number for an order. These orders may have originated by the vendor through the EDI process or this number can be associated to a Oracle Retail order when the order is created on-line. |
| freightContractNo | No | String (10) | The number of the contract with a shipper that will give specifc freight rates. This feld is only available when the system is running Import functionality. |
| pickupLocation | No | String (250) | Contains the location at which the order will be picked up, if the order is a Pickup order. |
| pickupNo | No | String (25) | Contains the reference number of the Pickup order. |
| pickupDate | No | date | Contains the date when the order can be picked up from the Supplier. This feld is only required if the Purchase Type of the order is Pickup. |
| appointmentDateTime | No | date-time | This column will hold the date and time of the receiving appointment at the warehouse. |
| importType | No | String (1) | Valid values are IMporter and EXporter. This is the default importer/ exporter assigned to the supplier of the Puchase order. |
| importId | No | Number (10) | This identifes the importer/exporter assigned to the supplier. This should reference the WH. WH folumn with foreign key created. |
| clearingZoneId | No | String (5) | This column will hold the clearing zone id. |
| routingLocation | No | String (5) | This is the default routing location for the import order. FK on OUTLOC. OUTLOC_ID. |
| reApproveInd | No | String (1) | This feld indicates that the update to the corresponding purchase order needs to be performed, and then it should be approved again. Valid values are Y and N. |
| earliestShipDate | No | date | The date before which the item can not be shipped by the supplier. |
Table 5-1276 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| latestShipDate | No | date | The date after which the item can not be shipped by the supplier. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| hts | No | Collection of Object | References the HTS code associated with a particular item of the purchase order. |
Table 5-1277 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1278 Hts - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | This feld contains an unique alphanumeric value that identifes the item. |
| packItem | No | String (25) | This feld contains alphanumeric value that uniquely identifes the pack. |
| hts | Yes | String (25) | This feld contains an identifer for the Harmonized Tariff Schedule code. |
| status | Yes | String (1) | This feld contains a fag to indicate the status of the Purchase Order/ Item/HTS relationship. Valid values are (W)orksheet and (A)pproved. |
| originCountry | Yes | String (3) | This feld contains the country of manufacture when the HTS tracking level is M. When the HTS tracking level is S, this stores the country of sourcing. |
| importCountry | No | String (3) | This feld contains the country that the item will be imported in to. |
| assessments | No | Collection of Object | References the HTS code assessments associated with a particular item of the purchase order. |
Table 5-1279 Assessments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| component | Yes | String (10) | This feld contains a user specifed code representing the specifc assessment component found on the ELC_COMP table. |
| computationValueBase | No | String (10) | This feld contains a code representing the base value for calculating the assessment. |
| componentRate | Yes | Number (20,4) | This feld contains the rate to be charged against the calculation base. This feld will hold a percentage value if the Calculation Basis of the Component is Value or a monetary amount in the currency defned for the assessment (usually the import country’s currency) if the Calculation Basis is Specifc. |
| perCount | No | Number (12,4) | This feld contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10. |
| perCountUom | No | String (4) | This feld contains the unit of measure in which the Per Count is specifed. When creating an expense that is defned as $. 20 for every 10 kilograms of an item ordered, the Per Count UOM would be the Unit of Measure code for Kilograms. |
| nominationFlag1 | Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 1), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 1), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 1). For example, if cost component ABC has a + in Nomination Flag 1, then all CVBs that include Nomination Flag 1 will include this cost component value in their calculation basis. |
Table 5-1279 (Cont.) Assessments - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| inDuty | Yes | String (1) | If Import Management is enabled in Merchandising (i. e. system_options. import_ind = Y), the inDuty fag is used to indicate if the value of the cost component should be included in total duty. |
| nominationFlag3 | Yes | String (1) | This feld contains a fag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination fags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination fag set to Yes (Y). Valid values are: N/A (N) (the value of this component will not be included in CVBs which look at Nomination Flag 3), Add (+) (the value of this component will be added to CVBs which look at Nomination Flag 3), and Subtract (-) (the value of this component will be deducted from CVBs which look at Nomination Flag 3). For example, if cost component ABC has a + in Nomination Flag 3, then all CVBs that include Nomination Flag 3 will include this cost component value in their calculation basis. |
| inExpense | Yes | String (1) | The inExpense fag is used to indicate if the value of the cost component should be included in total expenses. |
| inAlc | Yes | String (1) | The inALC fag is used for cost components where the retailer does not expect to receive an actual value for the charge via an obligation or customs entry. The inALC fag allows the value of the cost component to be included in ALC via direct nomination and indicates to the system that the estimated value on the order should be used as the actual value as well because no other actual will be provided. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"orderNo": 464690012,
"supplier": 2400,
"currencyCode": "USD",
"terms": "02",
"notBeforeDate": "2001-12-31",
"notAfterDate": "2001-12-31",
"otbEowDate": "2001-12-31",
"dept": null,
"status": "A",
"includeOnOrderInd": "Y",
"writtenDate": "2001-12-31",
"origin": "2",
"ediPoInd": "Y",
"preMarkInd": "Y",
"approvedBy": null,
"commentDesc": "Create Order",
"dataLoadingDestination": "RMS",
"masterOrderNo": null,
"ladingPort": "7",
"dischargePort": "480",
"factory": "100",
"agent": "007",
"shipMethod": "32",
"partnerType1": "AG",
"partner1": "007",
"partnerType2": "E",
"partner2": "4678",
"partnerType3": null,
"partner3": null,
"importCountry": "US",
"purchaseType": "FOB",
"paymentMethod": "LC",
"titlePassLocationType": "FF",
"titlePassLocation": "US",
"purchaseOrderType": "4000",
"orderType": "N/B",
"buyer": 1000,
"location": null,
"locationType": null,
"promotion": 41,
"qualityControlInd": "Y",
"freightTerms": "03",
"backhaulType": null,
"backhaulAllowance": null,
"shipPayMethod": "PO",
"transportationResponsibilityType": "FF",
"transportationResponsibility": "US",
"vendorOrderNo": "9987001",
"freightContractNo": "111",
"pickupLocation": null,
"pickupNo": null,
"pickupDate": null,
"appointmentDateTime": "2001-12-31T23:59:59.123Z",
"importType": "W",
"importId": 10001,
"clearingZoneId": null,
"routingLocation": null,
"reApproveInd": null,
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"hts": [
{
"item": "103900095",
"packItem": null,
"hts": "9014111112",
"status": "W",
"originCountry": "IN",
"importCountry": "US",
"assessments": [
{
"component": "DTYCAUS",
"computationValueBase": null,
"componentRate": 12,
"perCount": 1,
"perCountUom": "EA",
"nominationFlag1": "N",
"inDuty": "+",
"nominationFlag3": "-",
"inExpense": "N",
"inAlc": "N"
}
]
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Purchase Order Letters of Credit
Functional Area
Purchase Orders
Business Overview
This webservice is used to update letter of credit information within Merchandising when order payment type is Letter of Credit in order to keep it in sync with an external system that is responsible for maintaining purchase orders. It also updates order header information with the values provided in the request if the order has not yet been submitted or approved. For an existing order that has a payment type of Letter of Credit, the modification of header level order information is not necessary; however header level fields, particularly the payment type can be updated in case a letter of credit needs to be attached to the worksheet order that has an existing payment type other than Letter of Credit. Internally, the service sets the status of the order to Worksheet in order to accommodate the modification of letter of credit information for purchase orders in the system that have been submitted or approved. Validation of updated information is performed before automatic order re-approval is attempted without having to use the separate Update Purchase Order Service. If order has been previously approved and the order is attached to a Letter of Credit, only the Transshipment and Partial Shipment can be changed in the letter of credit details.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/purchaseOrder/lettersOfCredit/update
Input Payload Details
Table 5-1280 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of | References a collection of letter of |
| Object | credit records. |
Table 5-1281 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| supplier | No | Number (10) | The identifer of the supplier from which the order will be sourced. This cannot be modifed if details exist for the PO. |
| currencyCode | No | String (3) | The code of the order’s currency. If not populated, the supplier’s currency will be used. This feld can be modifed if the order status is worksheet or approved and the order has not been shipped. |
| terms | No | String (15) | The sales terms of the order. If not populated on the create message, will default to the supplier’s terms. This can be modifed in worksheet or approved status. |
| notBeforeDate | No | date | The frst date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| notAfterDate | No | date | The last date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| otbEowDate | No | date | The end of week date of the OTB bucket used. This can be modifed in worksheet or approved status. |
| dept | No | Number (4) | The department in which are all the items on the order. This feld is required if the system enforces single department ordering. This cannot be modifed if details exist for the PO. |
| status | No | String (1) | The code for the status of the order. Valid values are ‘W’ worksheet and ‘A’ approved for PO creation. It is also possible to modify the status to ‘C’ closed. |
| includeOnOrderInd | No | String (1) | Indicates if the order should be included in on-order calculations. This can be modifed in worksheet or approved status. Valid values are Y and N. |
| writtenDate | No | date | The date the order was created. If this feld is not populated on the message it will default to the time of creation in RMS. It cannot be modifed. |
| origin | No | String (2) | Indicates where the order originated. Valid values include: 2 - Manual, 6 - AIP generated order, 7 , 8, 12 - Consignment Vendor Order. |
Table 5-1281 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| ediPoInd | No | String (1) | Indicates whether or not the order will be transmitted to the supplier via an Electronic Data Exchange transaction. Valid values are: Y = Submit via EDI, N = Do not use EDI. |
| preMarkInd | No | String (1) | This feld indicated whether or not a supplier has agreed to break an order into separate boxes so that the boxes can be sent directly to stores. Valid values are Y and N. |
| approvedBy | No | String (254) | Indicates where the order was approved. It will be the user ID of the person approving the order. |
| commentDesc | No | String (2000) | Any comments pertaining to the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| masterOrderNo | No | Number (12) | This feld indicates the master order number from which child records were created. |
| ladingPort | No | String (5) | This feld indicates the port from which the items on the purchase order are shipped. |
| dischargePort | No | String (5) | This feld indicates the port at which the items on the purchase order will enter the country of import. |
| factory | No | String (10) | This feld indicates the factory at which the items on the purchase order are made. |
| agent | No | String (10) | This feld indicates the agent that is used in the purchase of the items on the purchase order. |
| shipMethod | No | String (6) | This feld indicates the method used to ship the items on the purchase order from the country of origin to the country of import. |
| partnerType1 | No | String (6) | This feld indicates Partner 1 Type. |
| partner1 | No | String (10) | This feld indicates the Additional Partner 1. |
| partnerType2 | No | String (6) | This feld indicates Partner 2 Type. |
| partner2 | No | String (10) | This feld indicates the Additional Partner 2. |
| partnerType3 | No | String (6) | This feld indicates Partner 3 Type. |
| partner3 | No | String (10) | This feld indicates the Additional Partner 3. |
Table 5-1281 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| importCountry | No | String (3) | The identifer of the country into which the items on the order are being imported. |
| purchaseType | No | String (6) | This feld indicates whats included in the suppliers cost of the item. Valid values include C (Cost), CI (Cost and Insurance), CIF (Cost, Insurance and Freight) and FOB (Free on Board). |
| paymentMethod | No | String (6) | This feld indicates the default method for how purchase orders for this site will be paid. Valid values are in the code type PYMT(Payment Method). Examples are Open Account(OA), Letter of Credit(LC) and Wire Transfer(WT). |
| titlePassLocationType | No | String (2) | Contains the code indicating the type of location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and City (CI). |
| titlePassLocation | No | String (250) | Contains the description of the location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. |
| purchaseOrderType | No | String (4) | This feld contains the value associated with the PO_TYPE for the order. |
| orderType | No | String (3) | Indicates the type of order and which Open To Buy bucket will be updated. Valid values include: N/B - Non Basic, ARB - Automatic Reorder of Basic, BRB - Buyer Reorder of Basic, DSD - Direct Store Delivery |
| buyer | No | Number (4) | Contains the number associated with the buyer for the order. |
| location | No | Number (10) | This feld contains the location all items on the order will be delivered to if populated. i. e. It will mean a single location order. |
| locationType | No | String (1) | This feld contains the type of location in the location feld. Valid values are: Valid values are S (Store) or W (Warehouse). |
| promotion | No | Number (10) | Contains the RPCS offer ID associated with the order to provide a link between the order dialog and the promotions dialog. |
Table 5-1281 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| qualityControlInd | No | String (1) | Determines whether or not quality control will be required when items for this order are received. Valid values are Y and N. |
| freightTerms | No | String (30) | Indicator that references what freight terms are related to the order. |
| backhaulType | No | String (6) | This feld contains the type of backhaul allowance that will be applied to the order. Some examples are Calculated or Flat rate. |
| backhaulAllowance | No | Number (20,4) | This feld will contain the backhaul allowance value. |
| shipPayMethod | No | String (2) | Code indicating the payment terms for freight charges associated with the order. Valid values include: CC - Collect, CF - Collect Freight Credited Back to Customer, DF - Defned by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller. |
| transportationResponsibility Type | No | String (2) | Contains the code indicating the type of location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and Country (CC). |
| transportationResponsibility | No | String (250) | Contains the description of the location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. |
| vendorOrderNo | No | String (15) | Contains the vendors unique identifying number for an order. These orders may have originated by the vendor through the EDI process or this number can be associated to a Oracle Retail order when the order is created on-line. |
| freightContractNo | No | String (10) | The number of the contract with a shipper that will give specifc freight rates. This feld is only available when the system is running Import functionality. |
| pickupLocation | No | String (250) | Contains the location at which the order will be picked up, if the order is a Pickup order. |
| pickupNo | No | String (25) | Contains the reference number of the Pickup order. |
Table 5-1281 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| pickupDate | No | date | Contains the date when the order can be picked up from the Supplier. This feld is only required if the Purchase Type of the order is Pickup. |
| appointmentDateTime | No | date-time | This column will hold the date and time of the receiving appointment at the warehouse. |
| importType | No | String (1) | Valid values are IMporter and EXporter. This is the default importer/ exporter assigned to the supplier of the Puchase order. |
| importId | No | Number (10) | This identifes the importer/exporter assigned to the supplier. This should reference the WH. WH folumn with foreign key created. |
| clearingZoneId | No | String (5) | This column will hold the clearing zone id. |
| routingLocation | No | String (5) | This is the default routing location for the import order. FK on OUTLOC. OUTLOC_ID. |
| reApproveInd | No | String (1) | This feld indicates that the update to the corresponding purchase order needs to be performed, and then it should be approved again. Valid values are Y and N. |
| earliestShipDate | No | date | The date before which the item can not be shipped by the supplier. |
| latestShipDate | No | date | The date after which the item can not be shipped by the supplier. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
| letterOfCredit | No | Record | References the letter of credit for the purchase order. |
Table 5-1282 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Table 5-1283 LetterOfCredit - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| lcReferenceId | No | Number (8) | This feld contains the ID of the LC to which the order is attached. |
| lcGroupId | No | String (10) | This feld contains an ID that can be used to group Orders together so that they can be attached to a single Letter of Credit. |
| applicant | Yes | String (10) | This feld contains the ID of the applicant being used for the LC process. |
| benefciary | Yes | Number (10) | This feld contains the ID of the benefciary being used for the LC process. |
| merchandiseDescription | Yes | String (2000) | This feld holds a description of the merchandise on the order. |
| transshipmentInd | Yes | String (1) | This feld indicates whether or not the LC to which the order is attached will allow the order to be transshipped. Valid values are ‘Y’es and ‘N’o. |
| partialShipmentInd | Yes | String (1) | This feld indicates whether or not the LC to which the order is attached will allow the order to be partially shipped. Valid values are ‘Y’es and ’N’o. |
| lcAttachedInd | Yes | String (1) | This feld indicates whether or not the order has been attached to a Letter of Credit. Valid values are Y and N. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"orderNo": 464690012,
"supplier": 2400,
"currencyCode": "USD",
"terms": "02",
"notBeforeDate": "2001-12-31",
"notAfterDate": "2001-12-31",
"otbEowDate": "2001-12-31",
"dept": null,
"status": "A",
"includeOnOrderInd": "Y",
"writtenDate": "2001-12-31",
"origin": "2",
"ediPoInd": "Y",
"preMarkInd": "Y",
"approvedBy": null,
"commentDesc": "Create Order",
"dataLoadingDestination": "RMS",
"masterOrderNo": null,
"ladingPort": "7",
"dischargePort": "480",
"factory": "100",
"agent": "007",
"shipMethod": "32",
"partnerType1": "AG",
"partner1": "007",
"partnerType2": "E",
"partner2": "4678",
"partnerType3": null,
"partner3": null,
"importCountry": "US",
"purchaseType": "FOB",
"paymentMethod": "LC",
"titlePassLocationType": "FF",
"titlePassLocation": "US",
"purchaseOrderType": "4000",
"orderType": "N/B",
"buyer": 1000,
"location": null,
"locationType": null,
"promotion": 41,
"qualityControlInd": "Y",
"freightTerms": "03",
"backhaulType": null,
"backhaulAllowance": null,
"shipPayMethod": "PO",
"transportationResponsibilityType": "FF",
"transportationResponsibility": "US",
"vendorOrderNo": "9987001",
"freightContractNo": "111",
"pickupLocation": null,
"pickupNo": null,
"pickupDate": null,
"appointmentDateTime": "2001-12-31T23:59:59.123Z",
"importType": "W",
"importId": 10001,
"clearingZoneId": null,
"routingLocation": null,
"reApproveInd": null,
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
],
"letterOfCredit": {
"lcReferenceId": 10015000,
"lcGroupId": null,
"applicant": "500",
"beneficiary": 2400,
"merchandiseDescription": "Bath Essentials",
"transshipmentInd": "Y",
"partialShipmentInd": "Y",
"lcAttachedInd": "Y"
}
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Update Purchase Orders
Functional Area
Purchase Orders
Business Overview
This webservice is used to update purchase orders in order to keep Merchandising in sync with an external system that is responsible for maintaining purchase orders. It can be used to modify only certain header level attributes of existing purchase orders. There are certain fields that are not allowed to be updated at header level depending on the status, and if these are still provided in the message, they will simply be ignored and no error message will be returned. Modification of the following header level fields is allowed while the order is submitted or approved, without having to set the order in worksheet status: status, not before date, not after date, terms, include on-order indicator, and comments.
For more details on Purchase Orders, see the Create Purchase Order service description.
Service Type
PUT
ReST URL
MerchIntegrations/services/purchaseOrders/update
Input Payload Details
Table 5-1284 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | Yes | Collection of | |
| Object |
Table 5-1285 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| orderNo | Yes | Number (12) | The unique identifer for the order. |
| supplier | No | Number (10) | The identifer of the supplier from which the order will be sourced. This cannot be modifed if details exist for the PO. |
| terms | No | String (15) | The sales terms of the order. If not populated on the create message, will default to the supplier’s terms. This can be modifed in worksheet or approved status. |
| notBeforeDate | No | date | The frst date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| notAfterDate | No | date | The last date that delivery will be accepted. This can be modifed in worksheet or approved status. |
| otbEowDate | No | date | The end of week date of the OTB bucket used. This can be modifed in worksheet or approved status. |
| dept | No | Number (4) | The department in which are all the items on the order. This feld is required if the system enforces single department ordering. This cannot be modifed if details exist for the PO. |
| status | No | String (1) | The code for the status of the order. Valid values are ‘W’ worksheet and ‘A’ approved for PO creation. It is also possible to modify the status to ‘C’ closed. |
Table 5-1285 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| exchangeRate | No | Number (20,10) | The rate of exchange for the PO used between the order and primary currencies. This feld can be modifed if the order status is worksheet or approved and the order has not been shipped.. |
| includeOnOrderInd | No | String (1) | Indicates if the order should be included in on-order calculations. This can be modifed in worksheet or approved status. Valid values are Y and N. |
| writtenDate | No | date | The date the order was created. If this feld is not populated on the message it will default to the time of creation in RMS. It cannot be modifed. |
| origin | No | String (2) | Indicates where the order originated. Valid values include: 2 - Manual, 6 - AIP generated order, 7 , 8, 12 - Consignment Vendor Order. |
| ediPoInd | No | String (1) | Indicates whether or not the order will be transmitted to the supplier via an Electronic Data Exchange transaction. Valid values are: Y = Submit via EDI, N = Do not use EDI. |
| preMarkInd | No | String (1) | This feld indicated whether or not a supplier has agreed to break an order into separate boxes so that the boxes can be sent directly to stores. Valid values are Y and N. |
| approvedBy | No | String (254) | Indicates where the order was approved. It will be the user ID of the person approving the order. |
| commentDesc | No | String (2000) | Any comments pertaining to the order. |
| dataLoadingDestination | No | String (6) | This feld indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defned, the default is STG. |
| masterOrderNo | No | Number (12) | This feld indicates the master order number from which child records were created. |
| ladingPort | No | String (5) | This feld indicates the port from which the items on the purchase order are shipped. |
| dischargePort | No | String (5) | This feld indicates the port at which the items on the purchase order will enter the country of import. |
| factory | No | String (10) | This feld indicates the factory at which the items on the purchase order are made. |
Table 5-1285 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| agent | No | String (10) | This feld indicates the agent that is used in the purchase of the items on the purchase order. |
| shipMethod | No | String (6) | This feld indicates the method used to ship the items on the purchase order from the country of origin to the country of import. |
| partnerType1 | No | String (6) | This feld indicates Partner 1 Type. |
| partner1 | No | String (10) | This feld indicates the Additional Partner 1. |
| partnerType2 | No | String (6) | This feld indicates Partner 2 Type. |
| partner2 | No | String (10) | This feld indicates the Additional Partner 2. |
| partnerType3 | No | String (6) | This feld indicates Partner 3 Type. |
| partner3 | No | String (10) | This feld indicates the Additional Partner 3. |
| purchaseType | No | String (6) | This feld indicates what is included in the suppliers cost of the item. Valid values include C (Cost), CI (Cost and Insurance), CIF (Cost, Insurance and Freight) and FOB (Free on Board). |
| paymentMethod | No | String (6) | This feld indicates the default method for how purchase orders for this site will be paid. Valid values are in the code type PYMT(Payment Method). Examples are Open Account(OA), Letter of Credit(LC) and Wire Transfer(WT). |
| titlePassLocationType | No | String (2) | Contains the code indicating the type of location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and City (CI). |
| titlePassLocation | No | String (250) | Contains the description of the location or point where ownership of merchandise changes hands from seller/supplier to buyer/retailer. |
| purchaseOrderType | No | String (4) | This feld contains the value associated with the PO_TYPE for the order. |
| orderType | No | String (3) | Indicates the type of order and which Open To Buy bucket will be updated. Valid values include: N/B - Non Basic, ARB - Automatic Reorder of Basic, BRB - Buyer Reorder of Basic, DSD - Direct Store Delivery |
Table 5-1285 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| buyer | No | Number (4) | Contains the number associated with the buyer for the order. |
| location | No | Number (10) | This feld contains the location all items on the order will be delivered to if populated. i. e. It will mean a single location order. |
| locationType | No | String (1) | This feld contains the type of location in the location feld. Valid values are: Valid values are S (Store) or W (Warehouse). |
| promotion | No | Number (10) | Contains the RPCS offer ID associated with the order to provide a link between the order dialog and the promotions dialog. |
| qualityControlInd | No | String (1) | Determines whether or not quality control will be required when items for this order are received. Valid values are Y and N. |
| freightTerms | No | String (30) | Indicator that references what freight terms are related to the order. |
| backhaulType | No | String (6) | This feld contains the type of backhaul allowance that will be applied to the order. Some examples are Calculated or Flat rate. |
| backhaulAllowance | No | Number (20,4) | This feld will contain the backhaul allowance value. |
| shipPayMethod | No | String (2) | Code indicating the payment terms for freight charges associated with the order. Valid values include: CC - Collect, CF - Collect Freight Credited Back to Customer, DF - Defned by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller. |
| transportationResponsibility Type | No | String (2) | Contains the code indicating the type of location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. Valid values are found under the FOBT code type. Examples are City and State (AC), Country Of Sourcing (CA) and Country (CC). |
| transportationResponsibility | No | String (250) | Contains the description of the location or point at which the responsibility for transportation transfers from the seller/supplier to the buyer/retailer. |
Table 5-1285 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| vendorOrderNo | No | String (15) | Contains the vendors unique identifying number for an order. These orders may have originated by the vendor through the EDI process or this number can be associated to an Oracle Retail order when the order is created on-line. |
| freightContractNo | No | String (10) | The number of the contract with a shipper that will give specifc freight rates. This feld is only available when the system is running Import functionality. |
| pickupLocation | No | String (250) | Contains the location at which the order will be picked up, if the order is a Pickup order. |
| pickupNo | No | String (25) | Contains the reference number of the Pickup order. |
| pickupDate | No | date | Contains the date when the order can be picked up from the Supplier. This feld is only required if the Purchase Type of the order is Pickup. |
| appointmentDateTime | No | date-time | This column will hold the date and time of the receiving appointment at the warehouse. |
| importType | No | String (1) | Valid values are IMporter and EXporter. This is the default importer/ exporter assigned to the supplier of the Purchase order. |
| importId | No | Number (10) | This identifes the importer/exporter assigned to the supplier. This should reference the WH. WH column with foreign key created. |
| clearingZoneId | No | String (5) | This column will hold the clearing zone id. |
| routingLocation | No | String (5) | This is the default routing location for the import order. FK on OUTLOC. OUTLOC_ID. |
| reApproveInd | No | String (1) | This feld indicates that the update to the corresponding purchase order needs to be performed, and then it should be approved again. Valid values are Y and N. |
| earliestShipDate | No | date | The date before which the item cannot be shipped by the supplier. |
| latestShipDate | No | date | The date after which the item cannot be shipped by the supplier. |
Table 5-1285 (Cont.) Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| fleId | No | String (20) | In order to support supplier pooling via the buyer worksheet, the recommended order quantities for the individual suppliers are linked together for logistical purposes while generating orders from the worksheet based on this identifer. |
| customFlexAttribute | No | Collection of Object | References a collection of custom fexible attributes. This collection is treated as a single group and should include all named fexible attributes for the business entity. If any confgured named attribute is missing from the input collection, its value will be set to NULL. |
Table 5-1286 CustomFlexAttribute - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| name | Yes | String (30) | Holds the attribute name. |
| value | No | String (250) | Holds the numeric or string value of the attribute. |
| valueDate | No | date | Holds the date value of the attribute. |
Sample Input Message
{
"items": [
{
"orderNo": 464690012,
"supplier": 2400,
"terms": "02",
"notBeforeDate": "2001-12-31",
"notAfterDate": "2001-12-31",
"otbEowDate": "2001-12-31",
"dept": null,
"status": "A",
"exchangeRate": 2,
"includeOnOrderInd": "Y",
"writtenDate": "2001-12-31",
"origin": "2",
"ediPoInd": "Y",
"preMarkInd": "Y",
"approvedBy": null,
"commentDesc": "Create Order",
"dataLoadingDestination": "RMS",
"masterOrderNo": null,
"ladingPort": "7",
"dischargePort": "480",
"factory": "100",
"agent": "007",
"shipMethod": "32",
"partnerType1": "AG",
"partner1": "007",
"partnerType2": "E",
"partner2": "4678",
"partnerType3": null,
"partner3": null,
"purchaseType": "FOB",
"paymentMethod": "LC",
"titlePassLocationType": "FF",
"titlePassLocation": "US",
"purchaseOrderType": "4000",
"orderType": "N/B",
"buyer": 1000,
"location": null,
"locationType": null,
"promotion": 41,
"qualityControlInd": "Y",
"freightTerms": "03",
"backhaulType": null,
"backhaulAllowance": null,
"shipPayMethod": "PO",
"transportationResponsibilityType": "FF",
"transportationResponsibility": "US",
"vendorOrderNo": "9987001",
"freightContractNo": "111",
"pickupLocation": null,
"pickupNo": null,
"pickupDate": null,
"appointmentDateTime": "2001-12-31T23:59:59.123Z",
"importType": "W",
"importId": 10001,
"clearingZoneId": null,
"routingLocation": null,
"reApproveInd": null,
"earliestShipDate": "2001-12-31",
"latestShipDate": "2001-12-31",
"fileId": "String",
"customFlexAttribute": [
{
"name": "REVIEW_DATE",
"value": null,
"valueDate": "2001-12-31"
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Service call is successful"
}
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"
]
}
Replenishment
The following services are included in this functional area:
-
Inventory Request Upload Service
- Create Inventory Requests
-
Replenishment Scheduled Update Upload Service
Inventory Request Upload Service
The following services are included in this functional area:
- Create Inventory Requests
Create Inventory Requests
Functional Area
Replenishment
Business Overview
Merchandising receives requests for inventory using this service, which allows for items to be ordered by the store and fulfilled through Merchandising. Unlike store order replenishment, Merchandising fulfills inventory requests from the store regardless of replenishment review cycles, delivery dates, and any other factors that may restrict a request from being fulfilled.
For item/store combinations that are on the Store Order type of replenishment in Merchandising, orders will be placed using this service and then the replenishment process builds the recommended order quantity (ROQ) based on the store’s requests. Requests that will not be reviewed prior to the date requested by the store are fulfilled through a one-off process (through this service) that creates warehouse transfers and/or purchase orders to fulfill the requested quantities.
For item/location combinations that are currently using other methods of replenishment in Merchandising, the store requested quantities will be added on top of the calculated recommended order quantities to increase the overall replenishment. It can also be used for item/store combinations not on replenishment in Merchandising. In these cases, the one-off process described above will be used to create purchase orders or transfers, utilizing attributes defined for the item/location.
Other validation notes:
-
Order quantities will be rounded using the store order multiple when an order is created for a warehouse or rounded to the case size if ordering from the supplier.
-
Up charges will always be applied to a transfer, if they are defined for the items with locations matching the transfer.
-
Merchandising will validate that all items belong to the same department when department level ordering (supplier) or department level transfers (warehouse) are being used.
-
The store must be open for ordering.
Service Type
POST
ReST URL
MerchIntegrations/services/inventory/requests/create
Input Payload Details
Table 5-1287 Create - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of inventory request details. |
Table 5-1288 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| requestId | Yes | Number (10) | Used to build an error record when necessary. |
| store | Yes | Number (10) | The store ID which is requesting the item. The store must exist as a valid stockholding store in Merchandising. |
| requestType | Yes | String (2) | Defnes the request type. Valid values are: Store order (SO) or Inventory Request (IR). If the request type is SO or blank, then replenishment method should be store order. If the request type is IR, delivery slot should be provided. |
| details | Yes | Collection of Object | References a collection of items on the inventory request. |
Table 5-1289 Details - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Unique alphanumeric value that identifes the item to be requested. The item must be approved, orderable, and inventoried item; it must also be ranged to the location in the inventory request and must be active at that location. |
| quantity | Yes | Number (12,4) | This is the quantity being requested in standard UOM. |
| unitOfPurchase | Yes | String (6) | Unit of purchase must either be eaches (EA), case (CA), or pallet (PA). |
| needDate | Yes | date | This is the date that the store needs the item by. |
| deliverySlotId | No | String (15) | Specifes when the store requested quantity is needed at the store. Valid delivery slots are in the DELIVERY_SLOT table. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"requestId": 693933,
"store": 6000,
"requestType": "SO",
"details": [
{
"item": "100100076",
"quantity": 3,
"unitOfPurchase": "EA",
"needDate": "2001-12-31",
"deliverySlotId": null
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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 do not match the schema definition for this service.
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"
}
]
}
Replenishment Scheduled Update Upload Service
This section describes the Replenishment Schedule service.
Functional Area
Inventory Movement
Business Overview
The primary role of these services is to create, modify, and delete scheduled replenishments and send them to Merchandising.
Create Scheduled Replenishment Updates
This section describes the Create Replenishment Schedule service.
Business Overview
This service creates scheduled replenishments by calling the SVCPROV_REPL package to load input data to the staging tables and then calling the core replenishment package to validate and insert data to the Merchandising tables.
Service Type
Post
ReST URL
inventory/replenishment/createReplSched
Input Parameters
Table 5-1290 ReplSchedCreModRDO
| Parameter Name | Data Type |
|---|---|
| replAttrId | BigDecimal |
| schRplDesc | String |
| scheduledActiveDate | Date |
| replAction | String |
| item | String |
| diff1 | String |
| diff2 | String |
| diff3 | String |
| diff4 | String |
| dept | BigDecimal |
| class1 | BigDecimal |
| subclass | BigDecimal |
| loc | BigDecimal |
| locType | String |
| autoRangeInd | String |
| activateDate | Date |
| deactivateDate | Date |
| presStock | BigDecimal |
| demoStock | BigDecimal |
| stockCat | String |
| replOrderCtrl | String |
| sourcingWh | BigDecimal |
| supplier | BigDecimal |
| originCountryId | String |
| pickupLeadTime | BigDecimal |
| whLeadTime | BigDecimal |
| replMethodInd | String |
Table 5-1290 (Cont.) ReplSchedCreModRDO
| Parameter Name | Data Type |
|---|---|
| replMethod | String |
| optimizeInd | String |
| minStock | BigDecimal |
| maxStock | BigDecimal |
| incrPct | BigDecimal |
| minSupplyDays | BigDecimal |
| maxSupplyDays | BigDecimal |
| timeSupplyHorizon | BigDecimal |
| addLeadTimeInd | String |
| invSellingDays | BigDecimal |
| serviceLevelType | String |
| serviceLevel | BigDecimal |
| serviceLevelFloatingStd | String |
| lostSalesFactor | BigDecimal |
| terminalStockQty | BigDecimal |
| seasonId | BigDecimal |
| phaseId | BigDecimal |
| rejectStoreOrdInd | String |
| multRunsPerDayInd | String |
| tsfZeroSohInd | String |
| nonScalingInd | String |
| maxScaleValue | BigDecimal |
| sizeProfileInd | String |
| reviewCycle | String |
| updateDaysInd | String |
| mondayInd | String |
| tuesdayInd | String |
| wednesdayInd | String |
| thursdayInd | String |
| fridayInd | String |
| saturdayInd | String |
| sundayInd | String |
| primaryPackNo | String |
| defaultPackInd | String |
| removePackInd | String |
| mraUpdate | String |
| mraRestore | String |
| includeAdditionalDemand | String |
| storeUserAccess | String |
Table 5-1290 (Cont.) ReplSchedCreModRDO
Parameter Name Data Type storeToleranceType String storeToleranceLimit BigDecimal
JSON Structure:
[
{"replAttrId": null,
"schRplDesc": null,
"scheduledActiveDate": "yyyy-MM-dd",
"replAction": null,
"item": null,
"diff1": null,
"diff2": null,
"diff3": null,
"diff4": null,
"dept": null,
"class1": null,
"subclass": null,
"loc": null,
"locType": null,
"autoRangeInd": null,
"activateDate": "yyyy-MM-dd",
"deactivateDate": "yyyy-MM-dd",
"presStock": null,
"demoStock": null,
"stockCat": null,
"replOrderCtrl": null,
"sourcingWh": null,
"supplier": null,
"originCountryId": null,
"pickupLeadTime": null,
"whLeadTime": null,
"replMethodInd": null,
"replMethod": null,
"optimizeInd":null,
"minStock": null,
"maxStock": null,
"incrPct": null,
"minSupplyDays": null,
"maxSupplyDays": null,
"timeSupplyHorizon": null,
"addLeadTimeInd": null,
"invSellingDays": null,
"serviceLevelType": null,
"serviceLevel": null,
"serviceLevelFloatingStd": null,
"lostSalesFactor": null,
"terminalStockQty": null,
"seasonId": null,
"phaseId": null,
"rejectStoreOrdInd": null,
"multRunsPerDayInd": null,
"tsfZeroSohInd": null,
"nonScalingInd": null,
"maxScaleValue": null,
"sizeProfileInd": null,
"reviewCycle": null,
"updateDaysInd": null,
"mondayInd": null,
"tuesdayInd": null,
"wednesdayInd": null,
"thursdayInd": null,
"fridayInd": null,
"saturdayInd": null,
"sundayInd": null,
"primaryPackNo": null,
"defaultPackInd": null,
"removePackInd": null,
"mraUpdate": null,
"mraRestore": null,
"includeAdditionalDemand": null,
"storeUserAccess": null,
"storeToleranceType": null,
"storeToleranceLimit": null}]
Output
Table 5-1291 ReplStatusRDO
| Parameter Name | Data Type |
|---|---|
| statusMsg | String |
| failReplTable | List |
Table 5-1292 ReplFailRDO
| Parameter Name | Data Type |
|---|---|
| replAttrId | BigDecimal |
| item | String |
| dept | BigDecimal |
| class1 | BigDecimal |
| subclass | BigDecimal |
| loc | BigDecimal |
| locType | String |
| effectiveDate | Long |
| errorMsg | String |
The output will contain the status of the request including validation errors, if any.
JSON Structure:
{
"statusMsg": null,
"failReplTable": [
{
"replAttrId": null,
"item": null,
"dept": null,
"class1": null,
"subclass": null,
"loc": null,
"locType": null,
"effectiveDate": null,
"errorMsg": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| REPL_ATTR_UPDATE_HEAD | Yes | Yes | No | No |
| REPL_ATTR_UPDATE_ITEM | Yes | Yes | No | No |
| REPL_ATTR_UPDATE_LOC | Yes | Yes | No | No |
| SVC_PROCESS_TRACKER | Yes | Yes | Yes | No |
| CORESVC_REPL_ERR | No | Yes | No | No |
| SVC_REPL_ATTR_UPDATE | Yes | Yes | No | Yes |
| REPL_ITEM_LOC | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
| V_WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Manage Additional Demand in Replenishment Order Quantity (ROQ)
Functional Area
Replenishment
Business Overview
This service allows external systems to send the additional demand for the following replenishment methods: Time Supply, Time Supply - Issues, Time Supply - Seasonal,
Dynamic, Dynamic - Issues, Dynamic - Seasonal. If the item/Location has additional demand enabled for these forecast based replenishment methods, then the forecasted demand will be augmented based on the additional demand at the location and the replenishment order quantity (ROQ) generated will be based on the overall demand.
This management service supports both create and update actions. After all field validations are completed successfully, the additional demand record in the message will be inserted, if the demand record does not exist for the given item/location/date or, if the additional demand exists, the additional demand quantity and unit of measure (UOM) fields will be updated. If the message contains zero in the additional demand quantity field for an existing record, the service will delete this record from the Merchandising table.
Service Type
POST
ReST URL
MerchIntegrations/services/replenishment/additionalDemand/manage
Input Payload Details
Table 5-1293 Manage - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. |
| items | Yes | Collection of Object | References a collection of additional demand quantities. |
Table 5-1294 Items - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Contains the Item for which additional demand needs to get added in ROQ. |
| locationType | Yes | String (1) | This indicates the type for the location. Valid values are S - Store and W - Warehouse. |
| location | Yes | Number (10) | Contains the location corresponding to the forecast information for the item. |
| demandDate | Yes | date | Contains the date for additional demand. |
| additionalDemandQuantity | Yes | Number (12,4) | This feld contains the additional demand for the given item/location/ date combination. |
| additionalDemandUom | No | String (4) | Indicates the unit of measure in which the additional demand is uploaded by the external system. When storing the additional demand in the database table, the additional demand is converted into item’s standard UOM. |
Table 5-1295 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | Contains the Item for which additional demand needs to get added in ROQ. |
| locationType | No | String (1) | This indicates the type for the location. Valid values are S - Store and W - Warehouse. |
| location | No | Number (10) | Contains the location corresponding to the forecast information for the item. |
| demandDate | No | date | Contains the date for additional demand. |
| additionalDemandQuantity | No | Number (12,4) | This feld contains the additional demand for the given item/location/ date combination. |
| additionalDemandUom | No | String (4) | Indicates the unit of measure in which the additional demand is uploaded by the external system. When storing the additional demand in the database table, the additional demand is converted into item’s standard UOM. |
| errors | No | Array of String | Holds the errors of the record. |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"item": "101450060",
"locationType": "S",
"location": 1131,
"demandDate": "2001-12-31",
"additionalDemandQuantity": 60,
"additionalDemandUom": "EA"
}
]
}
Response Code: 200 (Success)
Response Code: 400 (Error)
In case of an error, the following standard error response is returned. The element validationErrors is present when input payload or input parameters do not follow the schema definition for this service. The element businessError is present if the payload passes schema validation but an exception is caught while processing the business logic.
Table 5-1296 ManageError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | No | String (25) | Contains the Item for which additional demand needs to get added in ROQ. |
| locationType | No | String (1) | This indicates the type for the location. Valid values are S - Store and W - Warehouse. |
| location | No | Number (10) | Contains the location corresponding to the forecast information for the item. |
| demandDate | No | date | Contains the date for additional demand. |
| additionalDemandQuantity | No | Number (12,4) | This feld contains the additional demand for the given item/location/ date combination. |
| additionalDemandUom | No | String (4) | Indicates the unit of measure in which the additional demand is uploaded by the external system. When storing the additional demand in the database table, the additional demand is converted into item’s standard UOM. |
| errors | No | Array of String | Holds the errors of the record. |
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": [
{
"item": "101450060",
"locationType": "S",
"location": 1131,
"demandDate": "2001-12-31",
"additionalDemandQuantity": 60,
"additionalDemandUom": "EA",
"errors": [
"String"
]
}
]
}
Delete Scheduled Replenishment Updates
This section describes the Delete Replenishment Schedule service.
Business Overview
This service deletes scheduled replenishments by calling the SVCPROV_REPL package to load input to the staging tables and then calling the core replenishment package to validate and delete data from the Merchandising tables.
Service Type
Post
ReST URL
inventory/replenishment/deleteReplSched
Input Parameters
Table 5-1297 ReplSchedDelRDO
| Parameter Name | Data Type |
|---|---|
| replAttrId | BigDecimal |
| item | String |
| dept | BigDecimal |
| class1 | BigDecimal |
| subclass | BigDecimal |
| loc | BigDecimal |
| locType | String |
JSON Structure:
[
{
"replAttrId": null,
"item": null,
"dept": null,
"class1": null,
"subclass": null,
"loc": null,
"locType": null
}
]
Output
Table 5-1298 ReplStatusRDO
| Parameter Name | Data Type |
|---|---|
| statusMsg | String |
| failReplTable | List |
The output will contain the status of the request including validation errors, if any.
Table 5-1299 ReplFailRDO
Parameter Name Data Type replAttrId BigDecimal item String dept BigDecimal class1 BigDecimal subclass BigDecimal loc BigDecimal locType String effectiveDate Long errorMsg String JSON Structure: { "statusMsg": null, "failReplTable": [ { "replAttrId": null, "item": null, "dept": null, "class1": null, "subclass": null, "loc": null, "locType": null, "effectiveDate": null, "errorMsg": null, "links": [], "hyperMediaContent": { "linkRDO": [] } } ], "links": [], "hyperMediaContent": { "linkRDO": [] } }
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| REPL_ATTR_UPDATE_HEAD | Yes | Yes | No | Yes |
| REPL_ATTR_UPDATE_ITEM | Yes | Yes | No | Yes |
| REPL_ATTR_UPDATE_LOC | Yes | Yes | No | Yes |
| SVC_PROCESS_TRACKER | Yes | Yes | Yes | No |
| CORESVC_REPL_ERR | No | Yes | No | No |
| SVC_REPL_ATTR_UPDATE | Yes | Yes | No | Yes |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Update Scheduled Replenishment Updates
This section describes the Modify Replenishment service.
Business Overview
This service modifies scheduled replenishments by calling the SVCPROV_REPL package to load input to the staging tables and then calling the core replenishment package to validate and process data to the Merchandising tables.
Service Type
Post
ReST URL
inventory/replenishment/modifyReplSched
Input Parameters
Table 5-1300 ReplSchedCreModRDO
| Parameter Name | Data Type |
|---|---|
| replAttrId | BigDecimal |
| schRplDesc | String |
| scheduledActiveDate | Date |
| replAction | String |
| item | String |
| diff1 | String |
| diff2 | String |
| diff3 | String |
| diff4 | String |
| dept | BigDecimal |
| class1 | BigDecimal |
| subclass | BigDecimal |
Table 5-1300 (Cont.) ReplSchedCreModRDO
| Parameter Name | Data Type |
|---|---|
| loc | BigDecimal |
| locType | String |
| autoRangeInd | String |
| activateDate | Date |
| deactivateDate | Date |
| presStock | BigDecimal |
| demoStock | BigDecimal |
| stockCat | String |
| replOrderCtrl | String |
| sourcingWh | BigDecimal |
| supplier | BigDecimal |
| originCountryId | String |
| pickupLeadTime | BigDecimal |
| whLeadTime | BigDecimal |
| replMethodInd | String |
| replMethod | String |
| optimizeInd | String |
| minStock | BigDecimal |
| maxStock | BigDecimal |
| incrPct | BigDecimal |
| minSupplyDays | BigDecimal |
| maxSupplyDays | BigDecimal |
| timeSupplyHorizon | BigDecimal |
| addLeadTimeInd | String |
| invSellingDays | BigDecimal |
| serviceLevelType | String |
| serviceLevel | BigDecimal |
| serviceLevelFloatingStd | String |
| lostSalesFactor | BigDecimal |
| terminalStockQty | BigDecimal |
| seasonId | BigDecimal |
| phaseId | BigDecimal |
| rejectStoreOrdInd | String |
| multRunsPerDayInd | String |
| tsfZeroSohInd | String |
| nonScalingInd | String |
| maxScaleValue | BigDecimal |
| sizeProfileInd | String |
| reviewCycle | String |
Table 5-1300 (Cont.) ReplSchedCreModRDO
| Parameter Name | Data Type |
|---|---|
| updateDaysInd | String |
| mondayInd | String |
| tuesdayInd | String |
| wednesdayInd | String |
| thursdayInd | String |
| fridayInd | String |
| saturdayInd | String |
| sundayInd | String |
| primaryPackNo | String |
| defaultPackInd | String |
| removePackInd | String |
| mraUpdate | String |
| mraRestore | String |
| includeAdditionalDemand | String |
| storeUserAccess | String |
| storeToleranceType | String |
| storeToleranceLimit | BigDecimal |
JSON Structure: [ { "replAttrId": null, "schRplDesc": null, "scheduledActiveDate": "yyyy-MM-dd", "replAction": null, "item": null, "diff1": null, "diff2": null, "diff3": null, "diff4": null, "dept": null, "class1": null, "subclass": null, "loc": null, "locType": null, "autoRangeInd": null, "activateDate": "yyyy-MM-dd", "deactivateDate": "yyyy-MM-dd", "presStock": null, "demoStock": null, "stockCat": null, "replOrderCtrl": null, "sourcingWh": null, "supplier": null, "originCountryId": null,
"pickupLeadTime": null,
"whLeadTime": null,
"replMethodInd": null,
"replMethod": null,
"optimizeInd":null,
"minStock": null,
"maxStock": null,
"incrPct": null,
"minSupplyDays": null,
"maxSupplyDays": null,
"timeSupplyHorizon": null,
"addLeadTimeInd": null,
"invSellingDays": null,
"serviceLevelType": null,
"serviceLevel": null,
"serviceLevelFloatingStd": null,
"lostSalesFactor": null,
"terminalStockQty": null,
"seasonId": null,
"phaseId": null,
"rejectStoreOrdInd": null,
"multRunsPerDayInd": null,
"tsfZeroSohInd": null,
"nonScalingInd": null,
"maxScaleValue": null,
"sizeProfileInd": null,
"reviewCycle": null,
"updateDaysInd": null,
"mondayInd": null,
"tuesdayInd": null,
"wednesdayInd": null,
"thursdayInd": null,
"fridayInd": null,
"saturdayInd": null,
"sundayInd": null,
"primaryPackNo": null,
"defaultPackInd": null,
"removePackInd": null,
"mraUpdate": null,
"mraRestore": null
"storeUserAccess": null,
"storeToleranceType": null,
"storeToleranceLimit": null}]
Output
Table 5-1301 ReplStatusRDO
| Parameter Name | Data Type |
|---|---|
| statusMsg | String |
| failReplTable | List |
Table 5-1302 ReplFailRDO
| Parameter Name | Data Type |
|---|---|
| replAttrId | BigDecimal |
| item | String |
| dept | BigDecimal |
| class1 | BigDecimal |
| subclass | BigDecimal |
| loc | BigDecimal |
| locType | String |
| effectiveDate | Long |
| errorMsg | String |
The output will contain the status of the request including validation errors, if any.
JSON Structure:
{
"statusMsg": null,
"failReplTable": [
{
"replAttrId": null,
"item": null,
"dept": null,
"class1": null,
"subclass": null,
"loc": null,
"locType": null,
"effectiveDate": null,
"errorMsg": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| REPL_ATTR_UPDATE_HEAD | Yes | Yes | No | No |
| REPL_ATTR_UPDATE_ITEM | Yes | Yes | No | No |
| REPL_ATTR_UPDATE_LOC | Yes | Yes | No | No |
| SVC_PROCESS_TRACKER | Yes | Yes | Yes | No |
| CORESVC_REPL_ERR | No | Yes | No | No |
| SVC_REPL_ATTR_UPDATE | Yes | Yes | No | Yes |
| REPL_ITEM_LOC | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| ITEM_MASTER | Yes | No | No | No |
| ITEM_SUPP_COUNTRY | Yes | No | No | No |
| ITEM_LOC | Yes | No | No | No |
| SYSTEM_OPTIONS | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
| V_WH | Yes | No | No | No |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Sales
The following services are included in this functional area:
-
Sales Download Service
-
Get Item Location Weekly Sales (deprecated)
-
Get Item Location Weekly Sales
-
-
Store Day User Upload Service
Sales Download Service
The following services are included in this functional area:
-
Get Item Location Weekly Sales (deprecated)
-
Get Item Location Weekly Sales
Get Item Location Weekly Sales (deprecated)
Functional Area
Sales
Business Overview
This service retrieves weekly item sales information for store locations or inventory issues for warehouse locations from the Item Location History table (ITEM_LOC_HIST). Given the high volume of data in this table, it’s recommended to use this service for retrieving filtered information using the available query parameters. This service requires at least one of the following query parameter to be included in the request
End of Week Date
Item
Location
The optional query parameter of ‘Include Late Posted Transaction’ (valid values Y/N) is applicable if End of Week Date query parameter is passed. If this is passed as ‘Y’, the service will also retrieve late posted transactions from previous weeks that were posted within the requested End of Week period. This option is recommended when requesting information for the currently open week or recently closed week.
Table 5-1303 Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| offsetkey | No | String | Offset Key |
| eowDate | No | String | End of Week Date (YYYY-MM-DD) |
| location | No | String (10) | Location |
| locationType | No | String | Location Type |
| item | No | String | Item |
| dept | No | String (4) | Dept |
| class | No | String (4) | Class |
| subclass | No | String (4) | Subclass |
| salesType | No | String | Sales Type |
| year | No | String (4) | Year 454 |
| month | No | String | Month 454 |
| includeLatePosted | No | String | Include Late Posted Transaction |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Service Type
GET
ReST URL
MerchIntegrations/services/sales/itemLocation/weekly
Input Payload Details
Table 5-1304 Get - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| item | Yes | String (25) | Contains the item number in the distro. |
| location | Yes | Number (10) | This contains the destination location of the store order. |
Table 5-1304 (Cont.) Get - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| locationType | Yes | String (1) | This contains the destination location type of the store order. |
Sample Input Message
{
"item": "100100076",
"location": 6000,
"locationType": "S"
}
Response Code: 200 (Success)
Table 5-1305 PageResultItemsItemLocHist - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1306 ItemLocHist - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| eowDate | No | date | This feld contains the end of the week date of the week for the sales total and other calculations. Format YYYY-MM-DD |
| location | No | Number | This feld contains numeric identifer of the location. This feld may contain a store, warehouse. |
Table 5-1306 (Cont.) ItemLocHist - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| locationType | No | String | This feld specifes type of location in the location feld. Valid values are S - Store, W - Warehouse. |
| item | No | String | This feld specifes unique alphanumeric value that identifes the item |
| salesType | No | String | This feld indicates the type of sale or inventory movement. Valid Values are defned in code detail with code type SIST. Default seeded values are I - Issues From Warehouses to Stores, C - Clearance, P - Promotional, R - Regular |
| salesIssues | No | Number | This feld contains the number of units sold or transferred for item/location/week/ sales type combination. If the location type is a store, then this value represents sales. If the location type is a warehouse, then this value represents outbound transfer/ allocation transactions to stores. |
| value | No | Number | This feld contains the retail value of the sales for the item/location/ week/sales type combination. This feld is stored in the local currency. This feld will only hold a value for stores. |
Table 5-1306 (Cont.) ItemLocHist - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| grossProft | No | Number | This feld contains the total gross proft calculated for the item/location/week/ sales type. This is updated for each sale that occurs during the week and is calculated as (sales retail - cost of sales). This feld will only hold a value for stores. |
| stock | No | Number | This feld contains the stock on hand for the item/location combination at the end of the week. |
| retail | No | Number | This feld contains the unit retail price of the item at the location at the end of the week. This feld is stored in the local currency. |
| averageCost | No | Number | This feld contains the average cost of the item at the location at the end of the week. This feld is stored in the local currency |
| year | No | Number | This feld contain the identifer of the year in which the transactions occurred based on the 454 calendar |
| month | No | Number | This feld contain the identifer of the month in which the transactions occurred based on the 454 calendar |
| week | No | Number | This feld contain the identifer of the week in which the transactions occurred based on the 454 calendar |
| dept | No | Number | This feld uniquely identifes the department |
| class | No | Number | This feld identifes the class within the department |
Table 5-1306 (Cont.) ItemLocHist - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| subclass | No | Number | This feld identifes the subclass within the department and class combination |
| postDate | No | date | Holds the business date the record is inserted or last updated. Format YYYY- MM-DD |
Table 5-1307 LinkItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
| rel | No | String | This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetches and contains the offsetkey which unique identifes the last record of this response. |
Sample Response Message
{
"items": [
{
"eowDate": "2001-12-31",
"location": 10051,
"locationType": "S",
"item": "110023212",
"salesType": "R",
"salesIssues": 123,
"value": 3823.83,
"grossProfit": 8.6,
"stock": 25,
"retail": 29.95,
"averageCost": 17.2,
"year": 2023,
"month": 1,
"week": 4,
"dept": 1031,
"class": 1,
"subclass": 1,
"postDate": "2001-12-31"
}
],
"hasMore": true,
"limit": 1,
"count": 1,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?limit=1000",
"rel": "self"
}
]
}
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.
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"
}
]
}
Get Item Location Weekly Sales
Functional Area
Sales
Business Overview
This service retrieves weekly item sales information for store locations or inventory issues for warehouse locations from the Item Location History table (ITEM_LOC_HIST). Given the high volume of data in this table, it’s recommended to use this service for retrieving filtered information using the available query parameters. This service requires at least one of the following query parameter to be included in the request
End of Week Date
Item
Location
The optional query parameter of ‘Include Late Posted Transaction’ (valid values Y/N) is applicable if End of Week Date query parameter is passed. If this is passed as ‘Y’, the service will also retrieve late posted transactions from previous weeks that were posted within the requested End of Week period. This option is recommended when requesting information for the currently open week or recently closed week.
Service Type
GET
ReST URL
MerchIntegrations/services/sales/itemLocation/weekly
Input Parameters
| Parameter Name | Required | Data Type | Description |
|---|---|---|---|
| limit | No | String (6) | Pagination limit. Default value is 1000. |
| offsetkey | No | String | Offset Key |
| eowDate | No | String | End of Week Date (YYYY-MM-DD) |
| location | No | String (10) | Location |
| locationType | No | String | Location Type |
| item | No | String | Item |
| dept | No | String (4) | Dept |
| class | No | String (4) | Class |
| subclass | No | String (4) | Subclass |
| salesType | No | String | Sales Type |
| year | No | String (4) | Year 454 |
| month | No | String | Month 454 |
| includeLatePosted | No | String | Include Late Posted Transaction |
| include | No | String | Fields to include - comma separated (Example items.name,items.addr ess.city) |
| exclude | No | String | Fields to exclude - comma separated (Example items.address.contactF ax,items.customFlexAt tribute) |
Response Code: 200 (Success)
Table 5-1308 PageResultItemsItemLocHist - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| items | No | Collection of Object | Collection of records |
Table 5-1308 (Cont.) PageResultItemsItemLocHist - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| hasMore | No | Boolean | Boolean to signify if there are additional pages of data. This is true if limit = count |
| limit | No | Number | Requested page size. If the page size was not defned in the input request, a default page size is used to limit the number of records to fetch |
| count | No | Number | Number of record in the response object |
| links | No | Collection of Object | List of Self and/or Next URL |
Table 5-1309 ItemLocHist - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| eowDate | No | date | This feld contains the end of the week date of the week for the sales total and other calculations. Format YYYY-MM-DD |
| location | No | Number | This feld contains numeric identifer of the location. This feld may contain a store, warehouse. |
| locationType | No | String | This feld specifes type of location in the location feld. Valid values are S - Store, W - Warehouse. |
| item | No | String | This feld specifes unique alphanumeric value that identifes the item |
Table 5-1309 (Cont.) ItemLocHist - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| salesType | No | String | This feld indicates the type of sale or inventory movement. Valid Values are defned in code detail with code type SIST. Default seeded values are I - Issues From Warehouses to Stores, C - Clearance, P - Promotional, R - Regular |
| salesIssues | No | Number | This feld contains the number of units sold or transferred for item/location/week/ sales type combination. If the location type is a store, then this value represents sales. If the location type is a warehouse, then this value represents outbound transfer/ allocation transactions to stores. |
| value | No | Number | This feld contains the retail value of the sales for the item/location/ week/sales type combination. This feld is stored in the local currency. This feld will only hold a value for stores. |
| grossProft | No | Number | This feld contains the total gross proft calculated for the item/location/week/ sales type. This is updated for each sale that occurs during the week and is calculated as (sales retail - cost of sales). This feld will only hold a value for stores. |
| stock | No | Number | This feld contains the stock on hand for the item/location combination at the end of the week. |
Table 5-1309 (Cont.) ItemLocHist - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| retail | No | Number | This feld contains the unit retail price of the item at the location at the end of the week. This feld is stored in the local currency. |
| averageCost | No | Number | This feld contains the average cost of the item at the location at the end of the week. This feld is stored in the local currency |
| year | No | Number | This feld contain the identifer of the year in which the transactions occurred based on the 454 calendar |
| month | No | Number | This feld contain the identifer of the month in which the transactions occurred based on the 454 calendar |
| week | No | Number | This feld contain the identifer of the week in which the transactions occurred based on the 454 calendar |
| dept | No | Number | This feld uniquely identifes the department |
| class | No | Number | This feld identifes the class within the department |
| subclass | No | Number | This feld identifes the subclass within the department and class combination |
| postDate | No | date | Holds the business date the record is inserted or last updated. Format YYYY- MM-DD |
Table 5-1310 LinkItem - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| href | No | String | Service URL |
Table 5-1310 (Cont.) LinkItem - Object. See list of elements for detail
Element Name Required Data Type Description rel No String This can be either ‘self’ or ‘next’. The ‘next’ link is present if there are more pages to fetches and contains the offsetkey which unique identifies the last record of this response. Sample Response Message { "items": [ { "eowDate": "2001-12-31", "location": 10051, "locationType": "S", "item": "110023212", "salesType": "R", "salesIssues": 123, "value": 3823.83, "grossProfit": 8.6, "stock": 25, "retail": 29.95, "averageCost": 17.2, "year": 2023, "month": 1, "week": 4, "dept": 1031, "class": 1, "subclass": 1, "postDate": "2001-12-31" } ], "hasMore": true, "limit": 1, "count": 1, "links": [ { "href": "https://<server>:<port>/Application/services/resources?limit=1000", "rel": "self" } ] }
Store Day User Upload Service
This section describes the Store Day User service.
Functional Area
Financials
Business Overview
The primary role of this service is to create or delete store day user and send them to Merchandising.
Create Store Day User
Business Overview
This service creates store day user by calling the SVCPROV_STOREDAYUSER package to load input data to the staging tables and then calling the core store day user package to validate and insert data to the Merchandising tables.
Service Type
Post
ReSTURL
financials/StoreDayUserREST/create StoreDayUser
Input Parameters
SvcprovSdudescRecRDO
| Parameter Name | Data Type |
|---|---|
| store | BigDecimal |
| businessDate | String |
| userId | String |
JSON Structure
[{"store": null,
-
" businessDate": null, -
" userId": null}]
BusinessDate will take input in string with the format as 'DD-MON-YYYY' and later converted to Timestamp format and insert in table.
Output
SvcprovSduStatusRecRDO
| Parameter Name | Data Type |
|---|---|
| statusMsg | String |
| sduErrTbl | List< SvcprovFailSduRecRDO > |
SvcprovFailSduRecRDO
| Parameter Name | Data Type |
|---|---|
| store | BigDecimal |
| businessDate | String |
| userId | String |
| errorMsg | String |
The output will contain the status of the request including validation errors, if any.
JSON Structure:
{
"statusMsg": null,
" sduErrTbl ": [
{
" store": null,
" businessDate": null,
" userId": null,
"errorMsg": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| STORE_DAY_USER | Yes | Yes | No | No |
| SVC_STORE_DAY_USER | Yes | Yes | Yes | Yes |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Delete Store Day User
Business Overview
This service deletes store day user by calling the SVCPROV_SDU package to load input data to the staging tables and then calling the core store day user package to validate and delete data to the Merchandising tables.
Service Type
Post
ReSTURL
financials/StoreDayUserREST/delete StoreDayUser
Input Parameters
SvcprovSdudescRecRDO
| Parameter Name | Data Type |
|---|---|
| store | BigDecimal |
| businessDate | String |
| userId | String |
JSON Structure
[{"store": null,
" businessDate": null,
" userId": null}]
BusinessDate will take input in string with the format as 'DD-MON-YYYY' and later converted to Timestamp format and delete from table.
Output
SvcprovSduStatusRecRDO
| Parameter Name | Data Type |
|---|---|
| statusMsg | String |
| sduErrTbl | List< SvcprovFailSduRecRDO > |
SvcprovFailSduRecRDO
| Parameter Name | Data Type |
|---|---|
| store | BigDecimal |
| businessDate | String |
| userId | String |
| errorMsg | String |
The output will contain the status of the request including validation errors, if any.
JSON Structure
{
"statusMsg": null,
" sduErrTbl ": [
{
" store": null,
" businessDate": null,
" userId": null,
"errorMsg": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| STORE_DAY_USER | Yes | No | No | Yes |
| SVC_STORE_DAY_USER | Yes | Yes | Yes | Yes |
| JOB_AUDIT_LOGS | No | Yes | No | No |
| JOB_AUDIT_PAYLOAD | No | Yes | No | No |
Upload and Process Sales
Functional Area
Sales - Sales Processing
Business Overview
This ReST service allows for sales from an external Sales Audit or Point of Sale system to be uploaded directly into Merchandising and provides an alternative solution to existing POSU file upload solution. The validations imposed by this is similar to those enforced by the upload sales process that loads sales data from Sales Audit into Merchandising. This service expects each message to have transaction for a single store location. It supports Item level taxes and promotion or discount details, and determines posting and processing locations using existing configuration.
Service Type
POST
ReST URL
MerchIntegrations/services/sales/uploadAndProcess
Input Payload Details
Table 5-1311 UploadAndProcess - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The unique identifer of the store. |
| salesTransactions | Yes | Collection of Object |
Table 5-1312 SalesTransactions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| transactionSeqNo | Yes | Number (10) | Unique Sequence Number for each sales transaction line. |
| transactionDate | Yes | date | Date sale/return transaction was processed at the POS |
| item | Yes | String (25) | The ID number of an ITM or REF |
| transactionType | Yes | String (1) | Transaction type code to specify whether transaction is a sale or a return |
| totalSalesQuantity | Yes | Number (12,4) | number of units sold at a particular location |
| sellingUom | Yes | String (4) | UOM at which this item was sold |
| totalSalesValue | Yes | Number (20,4) | net sales value of goods sold |
| actualWeightQuantity | No | Number (12,4) | The actual weight of the item, only populated for catchweight Items |
| totalTaxValue | Yes | Number (20,4) | This will indicate total of all Tax amount for the item. |
| noInventoryReturnInd | No | String (1) | This feld contains an indicator that identifes a return without inventory. This is generally a non-required column, but in case of Returns, this is required. |
| returnDisposition | No | String (10) | This feld will contain the disposition code published by RWMS as part of the Returns upload to OMS. |
| returnWarehouse | No | Number (10) | This feld contains the physical warehouse ID for the warehouse identifer where the item was returned. |
Table 5-1312 (Cont.) SalesTransactions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| salesType | Yes | String (1) | This feld indicates whether the line item is a Regular Sale, a customer order serviced by OMS (External CO) or a customer order serviced by a store (In Store CO). |
| customerOrderNo | No | String (48) | This feld contains the customer order number ID. |
| fulfllOrderNo | No | String (48) | This feld contains the fulfllment order number ID. |
| fulfllLocationType | No | String (2) | This feld contains the fulfllment location type. and Valid values are found under the FLTP code type, for e.g In Store (ST), Supplier (SU), Warehouse (WH). |
| fulfllLocation | No | String (10) | This feld contains the fulfllment loc ID. |
| dropShipmentInd | No | String (1) | Indicates whether the transaction is a drop shipment or not. If it is a drop shipment, indicator will be ‘Y’. This feld is not required, but will be defaulted to ‘N’ if blank |
| origStore | No | String (10) | This feld contains the original store value for a Return transaction. |
| postingStore | No | String (10) | This feld contains the store at which the item sale/return should be accounted for in case of cross-store sales happening at co- located stores. It is expected that this feld will be populated only for items that are checked out at a different store from the one at which they are originally managed. |
Table 5-1312 (Cont.) SalesTransactions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| posTranId | No | Number (20) | This feld contains the unique identifer for a sale transaction,This is an Optional feld. |
| consignmentUnitCost | No | String (20) | This feld contains the consignment unit cost that should be applied while posting the sales/returns to Merchandising. |
| consignmentRate | No | String (12) | This feld contains the consignment rate that should be applied while posting the sales/returns to Merchandising. |
| inventoryIdentiferTyp e | No | String (6) | This feld contains the inventory identifer type passed in Sales/ Return transactions. Valid values are found under the Inventory Identifer Types (IIDT) code type, for e.g Lot (L), Expiry Date (E), Import Document (D). |
| inventoryId | No | String (120) | This feld contains the inventory id value being passed in sales/ return transactions. |
| taxes | No | Collection of Object | |
| promotions | No | Collection of Object |
Table 5-1313 Taxes - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| taxCode | Yes | String (6) | The Tax Code of the item |
| taxRate | Yes | Number (20,10) | The tax rate of the item. |
| taxAmount | Yes | Number (20,4) | The item level tax or prorated transaction level tax of the item . |
Table 5-1314 Promotions - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| promoTranType | Yes | String (5) | This feld contains the Promotion Sales Types and Valid values are found under the PRMT code type, for e.g In Store Discount (1004), Employee Discount (1005), External Promotion (2000), Internal Promotion (9999). |
| promoId | No | Number (10) | Promotion number from Merchandising |
| promoComponent | No | Number (10,4) | Links the promotion to additional pricing attributes. This contains the OFFER_ID from Pricing. |
| salesQuantity | Yes | Number (12,4) | Sales quantity sold for this promotion type |
| salesValue | Yes | Number (20,4) | Sales value for this promotion type |
| discountValue | Yes | Number (20,4) | Discount value for this promotion type |
Table 5-1315 UploadAndProcessError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | Input store Value. |
| transactionSeqNo | Yes | Number (10) | Input Unique Sequence Number. |
| errorMessage | Yes | Array of String |
Sample Input Message
{
"store": 1521,
"salesTransactions": [
{
"transactionSeqNo": 1,
"transactionDate": "2001-12-31",
"item": "100100076",
"transactionType": "S",
"totalSalesQuantity": 21,
"sellingUom": "EA",
"totalSalesValue": 210,
"actualWeightQuantity": null,
"totalTaxValue": 13,
"noInventoryReturnInd": null,
"returnDisposition": null,
"returnWarehouse": null,
"salesType": "R",
"customerOrderNo": null,
"fulfillOrderNo": null,
"fulfillLocationType": null,
"fulfillLocation": null,
"dropShipmentInd": "N",
"origStore": null,
"postingStore": null,
"posTranId": 625,
"consignmentUnitCost": null,
"consignmentRate": null,
"inventoryIdentifierType": null,
"inventoryId": null,
"taxes": [
{
"taxCode": "S",
"taxRate": 1,
"taxAmount": 1
}
],
"promotions": [
{
"promoTranType": "1004",
"promoId": null,
"promoComponent": null,
"salesQuantity": 1,
"salesValue": 1,
"discountValue": 1
}
]
}
]
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS"
}
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.
Table 5-1316 UploadAndProcessError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | Input store Value. |
| transactionSeqNo | Yes | Number (10) | Input Unique Sequence Number. |
| errorMessage | Yes | Array of String |
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": [
{
"store": 1521,
"transactionSeqNo": 1,
"errorMessage": [
"u0027Invalid Itemu0027"
]
}
]
}
Fiscal Document Generation Services
The following services are included in this functional area:
-
Fiscal Pre Document Request Service
-
Fiscal Document Request Service
-
Fiscal Document Status Detail Request Service
-
Next Fiscal Document Request Service
-
Fiscal Document Process Status Request Service
-
Fiscal Document Cancel Request Service
-
Fiscal Document Detail Request Service
Fiscal Pre Document Request Service
Functional Area
Finance
Business Overview
This web service supports fiscal document requests from inventory systems. It has a simplified payload for the fiscal document request. Once the shipment system calls this service, Fiscal Document Generation will return an internal ID for the request. This ID can later be used by the shipment systems to request the document(s) created for the specific shipment.
Service Type
Post
ReST URL
{{baseUrl}}/services/private/fdg/processPreDoc
Input
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| requestSystem | Yes | String | This feld contains the identifcation name of system that is requesting a fscal document. This name is provided by system that is requesting. | |
| docType | Yes | String | This feld contains the type of the document. Valid values are codes from CODE_DETAILwith a CODE_TYPEofFDTY. | INV,WBL. |
| extReqId | No | String | This feld contains the external request ID. This is the internal number from system that is requesting a fscal document. For example: asn_nbrIDfrom shipments. | |
| issueDate | Yes | OffsetDateTime | This feld contains the issue date of document in the format YYYY-MM-DDThh:mm:ssTZD(forexample, 1997-07-16T19:20:30+01:00) equivalent to ISO 8601. |
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| transactionType | Yes | String | This feld contains the code type of the transaction. Valid values are codes from CODE_DETAILwith aCODE_TYPEofGTRT. | ITMTAX,POTSF,DEAL,RTV,POSSAL,SALES, |
TAXINF,FO,FR | ||||
| currencyCode | Yes | String | This feld contains the currency code for the fscal document. It is based on currency code defned in shipment location that is going to ship goods. | |
| entities | Yes | List | Collection of entities. | |
| details | Yes | List | Collection of item details. | |
| comments | No | List | Collection of comments. | |
| references | No | List | Collection of references. |
RestFdgEtt
The fiscalDocument/entities node has the following parameters:
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| entityType | Yes | String | This feld contains the entity type. | SHIPP,DEST, |
Valid values are codes fromCODE_DETAILwith aCODE_TYPEofFDED. | VENDOR,CR,LOC | |||
| entityInternalType | No | String | This feld contains the Merchandising entity type. Valid values are codes from CODE_DETAILwith aCODE_TYPEofFDET. | WH,ST,SUPP,PTNR,CUST |
| entityInternalPtnr Type | No | String | This feld contains the Merchandising partner type. Valid values are codes from CODE_DETAILwith aCODE_TYPEofPTNR. | AG,AP,BK,BR,CN,CO,E,EC,ES,EV,FA,FF,IA,IM,S1,S2,S3 |
| entityCode | No | String | This feld contains the entity’s Merchandising internal code. For example, ID of store or warehouse. |
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| name | No | String | This feld contains the name responsible for transportation. This feld is uses only when there is no entity code defned for transportation. It’s used by SIM shipments because there is no transportation entity. | |
| carrierVehicleRn | No | String | This feld contains the vehicle registration number responsible for transportation. | |
| carrierVehicleState | No | String | This feld contains the state of the country where vehicle, responsible for transportation, is registered. | |
| carrierDriverNam e | No | String | This feld contains the driver name responsible for transportation. | |
| carrierDriverLn | No | String | This feld contains the information about driver license ID responsible for transportation. |
RestFdgDtl
The fiscalDocument/details node has the following parameters:
| Parameter Name | Required | Data Type | Description Valid values |
|---|---|---|---|
| item | Yes | String | This feld contains the unique code ID that identifes the item. |
| uom | Yes | String | This feld contains the unit of measure used in item in the fscal document. |
| qty | Yes | BigDecimal | This feld contains the quantity of item in this fscal document. |
| references | No | List | Collection of item references |
RestFdgRef
The fiscalDocument/details/references node has the following parameters:
| Parameter Name | Required Data Type | Description | Valid values |
|---|---|---|---|
| refType | Yes String | This feld contains the type of the reference at item level. It is used when there is any reference that it is necessary to add in this fscal document, as shipment number, contract number, order, id, and so on. Valid values: CODE_DETAIL–FDRT. | FDOC,ORDER,SHIPN,FULLF,ALLOC,DISTRO,BOLN,TSFNO,RTVNO,CONO |
,RTVAUT,CTRC | |||
| refCode | Yes String | This feld contains the reference code/value of reference type at item level. | |
| RestFdgText The_fiscalDocume_ Parameter Name | _nt/comments_node has the followin Required Data Type | g parameters: Description | Valid values |
| text | Yes String | This feld contains additional comments at item level. It is used to provide any additional information or legal message important to fscal document. | |
| textGroupId | No String | Text group ID. It is used to group related comments when there is more than one or when the size of a message is bigger than the size of the text feld and it is necessary to generate more than one line. | |
| textGroupSeq JSON Input Struc | No String ture: | Sequence of the text for a given group ID. It is used in case comments information has more than one line. | |
"{ | |||
"fiscalDocum | ent": { | ||
"requestSyst"docType": " | em": "SIOCS",WBL", | ||
"extReqId": | "10001", | ||
"transaction"issueDate": | Type": "TSF","2020-12-16T08:19:42-05:00", |
"currencyCode": "USD",
"entities": [
{
"entityType": "SHIPP",
"entityInternalType": "WH",
"entityCode": "252525"
},
{
"entityType": "DEST",
"entityInternalType": "ST",
"entityCode": "9625518"
},
{
"entityType": "CR",
"name": "UPS",
"carrierVehicleRn": "IF5597",
"carrierVehicleState": "SP",
"carrierDriverName": "Driver Name",
"carrierDriverLn": "asasdd984955456"
}],
"details": [
{
"item": "100450025",
"uom": "EA",
"qty": 5,
"references": [
{
"refType": "TSFNO",
"refCode": "897889"
}
]
}],
"comments": [{
"text": "Additional comments to the document. If it's too l'",
"textGroupId": "1",
"textGroupSeq": "1"
},
{
"text": "ong, it can end in other line",
"textGroupId": "1",
"textGroupSeq": "2"
}
],
"references": [
{
"refType": "DOC",
"refCode": "9848945651"
}]
}
}"
Output
| Parameter Name | Data Type | Description |
|---|---|---|
| requestId | String | This feld contains the unique identifer of the document request. |
| requestSystem | String | This column contains the unique identifer of the requester. |
| requestAction | String | This column contains the current action for the request. |
| docId | BigDecimal | This column contains the unique document ID. |
| docNo | String | This column contains the unique document number. |
| docType | String | This column contains the type of the document. |
| status | String | This column contains the status of the document. |
| extReqId | String | This feld contains the external request ID. This is the internal number from system that is requesting a fscal document. Example: asn_nbr ID from shipments. |
| docPrintUrl | String | This column contains the url to access the fscal document issued by government. It can be a url from third- party repository responsible to communicate with governement or other url. |
| additionalproperties | List | Collection of additional properties. |
| errors | List | Collection of errors. |
RestFdgExt
| Parameter Name | Data Type | Description |
|---|---|---|
| key | String | This column contains the key value of the entity additional properties at entity address level. |
| value | String | This column contains the value of the entity additional properties at entity address level. |
| type | String | This column contains the extension type at entity address level. |
RestFdgError
| Parameter Name | Data Type | Description |
|---|---|---|
| errorCode | String | This feld contains the error code. |
| errorDesc | String | This feld contains the error description. |
JSON Structure:
"{
"requestId": 62,
"requestSystem": "SIOCS",
"requestAction": "A",
"docId": 62,
"docNo": null,
"docType": "WBL",
"status": "N",
"extReqId": "10003",
"docPrintUrl": null,
"additionalproperties": [],
"errors": []
}"
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| FDG_ATTRIB_MAP | Yes | No | No | No |
| FDG_ATTRIB_MAP_NM | Yes | No | No | No |
| SVC_FDG_DTL | Yes | Yes | Yes | No |
| SVC_FDG_DTL_PACK | Yes | Yes | Yes | No |
| SVC_FDG_ERROR | Yes | Yes | No | No |
| SVC_FDG_ETT | Yes | Yes | Yes | No |
| SVC_FDG_EXT | Yes | Yes | Yes | No |
| SVC_FDG_HDR | Yes | Yes | Yes | No |
| SVC_FDG_NON_MERCH | Yes | Yes | Yes | No |
| SVC_FDG_REF | Yes | Yes | No | No |
| SVC_FDG_TAX | Yes | Yes | No | Yes |
| SVC_FDG_TEXT | Yes | Yes | No | No |
| CODE_DETAIL | Yes | No | No | No |
| V CODE_DETAIL | Yes | No | No | No |
| STORE | Yes | No | No | No |
| PARTNER | Yes | No | No | No |
| WH | Yes | No | No | No |
| LANG | Yes | No | No | No |
| FDG_SYSTEM_OPTIONS | Yes | No | No | No |
| CFA_ATTRIB | Yes | No | No | No |
| CFA_ATTRIB_MAP | Yes | No | No | No |
| CFA_ATTRIB_MAP_LABES | Yes | No | No | No |
| RTV_DETAIL | Yes | No | No | No |
| ORDCUST | Yes | No | No | No |
| ORDCUST_DETAIL | Yes | No | No | No |
| TSFHEAD | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| TSFDETAIL | Yes | No | No | No |
| SHIPSKU | Yes | No | No | No |
| TSFDETAIL_CHRG | Yes | No | No | No |
| ALLOC_CHRG | Yes | No | No | No |
| NON_MERCH_CODE_COMP | Yes | No | No | No |
| V_NON_MERCH_CODE_HEAD_TL | Yes | No | No | No |
| ADDR | Yes | No | No | No |
| PACKITEM_BREAKOUT | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| V_ITEM_MASTER | Yes | No | No | No |
| ITEM_SUPPLIER | Yes | No | No | No |
| GTS_CALC_INPUT_STG | Yes | Yes | No | No |
| GTS_CALC_OUTPUT_STG | Yes | No | No | No |
Fiscal Document Request Service
Functional Area
Finance
Business Overview
This web service supports fiscal document requests from any system based on a comprehensive payload with a detailed level of input parameters. This web service supports inbound transactions such as PO receiving. Once the requester system calls for this service, Fiscal Document Generation will return an internal ID for the request. This ID can later be used by these systems to request the document(s) created.
Service Type
Post
ReST URL
{{baseUrl}}/services/private/fdg/processDoc
Input
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| requestSystem | Yes | String | This feld contains the identifcation name of system that is requesting a fscal document. This name is provided by system that is requesting. | |
| docType | Yes | String | This feld contains the type of the document. Valid values are codes from CODE_DETAILwith aCODE_TYPEofFDTY. | INV,WBL |
| extReqId | No | String | This feld contains the external request ID. This is the internal number from system that is requesting a fscal document. For example, asn_nbrID fromshipments | |
| issueDate | Yes | OffsetDateTime | This feld contains the issue date of document in the format YYYY-MM-DDThh:mm:ssTZD(forexample, 1997-07-16T19:20:30+01:00) equivalent to ISO 8601. | |
| transactionType | Yes | String | This feld contains the code type of the transaction. Valid values are codes from CODE_DETAILwith aCODE_TYPEofGTRT. | ITMTAX,PO,TSF,DEAL,RTV,POSSAL,SALES,TAXINF,FO,FR |
| currencyCode | Yes | String | This feld contains the currency code for the fscal document. It is based on currency code defned in shipment location that is going to ship goods. | |
| deduceTax | Yes | String | This feld contains the indicator to control in this request, if taxes is sent from request system and any calculation is needed or request system not send taxes and it is necessary to call tax calculation to fll taxes information. | YorN |
| entities | Yes | List | Collection of entities. | |
| details | Yes | List | Collection of item details. |
| Parameter Name | Required | Data Type | Description | Valid |
|---|---|---|---|---|
| values | ||||
| comments | No | List | Collection of comments. | |
| references | No | List | Collection of references. |
RestFdgEtt:
The fiscalDocument/entities node has the following parameters:
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| entityType | Yes | String | This feld contains the entity type. Valid values are codes from CODE_DETAILwith aCODE_TYPEofFDED. | SHIPP,DEST,VENDOR,CR,LOC |
| entityInternalTyp e | No | String | This feld contains the Merchandising entity type. Valid values are codes from CODE_DETAILwith aCODE_TYPEofFDET. | WH,ST,SUPP,PTNR,CUST |
| entityInternalPtnr Type | No | String | This feld contains the Merchandising partner type. Valid values are codes from CODE_DETAILwith aCODE_TYPEofPTNR. | AG,AP,BK,BR,CN,CO,E,EC,ES,EV,FA,FF,IA,IM,S1,S2,S3 |
| entityCode | No | String | This feld contains the entity’s Merchandising internal code. For example, ID of store or warehouse | |
| name | No | String | This feld contains the name responsible for transportation. This feld is uses only when there is no entity code defned for transportation. It’s used by SIM shipments because there is no transportation entity. | |
| carrierVehicleRn | No | String | This feld contains the vehicle registration number responsible for transportation. | |
| carrierVehicleStat e | No | String | This feld contains the state of the country where vehicle, responsible for transportation, is registered. | |
| carrierDriverNam e | No | String | This feld contains the driver name responsible for transportation. |
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| carrierDriverLn | No | String | This feld contains the information about driver license ID responsible for transportation. |
RestFdgDtl:
The fiscalDocument/details node has the following parameters:
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| Item | Yes | String | This feld contains the unique code ID that identifes the item. | |
| totalAmt | Yes | BigDecimal | This feld contains the total value of this item in the fscal document. | |
| unitAmt | Yes | BigDecimal | This feld contains the item unit cost of this item in the document. | |
| uom | Yes | String | This feld contains the unit of measure used in item in the fscal document. | |
| qty | Yes | BigDecimal | This feld contains the quantity of item in this fscal document. | |
| totalTaxAmt | No | BigDecimal | This feld contains the total value of item in this fscal document. | |
| totalAmtInclTax | No | BigDecimal | This feld contains the total value including all taxes value of item in this fscal document. | |
| taxes | No | List | Collection of item taxes. | |
| references | No | List | Collection of item references. | |
| allowanceCharges | No | List<RestFdgNonMerch > | Collection of item allowance/changes. |
RestFdgTax
The fiscalDocument/details/taxes node has the following parameters:
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| taxType | Yes | String | This feld contains the tax type at item level. | U(for taxper value) or P(fortax per percentag e). |
| taxCode | Yes | String | This feld contains the tax identifcation code that should be applied at item level. | |
| taxAmt | Yes | BigDecimal | This feld contains the tax value at item level, when tax type is set as per value. | |
| taxCodeDesc | Yes | String | This feld contains the tax code description at item level. This feld can be used to indicate extra code or detailed information about tax code. |
RestFdgRef:
The fiscalDocument/details/references node has the following parameters:
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| refType | Yes | String | This feld contains the type of the reference at item level. It is used when there is any reference that it is necessary to add in this fscal document, as shipment number, contract number, order, ID, and so on. | FDOC,ORDER,SHIPN,FULLF,ALLOC,DISTRO,BOLN,TSFNO, |
Valid values:CODE_DETAIL–FDRT. | RTVNO,CONO,RTVAUT,CTRC | |||
| refCode | Yes | String | This feld contains the reference code/value of reference type at item level. |
RestFdgNonMerch:
The fiscalDocument/details/allowanceCharges node has the following parameters:
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| chargeInd | Yes | String | This feld contains the charge indicator at item allowance charges level. | Y(represents a charge). N(represents an allowance). |
| nonMerchCode | Yes | String | This feld contains the non- merchandise code that identify non-merchandise cost at item allowance changes level. This value should be existing in table NON_MERCH_CODE_HEAD. | |
| nonMerchAmt | Yes | BigDecimal | This feld contains the non- merchandise value at item allowance changes level. | |
| taxes | No | List | Collection of non- merchandise taxes. |
RestFdgTax:
The fiscalDocument/details/allowanceCharges/taxes node has the following parameters:
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| taxType | Yes | String | This feld contains the tax type at item allowance charge taxes level. | U(for taxper value) or P(for taxper percentage). |
| taxCode | Yes | String | This feld contains the tax identifcation code that should be applied at item allowance charges taxes level. | |
| taxAmt | Yes | BigDecimal | This feld contains the tax value at item allowance charges taxes level, when tax is set up as per value. | |
| taxCodeDesc | Yes | String | This feld contains the tax code description at item allowance charges taxes level. This feld can be used to indicate extra code or detailed information about tax code. | |
| comments | No | List | Collection of non- merchandise taxes comments. |
RestFdgText:
The fiscalDocument/details/allowanceCharges/taxes/comments and fiscalDocument/comments node have the following parameters:
| Parameter Name | Required | Data Type | Description Valid values |
|---|---|---|---|
| text | Yes | String | This feld contains additional comments at item level. It is used to provide any additional information or legal message important to fscal document. |
| textGroupId | No | String | Text group ID. It is used to group related comments when there is more than one or when the size of a message is bigger than the size of the text feld and it is necessary to generate more than one line. |
| textGroupSeq | No | String | Sequence of the text for a given group ID. It is used in case comments information has more than one line. |
RestFdgRef
The fiscalDocument/references node has the following parameters:
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| refType | Yes | String | This feld contains the type of the reference at item level. It is used when there is any reference that it is necessary to add in this fscal document, as shipment number, contract number, order, ID, and so on. Valid values: CODE_DETAIL–FDRT. | FDOC,ORDER,SHIPN,FULLF,ALLOC,DISTRO,BOLN,TSFNO,RTVNO,CONO,RTVAUT,CTRC |
| refCode | Yes | String | This feld contains the reference code/value of reference type at item level. |
JSON Input Structure:
"{
"fiscalDocument": {
"requestSystem": "SUPPLIER_PORTAL",
"docType": "WBL",
"extReqId": "1234",
"transactionType": "TSF",
"issueDate": "2020-12-16T08:19:42-05:00",
"currencyCode": "USD",
"deduceTax": "Y",
"entities": [
{
"entityType": "SHIPP",
"entityInternalType": "WH",
"entityCode": "7001"
},
{
"entityType": "DEST",
"entityInternalType": "ST",
"entityCode": "777701"
},
{
"entityType": "CR",
"entityInternalType": "PTNR",
"entityInternalPtnrType": "FF",
"entityCode": "11",
"carrierVehicleRn": "IF5597",
"carrierVehicleState": "SP",
"carrierDriverName": "Driver Name",
"carrierDriverLn": "asasdd984955456"
}],
"details": [
{
"item": "54987897",
"totalAmt": 10,
"unitAmt": null,
"uom": "EA",
"qty": 5,
"totalTaxAmt": 7,
"totalAmtInclTax": 57,
"taxes": [
{
"taxType": "P",
"taxCode": "GST",
"taxAmt": 5,
"taxCodeDesc": null
},
{
"taxType": "P",
"taxCode": "PST",
"taxAmt": 2,
"unitTaxAmt": null,
"taxCodeDesc": null
}],
"references": [
{
"refType": "ORDER",
"refCode": "897889"
}
],
"allowanceCharges": [
{
"chargeInd": "Y",
"nonMerchCode": "FRHT",
"nonMerchAmt": 10,
"taxes": [
{
"taxType": "P",
"taxCode": "GST",
"taxAmt": 1.8,
"taxCodeDesc": null,
"comments": []
},
{
"taxType": "P",
"taxCode": "PST",
"taxAmt": 1,
"taxCodeDesc": null,
"comments": []
}
]
}
],
"comments": [{
"text": "Open box Item"
}]
}
],
"comments": [{
"text": "Additional comments to the document. If it's too l'",
"textGroupId": "1",
"textGroupSeq": "1"
},
{
"text": "ong, it can end in other line",
"textGroupId": "1",
"textGroupSeq": "2"
}
],
"references": [{
"refType": "DOC",
"refCode": "9848945651"
}]
}
}"
Output
| Parameter Name | Data Type | Description |
|---|---|---|
| requestId | String | This feld contains the unique identifer of the document request. |
| requestSystem | String | This column contains the unique identifer of the requester. |
| requestAction | String | This column contains the current action for the request. |
| docId | BigDecimal | This column contains the unique document ID. |
| docNo | String | This column contains the unique document number. |
| Parameter Name | Data Type | Description |
|---|---|---|
| docType | String | This column contains the type of the document. |
| status | String | This column contains the status of the document. |
| extReqId | String | This feld contains the external request ID. This is the internal number from system that is requesting a fscal document. Example: asn_nbr ID from shipments. |
| docPrintUrl | String | This column contains the url to access the fscal document issued by government. It can be a url from third- party repository responsible to communicate with governement or other url. |
| additionalproperties | List | Collection of additional properties. |
| errors | List | Collection of errors. |
| RestFdgExt Parameter Name | Data Type | Description |
| key | String | This column contains the key value of the entity additional properties at entity address level. |
| value | String | This column contains the value of the entity additional properties at entity address level. |
| type | String | This column contains the extension type at entity address level. |
| RestFdgError Parameter Name | Data Type | Description |
| errorCode | String | This feld contains the error code. |
| errorDesc | String | This feld contains the error description. |
RestFdgExt
RestFdgError
JSON Structure:
"{
"requestId": 62,
"requestSystem": "SIOCS",
"requestAction": "A",
"docId": 62,
"docNo": null,
"docType": "WBL",
"status": "N",
"extReqId": "10003",
"docPrintUrl": null,
"additionalproperties": [],
"errors": []
}"
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| FDG_ATTRIB_MAP | Yes | No | No | No |
| FDG_ATTRIB_MAP_NM | Yes | No | No | No |
| SVC_FDG_DTL | Yes | Yes | Yes | No |
| SVC_FDG_DTL_PACK | Yes | Yes | Yes | No |
| SVC_FDG_ERROR | Yes | Yes | No | No |
| SVC_FDG_ETT | Yes | Yes | Yes | No |
| SVC_FDG_EXT | Yes | Yes | Yes | No |
| SVC_FDG_HDR | Yes | Yes | Yes | No |
| SVC_FDG_NON_MERCH | Yes | Yes | No | No |
| SVC_FDG_REF | Yes | Yes | No | No |
| SVC_FDG_TAX | Yes | Yes | No | No |
| SVC_FDG_TEXT | Yes | Yes | No | No |
| CODE_DETAIL | Yes | No | No | No |
| V_CODE_DETAIL_TL | Yes | No | No | No |
| STORE | Yes | No | No | No |
| PARTNER | Yes | No | No | No |
| WH | Yes | No | No | No |
| LANG | Yes | No | No | No |
| FDG_SYSTEM_OPTIONS | Yes | No | No | No |
| CFA_ATTRIB | Yes | No | No | No |
| CFA_ATTRIB_MAP | Yes | No | No | No |
| CFA_ATTRIB_MAP_LABES | Yes | No | No | No |
| RTV_DETAIL | Yes | No | No | No |
| ORDCUST | Yes | No | No | No |
| ORDCUST_DETAIL | Yes | No | No | No |
| TSFHEAD | Yes | No | No | No |
| TSFDETAIL | Yes | No | No | No |
| SHIPSKU | Yes | No | No | No |
| ADDR | Yes | No | No | No |
| PACKITEM_BREAKOUT | Yes | No | No | No |
| ITEM_MASTER | Yes | No | No | No |
| V_ITEM_MASTER | Yes | No | No | No |
| ITEM_SUPPLIER | Yes | No | No | No |
Fiscal Document Status Detail Request Service
Functional Area
Finance
Business Overview
In both scenarios for shipment and Inbound, it will be the requestor´s responsibility to pull the approved documents from Fiscal Document Generation in order to conclude their transactions. This web service will be used to provide the status of fiscal documents requested through the Fiscal Pre Document Request Service and Fiscal Document Request Service. In case the document is approved, approval-related data will also be provided, such as the formal document number and print-version URL path.
Service Type
Get
ReST URL
{{baseUrl}}/services/private/fdg/documentStatusDetail?
requestId=<string>&requestSystem=<string>&entityType=<string>&entityInternalTy
pe=<string>&entityCode=<string>&country=<string>
Input Parameters
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| requestId | Yes | String | This column contains the unique identifer of the document request. | |
| requestSystem | No | String | This column contains the unique identifer of the requester. | |
| entityType | No | String | This feld contains the entity type. Valid values are codes from CODE_DETAILwith aCODE_TYPEofFDED. | SHIPP,DEST,VENDOR,CR,LOC |
| entityInternalType | No | String | This feld contains the Merchandising entity type. Valid values are codes from CODE_DETAILwith aCODE_TYPEofFDET. | WH,ST,SUPP,PTNR,CUST |
| entityCode | No | String | This column contains the entity’s Merchandising internal code. | |
| country | No | String | This column contains the country where is the location address. |
Output
| Parameter Name | Data Type | Description |
|---|---|---|
| requestId | String | Internal fscal document REQUEST ID generated by FDG. This ID can be used to identify the fscal document(s) being processed. |
| requestSystem | String | Name of the system that performed the request for a fscal document. |
| requestAction | String | Action code to be passed along with the request for a fscal document process. |
| docNo | String | Ofcial fscal document number. This number is given to approved documents. |
| docType | String | Valid values:INV(Invoice),WBL(eWaybill), NFe(Nota FiscalEletronica). |
| status | String | Internal FDG status of the fscal document. |
| extReqId | String | External system´s request ID used to link FDG internal ID with the requestor system´s transaction ID. |
| docPrintUrl | String | URL of the fscal document report. |
| additionalproperties | List | Collection of additional properties. |
| errors | List | Collection of errors. |
RestFdgExt
| Parameter Name | Data Type | Description |
|---|---|---|
| key | String | This column contains the key value of the entity additional properties at entity address level. |
| value | String | This column contains the value of the entity additional properties at entity address level. |
| type | String | This column contains the extension type at entity address level. |
| RestFdgError | ||
| Parameter Name | Data Type | Description |
| errorCode | String | This feld contains the error code. |
| errorDesc | String | This feld contains the error description. |
JSON Structure:
"{
"requestId": 50039,
"requestSystem": "SUPPLIER_PORTAL",
"requestAction": "A",
"docId": 50038,
"docNo": null,
"docType": "WBL",
"status": "S",
"extReqId": "10000600",
"docPrintUrl": null,
"additionalproperties": [],
"errors": []
}"
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SVC_FDG_ERROR | Yes | No | No | No |
| SVC_FDG_EXT | Yes | No | No | No |
| SVC_FDG_HDR | Yes | No | No | No |
| FDG_ERROR | Yes | No | No | No |
| FDG_EXT | Yes | No | No | No |
| FDG_HDR | Yes | No | No | No |
Next Fiscal Document Request Service
Functional Area
Finance
Business Overview
This is the service to be called by the 3rd-party system in charge of communicating fiscal document request to local Governments in order to fetch documents ready to be approved.
Service Type
Get
ReST URL
{{baseUrl}}/services/private/fdg/nextDocumentDetail?
docId=<string>&docType=<string>&entityType=<string>&internalType=<string>&inte
rnalCode=<string>&integrationSystemName=<string>&integrationSystemId=<string>
Input Parameters
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| docId | No | String | Internal fscal document ID generated by FDG. This ID is unique to each fscal document created. | |
| docType | No | String | This feld contains the type of the document. Valid values are codes from CODE_DETAILwith aCODE_TYPEofFDTY. | INV,WBL |
| entityType | No | String | This feld contains the entity type. Valid values are codes from CODE_DETAILwith aCODE_TYPEofFDED. | SHIPP,DEST,VENDOR,CR,LOC |
| internalType | No | String | Filter criteria to fetch documents based on specifc entity types in Merchandising irrespective of their role in the fscal documents. | WH,ST,SUPP,PTRN,CUST |
| internalCode | No | String | Filter criteria to fetch documents based on a specifc entity code. This feld contains the entity’s Merchandising internal code and must sent in conjunction with entityInternatTypetag.For example, ID of store or warehouse | |
| integrationSystemN ame | Yes | String | Name of the integration system that will process this document. | |
| integrationSystemId | Yes | String | Unique identifer to be used by the integration system. |
Output
| Parameter Name | Data Type | Description |
|---|---|---|
| requestId | String | Internal fscal document REQUEST ID generated by FDG. This ID can be used to identify the fscal document(s) being processed. |
| requestSystem | String | Name of the system that performed the request for a fscal document. |
| Parameter Name | Data Type | Description |
|---|---|---|
| requestAction | String | Action code to be passed along with the request for a fscal document process. |
| docId | BigDecimal | Internal fscal document ID generated by FDG. This ID is unique to each fscal document created. |
| docNo | String | Ofcial fscal document number. This number is given to approved documents. |
| status | String | Internal FDG status of the fscal document. |
| docType | String | Valid values:INV(Invoice),WBL(eWaybill), NFe(Nota FiscalEletronica). |
| docTypeCode | String | Extended description of a document type. |
| extReqId | String | External system´s request ID used to link FDG internal ID with the requestor system´s transaction ID. |
| transactionType | String | Identifcation of the transaction associated with the fscal document. |
| issueDate | OffsetDateTime | Issue date of the fscal document. Date defned at the time the document is submitted for approval. |
| dueDate | date | Payment date of fscal document or invoice. |
| docLang | String | Language of fscal document. It is based on language defned in source location. |
| printerId | String | Printer ID that is designated to print fscal document. |
| docPrintUrl | String | URL of the fscal document report. |
| currencyCode | String | Currency code for the fscal document. It is based on currency code defned in source location. |
| totalTaxAmt | BigDecimal | Total TAX amount of the fscal document. This feld is the sum of totalTaxAmtof all items of thedocument. Rounding applied based on system option. |
| totalNonMerchTaxAmt | BigDecimal | Total TAX amount of allowances/ charges of the fscal document. Rounding applied based on system option. |
| totalAmtInclTax | BigDecimal | Total value of fscal document including taxes. This feld is the sum of totalAmtInclTaxof all items ofthe document. Rounding applied based on system option. |
| Parameter Name | Data Type | Description |
|---|---|---|
| totalAmtExclTax | BigDecimal | Total value of fscal document excluding taxes. This feld has the totalAmtInclTaxminustotalTaxAmt. Rounding appliedbased on system option. |
| totalAllowance | BigDecimal | Total value of all allowances in fscal document. This feld is the sum of totalAllowanceof all items of thedocument. Rounding applied based on system option. |
| totalCharge | BigDecimal | Total value of all charges in fscal document. This feld is the sum of totalChargeof all items of thedocument. Rounding applied based on system option. |
| totalRounding | BigDecimal | The rounding amount (positive or negative) added to produce the line extension totalAmt. This feld is thesum of totalRoundingof all items ofthe document. |
| terms | String | Payment terms used in this transaction |
| deduceTax | String | Flag that indicates if taxes were calculated by the system or informed at the fscal document request. |
| createBy | String | User ID that created the record. |
| createDatetime | date | Record creation date. |
| lastUpdateBy | String | User ID that did last update of fscal document. |
| lastUpdateDatetime | date | Date of last update of fscal document. |
| entities | List | Collection of entities. |
| details | List | Collection of item details |
RestFdgEtt
| Parameter Name | Data Type | Description |
|---|---|---|
| entityType | String | Entity type. |
| entityInternalPtnrType | String | Merchandising partner type. |
| entityInternalType | String | Merchandising entity type. |
| entityCode | String | Internal Merchandising code of the entity. For example, ID of store or warehouse |
| name | String | Entity name. |
| legalName | String | Entity’s legal name. |
| carrierVehicleRn | String | Carrier vehicle´s registration number. |
| carrierVehicleState | String | Carrier vehicle´s state. |
| Parameter Name | Data Type | Description |
|---|---|---|
| carrierDriverName | String | Carrier driver´s name. |
| carrierDriverLn | String | Carrier driver´s license number. |
| address | RestFdgEttAddr | Collection of address details. |
| identifcation | List | Collection of Entity Identifcation Additional Properties. Fiscal Attributes will be send in this group. |
RestFdgEttAddr
| Parameter Name | Data Type | Description |
|---|---|---|
| street | String | Street name of the entity´s address. |
| additionalStreetName | String | Extension of street name of the entity ´s address. |
| complement | String | Additional information of entity´s address, such as neighborhood, county, etc. |
| city | String | City name of entity´s address. |
| jurisdictionCode | String | Jurisdiction code of entity´s address. This can be legal code associated to city, county or any other level. |
| postalCode | String | Zip or postal code of entity´s address. |
| country | String | Country name of entity´s address. |
| telephone | String | Telephone number of the person who is the contact point. |
| String | Email address of the person who is the contact point. | |
| state | String | State name of entity´s address. |
| contactName | String | Contact name. |
| additionalproperties | List | Collection of address additional properties. |
RestFdgExt
| Parameter Name | Data Type | Description |
|---|---|---|
| key | String | This column contains the key value of the entity additional properties at entity address level. |
| value | String | This column contains the value of the entity additional properties at entity address level. |
| type | String | This column contains the extension type at entity address level. |
| description | String | Description of additional property data. |
RestFdgExt (identification)
| Parameter Name | Data Type | Description |
|---|---|---|
| key | String | This column contains the key value of the entity additional properties at entity address level. |
| value | String | This column contains the value of the entity additional properties at entity address level. |
| type | String | This column contains the extension type at entity address level. |
| description | String | Description of additional property data. |
| references | List | Collection of references. |
| totaltaxes | List | Collection of taxes. |
| errors | List | Collection of errors. |
| allowanceCharges | List<RestFdgNonMerc h> | Collection of allowance charges. |
| additionalproperties | List | Collection of additional properties. |
| comments | List | Collection of comments. |
RestFdgDtl
| Parameter Name | Data Type | Description |
|---|---|---|
| lineNo | long | Sequential number of the item in fscal document. This number is a sequence starts with number one. Any gap is not allowed. |
| Item | String | Unique code ID that identifes the item. |
| itemDesc | String | Long description of the item. |
| itemShortDesc | String | Short description of the item. |
| totalAmt | BigDecimal | Total amount for the item inclusive of allowances and charges. Calculation formula is (( unitAmt*qty) -totalAllowance+totalCharge). Rounding appliedbased on system option. |
| unitAmt | BigDecimal | Item unit amount. No rounding applied. |
| uom | String | Unit of measure used in item in the fscal document. |
| qty | BigDecimal | Quantity of item in the fscal document. |
| totalTaxAmt | BigDecimal | Total amount of taxes applied to the item. This feld is sum of all taxAmtat tax level for this item. Rounding applied based on system option. |
| Parameter Name | Data Type | Description |
|---|---|---|
| totalAmtInclTax | BigDecimal | Total amount for item inclusive of taxes. Calculation formula is totalAmt+totalTaxAmt. Roundingapplied based on system option. |
| totalRounding | BigDecimal | The rounding amount (positive or negative) added to produce the line extension totalAmt. Calculationformula (( unitAmt*qty) -totalAllowance+totalCharge)-totalAmt. |
| totalAllowance | BigDecimal | Total amount of all allowances at item level. This feld is sum of all allowances at allowanceChargeslevel for this item. Rounding applied based on system option. |
| totalCharge | BigDecimal | Total amount of all charges at item level. This feld is sum of all charges at allowanceChargeslevel for thisitem. Rounding applied based on system option. |
| packInd | String | Pack indicator. Valid values:Y(thisitem is a pack) or N(this item is not apack). |
| gtin | String | GTIN number (Global Trade Item Number) of item. |
| gtinType | String | GTIN Type. Valid values:GTIN-8,GTIN-12,GTIN-13,GTIN-14 |
| vpn | String | Vendor Product Number (VPN) associated with the item. |
| taxes | List | Collection of item taxes. |
| references | List | Collection of item references |
| allowanceCharges | List<RestFdgNonMerc h> | Collection of item allowance charges. |
| packdetails | List | Collection of item pack details. |
| additionalproperties | List | Collection of item additional properties. |
| comments | List | Collection of item comments. |
RestFdgTax
| Parameter Name | Data Type | Description |
|---|---|---|
| taxType | String | Tax type. |
| taxCode | String | Tax identifcation code. |
| taxRate | BigDecimal | Tax rate when tax type is set as percentage. |
| taxAmt | BigDecimal | Total tax amount for the tax code. Rounding applied based on system option. |
| Parameter Name | Data Type | Description |
|---|---|---|
| unitTaxAmt | BigDecimal | Tax amount per unit for the tax code. |
| taxBasis | BigDecimal | Tax basis amount used to calculate tax value based on taxRatefeld.Rounding applied based on system option. |
| taxCodeDesc | String | Tax code description. This feld can be used to indicate extra code or detailed information about tax code. |
| additionalproperties | List | Collection of taxes addition properties. |
| comments | List | Collection of taxes comments. |
| RestFdgText | ||
| Parameter Name | Data Type | Description |
| text | String | Additional information and/or comments. It is used to provide any additional information or legal message important to the fscal document. |
| textGroupId | String | Text group ID. It is used to group related comments when there is more than one or when the size of a message is bigger than the size of the text feld and it is necessary to generate more than one line. |
| textGroupSeq | String | Sequence of the text for a given group ID. It is used in case comments information has more than one line. |
| RestFdgRef | ||
| Parameter Name | Data Type | Description |
| refType | String | Type of the reference information. It is used when there is any reference that it is necessary to add in the fscal document, as shipment number, contract number, order, ID, and so on. Valid values are pre-defned in the Merchandising system. |
| refCode | String | Reference code/value of reference type. |
| RestFdgNonMerch | ||
| Parameter Name | Data Type | Description |
| chargeInd | String | Charge indicator. |
| Parameter Name | Data Type | Description |
|---|---|---|
| nonMerchCode | String | Non-merchandise code that identifes a non-merchandise cost used as a charge or allowance. |
| nonMerchCodeDesc | String | Non-merchandise code description. It is used to provide more detailed about non-merchandise code, for example: allowance details, types of non-merchandise code such as Freight, Insurance, and so on. |
| nonMerchAmt | BigDecimal | Non-merchandise amount. |
| nonMerchType | String | Non-merchandise type exclusive for Charges. |
| taxes | List | Collection of taxes for non- merchandise. |
| additionalproperties | List | Collection of additional properties for non-merchandise. |
| comments | List | Collection of comments for non- merchandises. |
packdetails
| Parameter Name | Data Type | Description |
|---|---|---|
| item | String | Unique alphanumeric ID of a pack component that is part of item pack. |
| itemQty | BigDecimal | Quantity of the component item that is part of the pack. |
| itemDesc | String | Description of the component item component. |
| uom | String | Unit of measure of the component item. |
totaltaxes
| Parameter Name | Data Type | Description |
|---|---|---|
| taxType | String | Not applicable fortotalTaxes. |
| taxCode | String | Tax identifcation code. |
| taxRate | BigDecimal | Not applicable fortotalTaxes. |
| taxAmt | BigDecimal | Sum oftaxAmtfor all items for thetax code. Rounding applied based on system option |
| unitTaxAmt | BigDecimal | Not applicable fortotalTaxes. |
| taxBasis | BigDecimal | Sum oftaxBasisfor all items for thetax code. Rounding applied based on system option. |
| taxCodeDesc | String | Tax code description. This feld can be used to indicate extra code or detailed information about tax code. |
JSON Structure:
"{
"fiscalDocument": {
"docId": 17200,
"requestId": 17207,
"requestSystem": "OMNI",
"requestAction": "A",
"status": "R",
"docNo": "17200",
"docType": "WBL",
"docTypeCode": null,
"extReqId": "10065007",
"transactionType": "SALES",
"issueDate": 1617196782000,
"dueDate": null,
"printerId": null,
"docPrintUrl": null,
"currencyCode": "USD",
"totalTaxAmt": null,
"totalNonMerchTaxAmt": null,
"totalAmtInclTax": null,
"totalAmtExclTax": null,
"totalAllowance": null,
"totalCharge": null,
"totalRounding": null,
"terms": null,
"docLang": "EN",
"deduceTax": null,
"createBy": "RMS_ADMIN",
"createDatetime": "2021-06-16",
"lastUpdateBy": "RFM01",
"lastUpdateDatetime": "2021-06-16",
"entities": [
{
"entityType": "SHIPP",
"entityInternalType": "ST",
"entityInternalPtnrType": null,
"entityCode": "990011",
"name": "QABR-Store Test Washington",
"legalName": "QABR-Store Test Washington",
"carrierVehicleRn": null,
"carrierVehicleState": null,
"carrierDriverName": null,
"carrierDriverLn": null,
"address": {
"street": "R da Juta",
"additionalStreetName": "1512",
"complement": null,
"city": "Washijngton",
"jurisdictionCode": null,
"postalCode": "03308070",
"country": "US",
"telephone": "2360873",
"email": "washington.dias@oracle.com",
"state": "DC",
"contactName": "Washington Dias",
"additionalproperties": []
},
"identification": []
},
{
"entityType": "DEST",
"entityInternalType": "CUST",
"entityInternalPtnrType": null,
"entityCode": "75",
"name": "wdias losnisk",
"legalName": "JADLOG",
"carrierVehicleRn": null,
"carrierVehicleState": null,
"carrierDriverName": null,
"carrierDriverLn": null,
"address": {
"street": "end10",
"additionalStreetName": "end20",
"complement": "end30",
"city": "Washington",
"jurisdictionCode": "3100104",
"postalCode": "08573160",
"country": "US",
"telephone": null,
"email": null,
"state": "DC",
"contactName": "wdias losnisk",
"additionalproperties": []
},
"identification": []
},
{
"entityType": "CR",
"entityInternalType": "PTNR",
"entityInternalPtnrType": "FF",
"entityCode": "11",
"name": "Carrier",
"legalName": "Carrier",
"carrierVehicleRn": "CJU0939",
"carrierVehicleState": "São Paulo",
"carrierDriverName": "Djalma da Carreta",
"carrierDriverLn": "77799573959957",
"address": {
"street": "15333 JFK Blvd",
"additionalStreetName": null,
"complement": null,
"city": "Houston",
"jurisdictionCode": null,
"postalCode": "77032",
"country": "US",
"telephone": null,
"email": "juliano.costa@oracle.com",
"state": "TX",
"contactName": "Juliano Costa",
"additionalproperties": [
{
"key": "NIP",
"value": "NIP09",
"type": "VARCHAR2",
"description": "NIP"
},
{
"key": "POSTALCODE",
"value": "POST09",
"type": "VARCHAR2",
"description": "Postal Code"
}
]
},
"identification": [
{
"key": "TAX_ID",
"value": "332424324",
"type": "VARCHAR2",
"description": "TAX ID"
}
]
}
],
"details": [
{
"lineNo": 1,
"item": "100900006",
"itemDesc": "item regular scenario 3",
"itemShortDesc": "regular item regular scenario 3",
"totalAmt": null,
"unitAmt": null,
"uom": "EA",
"qty": 5,
"totalTaxAmt": null,
"totalAmtInclTax": null,
"packInd": "N",
"gtin": null,
"gtinType": "ITEM",
"vpn": null,
"totalRounding": null,
"totalAllowance": null,
"totalCharge": null,
"taxes": [],
"references": [],
"allowanceCharges": [],
"packdetails": [],
"additionalproperties": [],
"comments": []
},
{
"lineNo": 2,
"item": "100900065",
"itemDesc": "itemm simple pack scenario 3",
"itemShortDesc": "itemm simple pack scenario 3",
"totalAmt": null,
"unitAmt": null,
"uom": "EA",
"qty": 5,
"totalTaxAmt": null,
"totalAmtInclTax": null,
"packInd": "Y",
"gtin": null,
"gtinType": "ITEM",
"vpn": null,
"totalRounding": null,
"totalAllowance": null,
"totalCharge": null,
"taxes": [],
"references": [],
"allowanceCharges": [],
"packdetails": [
{
"item": "100900057",
"itemQty": 10,
"itemDesc": "item componente de simple pack",
"uom": "EA"
}
],
"additionalproperties": [],
"comments": []
}],
"references": [
{
"refType": "CONO",
"refCode": "000000000000000000000000000000000000000090115067"
},
{
"refType": "CONO",
"refCode": "000000000000000000000000000000000000000090115068"
}],
"totaltaxes": [],
"errors": [],
"allowanceCharges": [],
"additionalproperties": [],
"comments": [
{
"text": "Waybill payload Scenario 3",
"textGroupId": null,
"textGroupSeq": null
},
{
"text": "Test Scenario predoc 3",
"textGroupId": null,
"textGroupSeq": null
}]
}
}"
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SVC_FDG_DTL | Yes | No | No | No |
| SVC_FDG_DTL_PACK | Yes | No | No | No |
| SVC_FDG_ERROR | Yes | No | No | No |
| SVC_FDG_ETT | Yes | No | No | No |
| SVC_FDG_EXT | Yes | No | No | No |
| SVC_FDG_HDR | Yes | No | Yes | No |
| SVC_FDG_NON_MERCH | Yes | No | No | No |
| SVC_FDG_REF | Yes | No | No | No |
| SVC_FDG_TAX | Yes | No | No | No |
| SVC_FDG_TEXT | Yes | No | No | No |
| FDG_DTL | Yes | No | No | No |
| FDG_DTL_PACK | Yes | No | No | No |
| FDG_ERROR | Yes | No | No | No |
| FDG_ETT | Yes | No | No | No |
| FDG_EXT | Yes | No | No | No |
| FDG_HDR | Yes | No | No | No |
| FDG_NON_MERCH | Yes | No | No | No |
| FDG_REF | Yes | No | No | No |
| FDG_TAX | Yes | No | No | No |
| FDG_TEXT | Yes | No | No | No |
Fiscal Document Process Status Request Service
Functional Area
Finance
Business Overview
This web service will be used by 3rd-party systems in charge of communicating fiscal document requests to local Governments, to provide to Fiscal Document Generation the approval status and associated data such as the formal document number and print version URL path.
Service Type
Post
ReST URL
{{baseUrl}}/services/private/fdg/processDocStatus
Input
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| integrationSystemNa me | Yes | String | Name of the integration system that will process this document. | |
| integrationSystemId | Yes | String | Unique identifer to be used by the integration system. | |
| requestAction | No | String | Action code returned for a given document in the nextDocumentDetailresponse. | A(approve) or C(cancel). |
| docId | Yes | String | Document ID returned for a given document in nextDocumentDetailresponse. | |
| docNo | Yes | String | Document number returned for a given document in nextDocumentDetailresponse. | |
| operationStatus | Yes | String | Status of the processing executed by a third party for the given document. Received means the document payload was properly consumed by the third party system and it is ready to proceed with its processing. Success means that the document was successfully approved. Fail means that the document approval failed; in this case it is expected that the error or errors will be provided. | R(Received) S(Success)or F(Fail) |
| extDocNo | No | String | External document number when applicable. This feld should be populated with the approved fscal document number when it is generated by Government. | |
| docPrintUrl | No | String | URL to access or download the fscal document printable version (PDF). | |
| additionalproperties | No | List | Collection of additional properties. | |
| errors | No | List | Collection of errors. |
RestFdgExt:
| Parameter Name | Required | Data Type | Description Valid values |
|---|---|---|---|
| key | No | String | Key value of the additional property data. |
| value | No | String | Value of the additional property data. |
| type | No | String | Data type of the additional property. VARCHAR2,NUMBERorDATE |
| description RestFdgError: | No | String | Description of additional property data. |
| Parameter Name | Required | Data Type | Description Valid values |
| errorCode | Yes | String | Error code defned by 3rd party. |
| errorDesc | Yes | String | Error description defned by 3rd party. This description must have enough detail so the problem can be identifed. |
RestFdgError:
JSON Input Structure:
"{
"integrationSystemName": "3RDPARNER",
"integrationSystemId": 777,
"requestAction": "A",
"docId": 669854788524448800,
"docNo": 1235489884,
"operationStatus": "S",
"extDocNo": 999999999999,
"docPrintUrl": "www.doc.com/print?code=123",
"additionalproperties": [
{
"key": "EXTID1",
"value": "ExtensionValue",
"type": "VARCHAR",
"description": "Description"
}],
"errors": [
{
"errorCode": "ERR87896",
"errorDesc": "Unknow Error"
}]
}"
Output
| Parameter Name | Data Type | Description |
|---|---|---|
| status | String | Request process status. Can be either successfully or with error. |
| errors | List | Collection of errors. |
RestFdgError
| Parameter Name | Data Type | Description |
|---|---|---|
| errorCode | String | This feld contains the error code. |
| errorDesc | String | This feld contains the error description. |
JSON Structure:
"{
"status": "E",
"errors": [
{
"errorCode": "FDG_DOC_NOT_FOUND",
"errorDesc": "Fiscal document with id 669854788524448800 not found."
}]
}"
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SVC_FDG_DTL | Yes | No | No | Yes |
| SVC_FDG_DTL_PACK | Yes | No | No | Yes |
| SVC_FDG_ERROR | Yes | Yes | No | Yes |
| SVC_FDG_ETT | Yes | No | No | Yes |
| SVC_FDG_EXT | Yes | Yes | No | Yes |
| SVC_FDG_HDR | Yes | No | Yes | Yes |
| SVC_FDG_NON_MERCH | Yes | No | No | Yes |
| SVC_FDG_REF | Yes | No | No | Yes |
| SVC_FDG_TAX | Yes | No | No | Yes |
| SVC_FDG_TEXT | Yes | No | No | Yes |
| FDG_DTL | No | Yes | No | No |
| FDG_DTL_PACK | No | Yes | No | No |
| FDG_ERROR | No | Yes | No | No |
| FDG_ETT | No | Yes | No | No |
| FDG_EXT | No | Yes | No | No |
| FDG_HDR | Yes | Yes | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| FDG_NON_MERCH | No | Yes | No | No |
| FDG_REF | No | Yes | No | No |
| FDG_TAX | No | Yes | No | No |
| FDG_TEXT | No | Yes | No | No |
| FDG_SYSTEM_OPTIONS | No | No | No | No |
Fiscal Document Cancel Request Service
Functional Area
Finance
Business Overview
In both scenarios for shipment and Inbound, it will be the requestor´s option to cancel a fiscal document request. This process runs by calling the Document Cancel Request Service.
Requestor systems can request cancelation for a specific document. This request is consumed by Fiscal Document Generation and, depending on the current status of the document, different actions will take place including simply changing the status of the document to Canceled, or even the integration of the cancelation request to the 3rd-party system that communicates this request to local Governments. In this scenario, Fiscal Document Generation will expect the 3rd party to confirm the cancelation.
Service Type
Post
ReST URL
{{baseUrl}}/services/private/fdg/processDocCancel
Input
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| docId | Yes | String | This column contains the unique document ID. | |
| requestAction | Yes | String | This feld contains the current action for the request. This action is to third-party know the action to perform with this request. | A(Approve) or C(Cancel). |
| additionalpropertie s | No | List | Collection of additional properties. | |
| comments | No | List | Collection of comments. |
RestFdgExt:
| Parameter Name | Required | Data Type | Description Valid values |
|---|---|---|---|
| key | No | String | Key value of the additional property data. |
| value | No | String | Value of the additional property data. |
| type | No | String | Data type of the additional property. VARCHAR2,NUMBERorDATE |
| description | No | String | Description of additional property data. |
| RestFdgText: | |||
| Parameter Name | Required | Data Type | Description Valid values |
| text | Yes | String | This feld contains additional comments at item level. It is used to provide any additional information or legal message important to fscal document. |
| textGroupId | No | String | Text group ID. It is used to group related comments when there is more than one or when the size of a message is bigger than the size of the text feld and it is necessary to generate more than one line. |
| textGroupSeq JSON Input Stru | No cture: | String | Sequence of the text for a given group ID. It is used in case comments information has more than one line. |
"{"docId": "12"requestActi"additionalp{"key": "E"value":"type": "}],"comments":[{"text": "}]}" | 345",on": "C",roperties"XTID1","ExtensionVARCHAR2"additional | : [Value",text" |
Output
| Parameter Name | Data Type | Description |
|---|---|---|
| processStatus | String | This column contains the status of the document |
| errors | List | Collection of errors. |
RestFdgError
| Parameter Name | Data Type | Description |
|---|---|---|
| errorCode | String | This feld contains the error code. |
| errorDesc | String | This feld contains the error description. |
JSON Structure:
"{
"status": "E",
"errors": [
{
"errorCode": "FDG_DOC_NOT_FOUND",
"errorDesc": "Fiscal document with id 12345 not found."
}]
}"
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SVC_FDG_HDR | No | No | Yes | No |
| FDG_HDR | Yes | No | Yes | No |
| FDG_EXT | No | Yes | No | No |
| FDG_TEXT | No | Yes | No | No |
Fiscal Document Detail Request Service
Functional Area
Finance
Business Overview
This web service is called by 3rd-party systems responsible for communicating fiscal document request to local Governments when they need to fetch data for a particular document. The response to this service will have the full payload of a fiscal document.
Service Type
Get
ReST URL
{{baseUrl}}/services/private/fdg/documentDetail?
docId=<string>&entityType=<string>&entityInternalType=<string>&entityCode=<str
ing>
Input Parameters
| Parameter Name | Required | Data Type | Description | Valid values |
|---|---|---|---|---|
| docId | No | String | Internal fscal document ID generated by FDG. This ID is unique to each fscal document created. | |
| entityType | No | String | Filter criteria to fetch documents for specifc entity types in a fscal document. | SHIPP,DEST,CR,VENDOR,INV,LOC |
| entityInternalType | No | String | Filter criteria to fetch documents based on specifc entity types in Merchandising irrespective of their role in the fscal documents. | WH,ST,SUPP,PTNR,CUST |
| entityCode | No | String | Filter criteria to fetch documents based on a specifc entity code. This feld contains the entity’s Merchandising internal code and must sent in conjunction with entityInternatTypetag.For example, ID of store or warehouse. |
Output
| Parameter Name | Data Type | Description |
|---|---|---|
| requestId | String | Internal fscal document REQUEST ID generated by FDG. This ID can be used to identify the fscal document(s) being processed. |
| requestSystem | String | Name of the system that performed the request for a fscal document. |
| Parameter Name | Data Type | Description |
|---|---|---|
| requestAction | String | Action code to be passed along with the request for a fscal document process. |
| docId | BigDecimal | Internal fscal document ID generated by FDG. This ID is unique to each fscal document created. |
| docNo | String | Ofcial fscal document number. This number is given to approved documents. |
| status | String | Internal FDG status of the fscal document. |
| docType | String | Valid values:INV(Invoice),WBL(eWaybill), NFe(Nota FiscalEletronica). |
| docTypeCode | String | Extended description of a document type. |
| extReqId | String | External system´s request ID used to link FDG internal ID with the requestor system´s transaction ID. |
| transactionType | String | Identifcation of the transaction associated with the fscal document. |
| issueDate | OffsetDateTime | Issue date of the fscal document. Date defned at the time the document is submitted for approval. |
| dueDate | date | Payment date of fscal document or invoice. |
| docLang | String | Language of fscal document. It is based on language defned in source location. |
| printerId | String | Printer ID that is designated to print fscal document. |
| docPrintUrl | String | URL of the fscal document report. |
| currencyCode | String | Currency code for the fscal document. It is based on currency code defned in source location. |
| totalTaxAmt | BigDecimal | Total TAX amount of the fscal document. This feld is the sum of totalTaxAmtof all items of thedocument. Rounding applied based on system option. |
| totalNonMerchTaxAmt | BigDecimal | Total TAX amount of allowances/ charges of the fscal document. Rounding applied based on system option. |
| totalAmtInclTax | BigDecimal | Total value of fscal document including taxes. This feld is the sum of totalAmtInclTaxof all items ofthe document. Rounding applied based on system option. |
| Parameter Name | Data Type | Description |
|---|---|---|
| totalAmtExclTax | BigDecimal | Total value of fscal document excluding taxes. This feld has the totalAmtInclTaxminustotalTaxAmt. Rounding appliedbased on system option. |
| totalAllowance | BigDecimal | Total value of all allowances in fscal document. This feld is the sum of totalAllowanceof all items of thedocument. Rounding applied based on system option. |
| totalCharge | BigDecimal | Total value of all charges in fscal document. This feld is the sum of totalChargeof all items of thedocument. Rounding applied based on system option. |
| totalRounding | BigDecimal | The rounding amount (positive or negative) added to produce the line extension totalAmt. This feld is thesum of totalRoundingof all items ofthe document. |
| terms | String | Payment terms used in this transaction |
| deduceTax | String | Flag that indicates if taxes were calculated by the system or informed at the fscal document request. |
| createBy | String | User ID that created the record. |
| createDatetime | date | Record creation date. |
| lastUpdateBy | String | User ID that did last update of fscal document. |
| lastUpdateDatetime | date | Date of last update of fscal document. |
| entities | List | Collection of entities. |
| details | List | Collection of item details |
RestFdgEtt
| Parameter Name | Data Type | Description |
|---|---|---|
| entityType | String | Entity type. |
| entityInternalPtnrType | String | Merchandising partner type. |
| entityInternalType | String | Merchandising entity type. |
| entityCode | String | Internal Merchandising code of the entity. Ex. ID of store or warehouse |
| name | String | Entity name. |
| legalName | String | Entity’s legal name. |
| carrierVehicleRn | String | Carrier vehicle´s registration number. |
| carrierVehicleState | String | Carrier vehicle´s state. |
| Parameter Name | Data Type | Description |
|---|---|---|
| carrierDriverName | String | Carrier driver´s name. |
| carrierDriverLn | String | Carrier driver´s license number. |
| address | RestFdgEttAddr | Collection of address details. |
| identifcation | List | Collection of Entity Identifcation Additional Properties. Fiscal Attributes will be send in this group. |
RestFdgEttAddr
| Parameter Name | Data Type | Description |
|---|---|---|
| street | String | Street name of the entity´s address. |
| additionalStreetName | String | Extension of street name of the entity ´s address. |
| complement | String | Additional information of entity´s address, such as neighborhood, county, etc. |
| city | String | City name of entity´s address. |
| jurisdictionCode | String | Jurisdiction code of entity´s address. This can be legal code associated to city, county or any other level. |
| postalCode | String | Zip or postal code of entity´s address. |
| country | String | Country name of entity´s address. |
| telephone | String | Telephone number of the person who is the contact point. |
| String | E-mail address of the person who is the contact point. | |
| state | String | State name of entity´s address. |
| contactName | String | Contact name. |
| additionalproperties | List | Collection of address additional properties. |
RestFdgExt
| Parameter Name | Data Type | Description |
|---|---|---|
| key | String | This column contains the key value of the entity additional properties at entity address level. |
| value | String | This column contains the value of the entity additional properties at entity address level. |
| type | String | This column contains the extension type at entity address level. |
| description | String | Description of additional property data. |
RestFdgExt (identification)
| Parameter Name | Data Type | Description |
|---|---|---|
| key | String | This column contains the key value of the entity additional properties at entity address level. |
| value | String | This column contains the value of the entity additional properties at entity address level. |
| type | String | This column contains the extension type at entity address level. |
| description | String | Description of additional property data. |
| references | List | Collection of references. |
| totaltaxes | List | Collection of taxes. |
| errors | List | Collection of errors. |
| allowanceCharges | List<RestFdgNonMerc h> | Collection of allowance charges. |
| additionalproperties | List | Collection of additional properties. |
| comments | List | Collection of comments. |
RestFdgDtl
| Parameter Name | Data Type | Description |
|---|---|---|
| lineNo | long | Sequential number of the item in fscal document. This number is a sequence starts with number one. Any gap is not allowed. |
| Item | String | Unique code ID that identifes the item. |
| itemDesc | String | Long description of the item. |
| itemShortDesc | String | Short description of the item. |
| totalAmt | BigDecimal | Total amount for the item inclusive of allowances and charges. Calculation formula is (( unitAmt*qty) -totalAllowance+totalCharge). Rounding appliedbased on system option. |
| unitAmt | BigDecimal | Item unit amount. No rounding applied. |
| uom | String | Unit of measure used in item in the fscal document. |
| qty | BigDecimal | Quantity of item in the fscal document. |
| totalTaxAmt | BigDecimal | Total amount of taxes applied to the item. This feld is sum of all taxAmtat tax level for this item. Rounding applied based on system option. |
| Parameter Name | Data Type | Description |
|---|---|---|
| totalAmtInclTax | BigDecimal | Total amount for item inclusive of taxes. Calculation formula is totalAmt+totalTaxAmt. Roundingapplied based on system option. |
| totalRounding | BigDecimal | The rounding amount (positive or negative) added to produce the line extension totalAmt. Calculationformula (( unitAmt*qty) -totalAllowance+totalCharge)-totalAmt. |
| totalAllowance | BigDecimal | Total amount of all allowances at item level. This feld is sum of all allowances at allowanceChargeslevel for this item. Rounding applied based on system option. |
| totalCharge | BigDecimal | Total amount of all charges at item level. This feld is sum of all charges at allowanceChargeslevel for thisitem. Rounding applied based on system option. |
| packInd | String | Pack indicator. Valid values:Y(thisitem is a pack) or N(this item is not apack). |
| gtin | String | GTIN number (Global Trade Item Number) of item. |
| gtinType | String | GTIN Type. Valid values:GTIN-8,GTIN-12,GTIN-13,GTIN-14 |
| vpn | String | Vendor Product Number (VPN) associated with the item. |
| taxes | List | Collection of item taxes. |
| references | List | Collection of item references |
| allowanceCharges | List<RestFdgNonMerc h> | Collection of item allowance charges. |
| packdetails | List | Collection of item pack details. |
| additionalproperties | List | Collection of item additional properties. |
| comments | List | Collection of item comments. |
RestFdgTax
| Parameter Name | Data Type | Description |
|---|---|---|
| taxType | String | Tax type. |
| taxCode | String | Tax identifcation code. |
| taxRate | BigDecimal | Tax rate when tax type is set as percentage. |
| taxAmt | BigDecimal | Total tax amount for the tax code. Rounding applied based on system option. |
| Parameter Name | Data Type | Description |
|---|---|---|
| unitTaxAmt | BigDecimal | Tax amount per unit for the tax code. |
| taxBasis | BigDecimal | Tax basis amount used to calculate tax value based on taxRatefeld.Rounding applied based on system option. |
| taxCodeDesc | String | Tax code description. This feld can be used to indicate extra code or detailed information about tax code. |
| additionalproperties | List | Collection of taxes addition properties. |
| comments | List | Collection of taxes comments. |
| RestFdgText | ||
| Parameter Name | Data Type | Description |
| text | String | Additional information and/or comments. It is used to provide any additional information or legal message important to the fscal document. |
| textGroupId | String | Text group ID. It is used to group related comments when there is more than one or when the size of a message is bigger than the size of the text feld and it is necessary to generate more than one line. |
| textGroupSeq | String | Sequence of the text for a given group ID. It is used in case comments information has more than one line. |
| RestFdgRef | ||
| Parameter Name | Data Type | Description |
| refType | String | Type of the reference information. It is used when there is any reference that it is necessary to add in the fscal document, as shipment number, contract number, order, ID, and so on. Valid values are pre-defned in Merchandising System. |
| refCode | String | Reference code/value of reference type. |
| RestFdgNonMerch | ||
| Parameter Name | Data Type | Description |
| chargeInd | String | Charge indicator. |
| Parameter Name | Data Type | Description |
|---|---|---|
| nonMerchCode | String | Non-merchandise code that identifes a non-merchandise cost used as a charge or allowance. |
| nonMerchCodeDesc | String | Non-merchandise code description. It is used to provide more detailed about non-merchandise code, for example: allowance details, types of non-merchandise code such as Freight, Insurance, etc. |
| nonMerchAmt | BigDecimal | Non-merchandise amount. |
| nonMerchType | String | Non-merchandise type exclusive for Charges. |
| taxes | List | Collection of taxes for non- merchandise. |
| additionalproperties | List | Collection of additional properties for non-merchandise. |
| comments | List | Collection of comments for non- merchandises. |
packdetails
| Parameter Name | Data Type | Description |
|---|---|---|
| item | String | Unique alphanumeric ID of a pack component that is part of item pack. |
| itemQty | BigDecimal | Quantity of the component item that is part of the pack. |
| itemDesc | String | Description of the component item component. |
| uom | String | Unit of measure of the component item. |
totaltaxes
| Parameter Name | Data Type | Description |
|---|---|---|
| taxType | String | Not applicable fortotalTaxes. |
| taxCode | String | Tax identifcation code. |
| taxRate | BigDecimal | Not applicable fortotalTaxes. |
| taxAmt | BigDecimal | Sum oftaxAmtfor all items for thetax code. Rounding applied based on system option |
| unitTaxAmt | BigDecimal | Not applicable fortotalTaxes. |
| taxBasis | BigDecimal | Sum oftaxBasisfor all items for thetax code. Rounding applied based on system option. |
| taxCodeDesc | String | Tax code description. This feld can be used to indicate extra code or detailed information about tax code. |
JSON Structure:
"{
"docId": 17200,
"requestId": 17207,
"requestSystem": "OMNI",
"requestAction": "A",
"status": "S",
"docNo": "17200",
"docType": "WBL",
"docTypeCode": null,
"extReqId": "10065007",
"transactionType": "SALES",
"issueDate": "2021-03-31T08:19:42-05:00",
"dueDate": null,
"printerId": null,
"docPrintUrl": null,
"currencyCode": "USD",
"totalTaxAmt": null,
"totalNonMerchTaxAmt": null,
"totalAmtInclTax": null,
"totalAmtExclTax": null,
"totalAllowance": null,
"totalCharge": null,
"totalRounding": null,
"terms": null,
"docLang": "EN",
"deduceTax": null,
"createBy": "RMS_ADMIN",
"createDatetime": "2021-06-16",
"lastUpdateBy": "RFM01",
"lastUpdateDatetime": "2021-06-16",
"entities": [
{
"entityType": "SHIPP",
"entityInternalType": "ST",
"entityInternalPtnrType": null,
"entityCode": "990011",
"name": "QABR-Store Test Washington",
"legalName": "QABR-Store Test Washington",
"carrierVehicleRn": null,
"carrierVehicleState": null,
"carrierDriverName": null,
"carrierDriverLn": null,
"address": {
"street": "R da Juta",
"additionalStreetName": "1512",
"complement": null,
"city": "Washijngton",
"jurisdictionCode": null,
"postalCode": "03308070",
"country": "US",
"telephone": "2360873",
"email": "washington.dias@oracle.com",
"state": "DC",
"contactName": "Washington Dias",
"additionalproperties": []
},
"identification": []
},
{
"entityType": "DEST",
"entityInternalType": "CUST",
"entityInternalPtnrType": null,
"entityCode": "75",
"name": "wdias losnisk",
"legalName": "JADLOG",
"carrierVehicleRn": null,
"carrierVehicleState": null,
"carrierDriverName": null,
"carrierDriverLn": null,
"address": {
"street": "end10",
"additionalStreetName": "end20",
"complement": "end30",
"city": "Washington",
"jurisdictionCode": "3100104",
"postalCode": "08573160",
"country": "US",
"telephone": null,
"email": null,
"state": "DC",
"contactName": "wdias losnisk",
"additionalproperties": []
},
"identification": []
},
{
"entityType": "CR",
"entityInternalType": "PTNR",
"entityInternalPtnrType": "FF",
"entityCode": "11",
"name": "Carrier",
"legalName": "Carrier",
"carrierVehicleRn": "CJU0939",
"carrierVehicleState": "São Paulo",
"carrierDriverName": "Djalma da Carreta",
"carrierDriverLn": "77799573959957",
"address": {
"street": "15333 JFK Blvd",
"additionalStreetName": null,
"complement": null,
"city": "Houston",
"jurisdictionCode": null,
"postalCode": "77032",
"country": "US",
"telephone": null,
"email": "juliano.costa@oracle.com",
"state": "TX",
"contactName": "Juliano Costa",
"additionalproperties": [
{
"key": "NIP",
"value": "NIP09",
"type": "VARCHAR2",
"description": "NIP"
},
{
"key": "POSTALCODE",
"value": "POST09",
"type": "VARCHAR2",
"description": "Postal Code"
}
]
},
"identification": [
{
"key": "TAX_ID",
"value": "332424324",
"type": "VARCHAR2",
"description": "TAX ID"
}
]
}],
"details": [
{
"lineNo": 1,
"item": "100900006",
"itemDesc": "item regular scenario 3",
"itemShortDesc": "regular item regular scenario 3",
"totalAmt": null,
"unitAmt": null,
"uom": "EA",
"qty": 5,
"totalTaxAmt": null,
"totalAmtInclTax": null,
"packInd": "N",
"gtin": null,
"gtinType": "ITEM",
"vpn": null,
"totalRounding": null,
"totalAllowance": null,
"totalCharge": null,
"taxes": [],
"references": [],
"allowanceCharges": [],
"packdetails": [],
"additionalproperties": [],
"comments": []
},
{
"lineNo": 2,
"item": "100900065",
"itemDesc": "itemm simple pack scenario 3",
"itemShortDesc": "itemm simple pack scenario 3",
"totalAmt": null,
"unitAmt": null,
"uom": "EA",
"qty": 5,
"totalTaxAmt": null,
"totalAmtInclTax": null,
"packInd": "Y",
"gtin": null,
"gtinType": "ITEM",
"vpn": null,
"totalRounding": null,
"totalAllowance": null,
"totalCharge": null,
"taxes": [],
"references": [],
"allowanceCharges": [],
"packdetails": [
{
"item": "100900057",
"itemQty": 10,
"itemDesc": "item componente de simple pack",
"uom": "EA"
}
],
"additionalproperties": [],
"comments": []
}],
"references": [
{
"refType": "CONO",
"refCode": "000000000000000000000000000000000000000090115067"
},
{
"refType": "CONO",
"refCode": "000000000000000000000000000000000000000090115068"
}],
"totaltaxes": [],
"errors": [],
"allowanceCharges": [],
"additionalproperties": [],
"comments": [
{
"text": "Waybill payload Scenario 3",
"textGroupId": null,
"textGroupSeq": null
},
{
"text": "Test Scenario predoc 3",
"textGroupId": null,
"textGroupSeq": null
}]
}"
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SVC_FDG_DTL | Yes | No | No | No |
| SVC_FDG_DTL_PACK | Yes | No | No | No |
| SVC_FDG_ERROR | Yes | No | No | No |
| SVC_FDG_ETT | Yes | No | No | No |
| SVC_FDG_EXT | Yes | No | No | No |
| SVC_FDG_HDR | Yes | No | Yes | No |
| SVC_FDG_NON_MERCH | Yes | No | No | No |
| SVC_FDG_REF | Yes | No | No | No |
| SVC_FDG_TAX | Yes | No | No | No |
| SVC_FDG_TEXT | Yes | No | No | No |
| FDG_DTL | Yes | No | No | No |
| FDG_DTL_PACK | Yes | No | No | No |
| FDG_ERROR | Yes | No | No | No |
| FDG_ETT | Yes | No | No | No |
| FDG_EXT | Yes | No | No | No |
| FDG_HDR | Yes | No | No | No |
| FDG_NON_MERCH | Yes | No | No | No |
| FDG_REF | Yes | No | No | No |
| FDG_TAX | Yes | No | No | No |
| FDG_TEXT | Yes | No | No | No |
Sales Audit Services
The following services are included in this functional area:
-
Data Privacy
-
Sales Audit Data Privacy Download Service
- Get Personally Identifiable Information
-
Sales Audit Data Privacy Upload Service
- Delete Personally Identifiable Information
-
-
Store Day Summary
-
Mobile Workflow Store Day Download Service
-
Get Aggregated Open Store Days
-
Get Open Store Day Counts
-
Get Open Store Day Details
-
Get Open Store Day Error Counts
-
Get Open Store Day Over/Short Amounts
-
Get Open Store Day Over/Short Counts
-
-
Get Open Store Days
- Get Store Errors
- Get Stores with Open Days
-
Transactions
-
Consignment Sales Transaction Update
-
-
Transaction Download Service
- Get Rejected Transactions Since Previous Query
-
Transaction Upload Service
- Load Transactions
Data Privacy
The following services are included in this functional area:
-
Sales Audit Data Privacy Download Service
- Get Personally Identifiable Information -
Sales Audit Data Privacy Upload Service
-
Delete Personally Identifiable Information
Sales Audit Data Privacy Download Service
The following services are included in this functional area:
- Get Personally Identifiable Information
Get Personally Identifiable Information
The Get Personally Identifiable Information service is the same service used in the Merchandising solution. For Sales Audit, this service can be used to obtain personally identifiable information for the Customer and Employee entities For more details on this service, see the Data Privacy Download Service under Merchandising Services > Administration > Data Privacy.
Sales Audit Data Privacy Upload Service
The following services are included in this functional area:
- Delete Personally Identifiable Information
Delete Personally Identifiable Information
The Delete Personally Identifiable Information service is the same service used in the Merchandising solution. For Sales Audit, this service can be used to delete personally identifiable information for the Customer and Employee entities. For more details on this service, see the Data Privacy Upload Service under Merchandising Services > Administration > Data Privacy.
Store Day Summary
The following services are included in this functional area:
-
Mobile Workflow Store Day Download Service
-
Get Aggregated Open Store Days
-
Get Open Store Day Counts
-
Get Open Store Day Details
-
Get Open Store Day Error Counts
-
Get Open Store Day Over/Short Amounts
-
Get Open Store Day Over/Short Counts
-
Get Open Store Days
-
Get Store Errors
-
Get Stores with Open Days
-
Mobile Workflow Store Day Download Service
The following services are included in this functional area:
-
Get Aggregated Open Store Days
-
Get Open Store Day Counts
-
Get Open Store Day Details
-
Get Open Store Day Error Counts
-
Get Open Store Day Over/Short Amounts
-
Get Open Store Day Over/Short Counts
-
Get Open Store Days
-
Get Store Errors
-
Get Stores with Open Days
Get Aggregated Open Store Days
Business Overview
Retrieves aggregated store day information for all dates or store days older than vdate -5.
Service Type
Get
ReST URL
/getStoreAggregations?
allOlderInd={allOlderInd}&stores={stores}&sortAttrib={sortAttrib}&sortDirection={sortDirection}& pageSize={pageSize}&pageNumber={pageNumber}
Input Parameters
Parameter Name Required Description Valid values allOlderInd Yes Search string for locations ALL , OLDER ID or Name
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| stores | No | Comma-separated values for stores | NA |
| sortAttrib | No | Sort Attribute | STORENAME,AUDITOR,OSVALUE,ERRORCNT,DATASTATUS,OPENDAYS,OSDAYSandOSSUMS |
| sortDirection | No | Sort Direction | ASC,DESC |
| pageSize | No | Maximum number of locations to retrieve per page | NA |
| pageNumber | No | Result page to retrieve | NA |
Output
Store Store Name Chain Chain Name Auditors Open Days Over Days Short Days Over Amount Short Amount Currency Code Error Count
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SA_ERROR | Yes | No | No | No |
| SA_HQ_VALUE | Yes | No | No | No |
| SA_POS_VALUE | Yes | No | No | No |
| SA_STORE_DATA | Yes | No | No | No |
| SA_STORE_DAY | Yes | No | No | No |
| SA_SYS_VALUE | Yes | No | No | No |
| V_CHAIN | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
Get Open Store Day Counts
Business Overview
This service provides, at a glance, the number of open stores for which the sales audit manager is responsible. The stores for which the user is responsible are those associated with the user in Sales Audit’s employee maintenance via location traits.
Service Type
Get
ReST URL
/summaryOpenStoreDay
Input Parameters
No input.
Output
Record Type —DATE, OLDER, ALL
-
For record type DATE: five records of type date are displayed for today minus 1 through today minus 5
-
One record type OLDER: is for store days older than today minus 5
-
One record type ALL: for all store days
Record Date —Date of date type rows
Open Store Count
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| LOC_TRAITS_MATRIX | Yes | No | No | No |
| SA_STORE_DAY | Yes | No | No | No |
| SA_USER_LOC_TRAITS | Yes | No | No | No |
Get Open Store Day Details
Business Overview
The service displays a list of open stores to which the user is assigned, for a single day, for ‘OLDER’ days, or for ‘ALL’ days.
Service Type
Get
ReST URL
/getStoreDays?
store={store}&recordType={recordType}&recordDate={recordDate}&sortAttrib={sortAttrib}&sort Direction={sortDirection}&pageSize={pageSize}&pageNumber={pageNumber}
Input Parameters
| Parameter Name | Required | Description | Valid Values |
|---|---|---|---|
| recordType | Yes | Record Type | ALL,OLDER,DATE |
| recordDate | No | Record Date, required when recordType is DATE | NA |
| store | No | Store ID | NA |
| sortAttrib | No | Sort Attribute | STORENAME,AUDITOR,OSVALUE,ERRORCNT,DATASTATUS,OPENDAYS,OSDAYS, andOSSUMS |
| sortDirection | No | Sort Direction | ASC,DESC |
| pageSize | No | Maximum number of locations to retrieve per page | NA |
| pageNumber | No | Result page to retrieve | NA |
Output
Store Store Day Seq No Auditors Business Date Store Name Chain Chain Name Data Status Data Status Description Audit Status Audit Status Description Audit Changed Datetime Fuel Status Fuel Status Description Over Short Amount Currency Code Error Count Transaction Count
Loaded File Count
Expected File Count
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| LOC_TRAITS_MATRIX | Yes | No | No | No |
| SA_ERROR | Yes | No | No | No |
| SA_HQ_VALUE | Yes | No | No | No |
| SA_POS_VALUE | Yes | No | No | No |
| SA_STORE_DATA | Yes | No | No | No |
| SA_STORE_DAY | Yes | No | No | No |
| SA_SYS_VALUE | Yes | No | No | No |
| SA_SYSTEM_OPTIONS | Yes | No | No | No |
| SA_TOTAL | Yes | No | No | No |
| SA_TRAN_HEAD | Yes | No | No | No |
| SA_USER_LOC_TRAITS | Yes | No | No | No |
| V_CHAIN | Yes | No | No | No |
| V_CODE_DETAIL | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
Get Open Store Day Error Counts
Business Overview
This service provides, at a glance, the number outstanding errors on the specified days for stores for which the sales audit manager is responsible. An outstanding error is defined as an error that exists against a store day that has not been overridden.
Service Type
Get
ReST URL
/summaryError
Input Parameters
No input.
Output
Record Type —DATE, OLDER, ALL
-
For record type DATE: five records of type date are displayed for today minus 1 through today minus 5
-
One record type OLDER: is for store days older than today minus 5
-
One record type ALL: for all store days
Record Date —Date of date type rows
Error Count
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| LOC_TRAITS_MATRIX | Yes | No | No | No |
| SA_ERROR | Yes | No | No | No |
| SA_STORE_DAY | Yes | No | No | No |
| SA_USER_LOC_TRAITS | Yes | No | No | No |
Get Open Store Day Over/Short Amounts
Business Overview
This service provides at a glance the sums of all overages and all shortages for all open stores on a given day for which the sales audit manager is responsible. If all locations to which the user is responsible have the same local currency, all monetary values will be displayed in the local currency. Otherwise, all monetary values will be displayed in the retailer’s primary currency. If the Over/Short value for the store day is a positive value it is considered an overage, if the Over/Short value for the store day is a negative value it is a shortage.
Service Type
Get
ReST URL
/summaryOverShortAmount
Input Parameters
No input.
Output
Record Type —DATE, OLDER, ALL
-
For record type DATE: Five records of type date are displayed for today minus 1 through today minus 5
-
One record type OLDER: is for store days older than today minus 5
-
One record type ALL: for all store days
Record Date —Date of date type rows
Over Amount
Short Amount
Currency Code
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| LOC_TRAITS_MATRIX | Yes | No | No | No |
| MV_CURRENCY_CONVERSION_RATES | Yes | No | No | No |
| SA_HQ_VALUE | Yes | No | No | No |
| SA_POS_VALUE | Yes | No | No | No |
| SA_STORE_DAY | Yes | No | No | No |
| SA_SYS_VALUE | Yes | No | No | No |
| SA_TOTAL | Yes | No | No | No |
| SA_USER_LOC_TRAITS | Yes | No | No | No |
| STORE | Yes | No | No | No |
Get Open Store Day Over/Short Counts
Business Overview
This service provides, at a glance, the count of overages and the count of shortages for all open stores on a given day for which the sales audit manager is responsible. If the Over/Short value for the store day is a positive value it is considered an overage, if the Over/Short value for the store day is a negative value it is a shortage.
Service Type
Get
ReST URL
/summaryOverShortCount
Input Parameters
No input.
Output
Record Type —DATE, OLDER, ALL
-
For record type DATE: five records of type date are displayed for today minus 1 through today minus 5
-
One record type OLDER: is for store days older than today minus 5
-
One record type ALL: for all store days
Record Date —Date of date type rows
Over Count
Short Count
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| LOC_TRAITS_MATRIX | Yes | No | No | No |
| SA_HQ_VALUE | Yes | No | No | No |
| SA_POS_VALUE | Yes | No | No | No |
| SA_STORE_DAY | Yes | No | No | No |
| SA_SYS_VALUE | Yes | No | No | No |
| SA_TOTAL | Yes | No | No | No |
| SA_USER_LOC_TRAITS | Yes | No | No | No |
| STORE | Yes | No | No | No |
Get Open Store Days
Business Overview
This web service allows the user to find which store days have records that needs attention.
Service Type
Get
ReST URL
/getStoreDateInd?store={store}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| store | Yes | Store ID | NA |
Output
Record Type —DATE, OLDER, ALL
-
For record type DATE: five records of type date are displayed for today minus 1 through today minus 5
-
One record type OLDER: is for store days older than today minus 5
-
One record type ALL: for all store days
Record Date —Date of date type rows
Store Has Value indicator
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SA_STORE_DAY | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
Get Store Errors
Business Overview
Retrieves summary of store day errors.
Service Type
Get
ReST URL
/getStoreErrors?store={store}&recordType={recordType}&recordDate={recordDate}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| recordType | Yes | Record Type | ALL,OLDER,DATE |
| recordDate | No | Record Date, required when | NA |
recordTypeisDATE | |||
| store | No | Store ID | NA |
Output
Store
Error Code
Error Description
Error Percentage
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SA_ERROR | Yes | No | No | No |
| SA_STORE_DAY | Yes | No | No | No |
| V_SA_ERROR | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
Get Stores with Open Days
Business Overview
This web service enables store search and returns aggregated store information.
Service Type
Get
ReST URL
/storeSearch?
searchString={searchString}&searchFilter={searchFilter}&sortAttrib={sortAttrib}&sortDirection={ sortDirection}&pageSize={pageSize}&pageNumber={pageNumber}
Input Parameters
| Parameter Name | Required | Description | Valid values |
|---|---|---|---|
| searchString | Yes | Search string for locations ID or Name | NA |
| searchFilter | Yes | Search all stores or assigned stores | ALL,ASSIGN |
| sortAttrib | No | Sort Attribute | STORENAME,AUDITOR,OSVALUE,ERRORCNT,DATASTATUS,OPENDAYS,OSDAYS, andOSSUMS |
| sortDirection | No | Sort Direction | ASC,DESC |
| pageSize | No | Maximum number of locations to retrieve per page | NA |
| pageNumber | No | Result page to retrieve | NA |
Output
Store Store Name Chain Chain Name Auditors Open Days Over Days Short Days Over Amount Short Amount Currency Code Error Count
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| LOC_TRAITS_MATRIX | Yes | No | No | No |
| SA_ERROR | Yes | No | No | No |
| SA_HQ_VALUE | Yes | No | No | No |
| SA_POS_VALUE | Yes | No | No | No |
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SA_STORE_DATA | Yes | No | No | No |
| SA_STORE_DAY | Yes | No | No | No |
| SA_SYS_VALUE | Yes | No | No | No |
| SA_TOTAL | Yes | No | No | No |
| SA_TRAN_HEAD | Yes | No | No | No |
| SA_USER_LOC_TRAITS | Yes | No | No | No |
| V_CHAIN | Yes | No | No | No |
| V_STORE | Yes | No | No | No |
Transactions
The following services are included in this functional area:
-
Consignment Sales Transaction Update
-
Transaction Download Service
- Get Rejected Transactions Since Previous Query
-
Transaction Upload Service
- Load Transactions
Consignment Sales Transaction Update
Functional Area
Financial
Business Overview
The service provides the ability to accept or provide Adjusted values of Consignment Rate and Consignment unit cost for consignment items staged for Rate Review.
Service Type
POST
ReST URL
Resa/consignmentSalesTransactionUpdate
Input Payload Details
Table 5-1317 Update - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| collectionSize | Yes | Number (4) | Number of items in the collection. The maximum number of the items allowed in a collection is 9999. |
| consignmentSales | Yes | Collection of Object | References a collection of Store, Day, Store Day sequence number, Tran sequence number, Item sequence number. |
Table 5-1318 ConsignmentSales - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| store | Yes | Number (10) | The store number to which this transaction belongs. |
| day | Yes | Number (3) | Day number on the transaction. |
| storeDaySeqNo | Yes | Number (20) | This unique identifer for a store/day combination. |
| tranSeqNo | Yes | Number (20) | The sales audit system’s transaction identifer. |
| itemSeqNo | Yes | Number (4) | Sequence number of item within a transaction. |
| itemStatus | No | String (6) | The status of the item. Valid values are ’S’ALE, ‘R’ETURN, ‘ORD’, ‘LCO’ |
| itemType | No | String (6) | The type of the item. Valid values are ITEM, NMITEM and REF. |
| item | No | String (25) | Unique identifer for the item. |
| refItem | No | String (25) | Contains a reference item to the item feld. |
| nonMerchItem | No | String (25) | Contains a non-merchandise item. |
| reviewedWithNoUpdates | Yes | String (1) | The review indicator allows for accepting the existing rate/cost detail without any updates when set to Y. Valid values are Y and N. |
| adjustedConsignmentRate | No | Number (12,4) | This column holds the preferred adjusted consignment rate. |
| adjustedConsignmentUnitCo st | No | Number (20,4) | This column holds the preferred adjusted consignment unit cost. |
Table 5-1319 UpdateError - Object. See list of elements for detail
| Element Name | Required | Data Type Description |
|---|---|---|
| consignmentSalesError | Yes | Collection of |
| Object |
Table 5-1320 ConsignmentSalesError - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| store Yes | Number (10) | The store number to which this transaction belongs. |
| day Yes | Number (3) | Day number on the transaction. |
| storeDaySeqNo Yes | Number (20) | This unique identifer for a store/day combination. |
| tranSeqNo Yes | Number (20) | The sales audit system’s transaction identifer. |
| itemSeqNo Yes | Number (4) | Sequence number of item within a transaction. |
| errorMessages Yes | Array of String | List of errors. |
Sample Input Message{"collectionSize": 1000,"consignmentSales": [{"store": 1521,"day": 15,"storeDaySeqNo": 29000201,"tranSeqNo": 102308,"itemSeqNo": 1000,"itemStatus": "S","itemType": "ITEM","item": "102350079","refItem": "1234560000081","nonMerchItem": "445101","reviewedWithNoUpdates": "N","adjustedConsignmentRate": 60,"adjustedConsignmentUnitCost":}]} | 20.2131 |
Response Code: 200 (Success)
Response Code: 400 (Error)
In case of error, the following standard error response will be returned. The element validationErrors is present when input the 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 an exception is caught while processing business logic.
Table 5-1321 UpdateError - Object. See list of elements for detail
| Element Name | Required | Data Type | Description |
|---|---|---|---|
| consignmentSalesError | Yes | Collection of Object |
Table 5-1322 ConsignmentSalesError - Object. See list of elements for detail
| Element Name Required | Data Type | Description |
|---|---|---|
| store Yes | Number (10) | The store number to which this transaction belongs. |
| day Yes | Number (3) | Day number on the transaction. |
| storeDaySeqNo Yes | Number (20) | This unique identifer for a store/day combination. |
| tranSeqNo Yes | Number (20) | The sales audit system’s transaction identifer. |
| itemSeqNo Yes | Number (4) | Sequence number of item within a transaction. |
| errorMessages Yes | Array of String | List of errors. |
Sample Error Message{"status": "ERROR","message": "Error found in valida"validationErrors": [ | tion of inpu | t payload", |
{"error": "must be one of Y, N"field": "createRecord.arg0.a"inputValue": "X"}],"businessError": [ | ",pproveInd", | |
{"consignmentSalesError": [{"store": 109770,"day": 100,"storeDaySeqNo": 293567,"tranSeqNo": 102308,"itemSeqNo": 1000,"errorMessages": ["String"]}]}]} |
Transaction Download Service
The following services are included in this functional area:
- Get Rejected Transactions Since Previous Query
Get Rejected Transactions Since Previous Query
Functional Area
Financial
Business Overview
The purpose of this service is to return transactions that were rejected during processing to the calling process or application, for use in troubleshooting and error resolution.
Sales Service
This services fetches and returns transactions from the staging table SVC_RTLOG_DATA_REJECT that meet the input criteria. Transactions failing validations in the sacreatertlog.ksh process are inserted into this staging table during processing.
Service Type
Put
ReST URL
Resa/getRejectedTransactions
Input Parameters
Table 5-1323 SvcprovRejectedRecRDO
| Parameter Name | Data Type |
|---|---|
| pageSize | Number |
| pageNumber | Number |
| readUnreadErrorInd | String |
| startDate | String (Format :YYYYMMDD) |
| endDate | String (Format :YYYYMMDD) |
| svcprovRejStoreRDOs | List |
| svcprovRejErrorcodeRDOs | List |
| svcprovRejTransactionidRDOs | List |
Table 5-1324 SvcprovRejStoreRecRDO
| Parameter Name | Data Type |
|---|---|
| store | String |
Table 5-1325 SvcprovRejErrorcodeRecRDO
| Parameter Name | Data Type |
|---|---|
| errorCode | String |
Table 5-1326 SvcprovRejTransactionidRecRDO
| Parameter Name | Data Type |
|---|---|
| transactionId | String |
JSON Input Structure:
[
{
"pageSize": null,
"pageNumber": null,
"readUnreadErrorInd": null,
"startDate": null,
"endDate": null,
"svcprovRejStoreRDOs": [
{
"store": null
}
],
"svcprovRejErrorcodeRDOs": [
{
"errorCode": null
}
],
"svcprovRejTransactionidRDOs": [
{
"transactionId": null
}
]
}
]
Output
| totalRecordCount | Number |
|---|---|
| Parameter Name | Data Type |
| results | Table of SVCPROV_REJ_THEAD_REC |
Table 5-1327 SVCPROV_REJ_THEAD_REC
| Parameter Name | Data Type |
|---|---|
| Store | Number |
| businessDate | Date |
Table 5-1327 (Cont.) SVCPROV_REJ_THEAD_REC
| Parameter Name | Data Type |
|---|---|
| errorCode | String |
| errorDesc | String |
| recType | String |
| register | String |
| transactionDate | Date |
| transactionNo | Number |
| cashier | String |
| salesperson | String |
| transactionType | String |
| subTransactionType | String |
| origSalesNo | Number |
| origRegNo | String |
| reasonCode | String |
| vendorNo | String |
| vendorInvcNo | String |
| paymentRefNo | String |
| prfDlvyNo | String |
| refNo1 | String |
| refNo2 | String |
| refNo3 | String |
| refNo4 | String |
| value | BigDecimal |
| bannerId | String |
| roundedAmt | BigDecimal |
| roundedOffAmt | BigDecimal |
| creditPromoId | String |
| refNo25 | String |
| refNo26 | String |
| refNo27 | String |
| tranProcessSys | String |
| refNo28 | String |
| refNo29 | String |
| refNo30 | String |
| refNo31 | String |
| salesThattTbl | List |
| salesTcustTbl | List< SvcprovSalesTcustRecRDO> |
| salesCattTbl | List< SvcprovSalesAttrRecRDO> |
| salesTitemTbl | List< SvcprovSalesTitemRecRDO> |
| salesTtaxTbl | List< SvcprovSalesTtaxRecRDO> |
Table 5-1327 (Cont.) SVCPROV_REJ_THEAD_REC
| Parameter Name | Data Type |
|---|---|
| salesTpymtTbl | List< SvcprovSalesTpymtRecRDO> |
| salesTtendTbl | List |
| salesTtailTbl | List |
Table 5-1328 SvcprovSalesAttrRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| attributeType | String |
| attributeValue | String |
Table 5-1329 SvcprovSalesTcustRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| customerId | String |
| customerType | String |
| customerName | String |
| address1 | String |
| address2 | String |
| city | String |
| state | String |
| zipCode | String |
| country | String |
| homePhone | String |
| workPhone | String |
| String | |
| birthdate | Date |
Table 5-1330 SvcprovSalesTitemRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| itemStatus | String |
| itemType | String |
| itemNoType | String |
| formatId | String |
| item | String |
| refItem | String |
Table 5-1330 (Cont.) SvcprovSalesTitemRecRDO
| Parameter Name | Data Type |
|---|---|
| nonMerchItem | String |
| voucherNo | String |
| quantity | String |
| sellingUom | String |
| unitRetail | BigDecimal |
| overrideReason | String |
| originalUnitRetail | BigDecimal |
| taxableIndicator | String |
| pump | String |
| refNo5 | String |
| refNo6 | String |
| refNo7 | String |
| refNo8 | String |
| itemSwipedInd | String |
| returnReasonCode | String |
| salesperson | String |
| expirationDate | Date |
| dropShipInd | String |
| uomQty | BigDecimal |
| catchWeightInd | String |
| sellingItem | String |
| custOrdLineNo | Number |
| mediaId | Number |
| totalIgtaxAmount | BigDecimal |
| uniqueId | String |
| custOrdNo | String |
| custOrdDate | Date |
| fulfllmentOrdNo | String |
| noInventoryReturn | String |
| salesType | String |
| returnWh | Number |
| returnDeposition | String |
| originalStore | Number |
| originalTransactionNo | Number |
| fulfllmentLocType | String |
| fulfllmentLoc | Number |
| postingStore | String |
| salesItattTbl | List |
| salesIdiscTbl | List |
Table 5-1330 (Cont.) SvcprovSalesTitemRecRDO
| Parameter Name | Data Type |
|---|---|
| salesIgtaxTbl | List |
Table 5-1331 SvcprovSalesIdiscRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| merchPromoNo | String |
| discountRefNo | String |
| discountType | String |
| couponNo | String |
| couponRefNo | String |
| quantity | BigDecimal |
| unitDiscountAmount | BigDecimal |
| refNo13 | String |
| refNo14 | String |
| refNo15 | String |
| refNo16 | String |
| uomQty | BigDecimal |
| catchWeightInd | String |
| promoComponent | Number |
| salesTdattTbl | List |
Table 5-1332 SvcprovSalesIgtaxRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| taxAuthority | String |
| igtaxCode | String |
| igtaxRate | BigDecimal |
| igtaxAmount | BigDecimal |
| refNo21 | String |
| refNo22 | String |
| refNo23 | String |
| refNo24 | String |
| salesIxattTbl | List |
Table 5-1333 SvcprovSalesTtaxRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| taxCode | String |
| taxAmount | BigDecimal |
| refNo17 | String |
| refNo18 | String |
| refNo19 | String |
| refNo20 | String |
| transactionTaxAttributeTbl | List |
Table 5-1334 SvcprovSalesTpymtRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| paymentAmount | BigDecimal |
Table 5-1335 SvcprovSalesTtendRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| tendTypeGroup | String |
| tendTypeId | Number |
| tenderAmount | BigDecimal |
| ccNo | String |
| ccAuthNo | String |
| ccAuthSource | String |
| ccCardholderVerifcation | String |
| ccExpirationDate | Date |
| ccEntryMode | String |
| ccTerminalId | String |
| ccSpecialCondition | String |
| ccToken | String |
| voucherNo | String |
| couponNbr | String |
| couponRefNo | String |
| chequeAccNo | String |
| chequeNo | Number |
| identifcationMethod | String |
| identifcationId | String |
| originalCurrency | String |
Table 5-1335 (Cont.) SvcprovSalesTtendRecRDO
| Parameter Name | Data Type |
|---|---|
| originalCurrencyAmount | BigDecimal |
| refNbr9 | String |
| refNbr10 | String |
| refNbr11 | String |
| refNbr12 | String |
| transactionTenderAttributeTbl | List |
Table 5-1336 SvcprovSalesCounterRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| recCounter | Number |
The output will contain the status of the request including validation errors, if any.
JSON Structure:
{
"totalRecordCount": null,
"results": [
{
"store": null,
"businessDateDisplay": null,
"businessDate": null,
"errorCode": null,
"errorDesc": null,
"recType": "THEAD",
"register": null,
"transactionDateDisplay": null,
"transactionDate": null,
"transactionNo": null,
"cashier": null,
"salesperson": null,
"transactionType": null,
"subTransactionType": null,
"origSalesNo": null,
"origRegNo": null,
"reasonCode": null,
"vendorNo": null,
"vendorInvcNo": null,
"paymentRefNo": null,
"prfDlvyNo": null,
"refNo1": null,
"refNo2": null,
"refNo3": null,
"refNo4": null,
"value": null,
"bannerId": null,
"roundedAmt": null,
"roundedOffAmt": null,
"creditPromoId": null,
"refNo25": null,
"refNo26": null,
"refNo27": null,
"tranProcessSys": null,
"refNo28": null,
"refNo29": null,
"refNo30": null,
"refNo31": null,
"salesThattTbl": [
{
"recType": "THATT",
"attributeType": null,
"attributeValue": null
}
],
"salesTcustTbl": [
{
"recType": "TCUST",
"customerId": null,
"customerType": null,
"customerName": null,
"address1": null,
"address2": null,
"city": null,
"state": null,
"zipCode": null,
"country": null,
"homePhone": null,
"workPhone": null,
"email": null,
"birthdateDisplay": null,
"birthdate": null
},
{
"recType": "TCUST",
"customerId": null,
"customerType": null,
"customerName": null,
"address1": null,
"address2": null,
"city": null,
"state": null,
"zipCode": null,
"country": null,
"homePhone": null,
"workPhone": null,
"email": null,
"birthdateDisplay": null,
"birthdate": null
}
],
"salesCattTbl": [
{
"recType": "CATT",
"attributeType": null,
"attributeValue": null
}
],
"salesTitemTbl": [
{
"recType": "TITEM",
"itemStatus": null,
"itemType": null,
"itemNoType": null,
"formatId": null,
"item": null,
"refItem": null,
"nonMerchItem": null,
"voucherNo": null,
"quantity": null,
"sellingUom": null,
"unitRetail": null,
"overrideReason": null,
"originalUnitRetail": null,
"taxableIndicator": "Y",
"pump": null,
"refNo5": null,
"refNo6": null,
"refNo7": null,
"refNo8": null,
"itemSwipedInd": null,
"returnReasonCode": null,
"salesperson": null,
"expirationDate": null,
"dropShipInd": null,
"uomQty": null,
"catchWeightInd": null,
"sellingItem": null,
"custOrdLineNo": null,
"mediaId": null,
"totalIgtaxAmount": null,
"uniqueId": null,
"custOrdNo": null,
"custOrdDateDisplay": null,
"custOrdDate": null,
"fulfillmentOrdNo": null,
"noInventoryReturn": null,
"salesType": null,
"returnWh": null,
"returnDeposition": null,
"originalStore": null,
"originalTransactionNo": null,
"fulfillmentLocType": null,
"fulfillmentLoc": null,
"postingStore": null,
"salesItattTbl": [
{
"recType": "ITATT",
"attributeType": null,
"attributeValue": null
},
{
"recType": "ITATT",
"attributeType": null,
"attributeValue": null
}
],
"salesIdiscTbl": [
{
"recType": "IDISC",
"merchPromoNo": null,
"discountRefNo": null,
"discountType": null,
"couponNo": null,
"couponRefNo": null,
"quantity": null,
"unitDiscountAmount": null,
"refNo13": null,
"refNo14": null,
"refNo15": null,
"refNo16": null,
"uomQty": null,
"catchWeightInd": null,
"promoComponent": null,
"salesTdattTbl":
}
],
"salesIgtaxTbl": [
{
"recType": "IGTAX",
"taxAuthority": null,
"igtaxCode": null,
"igtaxRate": null,
"igtaxAmount": null,
"refNo21": null,
"refNo22": null,
"refNo23": null,
"refNo24": null,
"salesIxattTbl": [
{
"recType": "IXATT",
"attributeType": null,
"attributeValue": null
}
]
}
}
],
"salesTtaxTbl": [
{
"recType": "TTAX",
"taxCode": null,
"taxAmount": null,
"refNo17": null,
"refNo18": null,
"refNo19": null,
"refNo20": null,
"salesTxattTbl": [
{
"recType": "TXATT",
"attributeType": null,
"attributeValue": null
}
],
"salesTpymtTbl": [
{
"recType": "TPYMT",
"paymentAmount": null
}
],
"salesTtendTbl": [
{
"recType": "TTEND",
"tendTypeGroup": null,
"tendTypeId": null,
"tenderAmount": null,
"ccNo": null,
"ccAuthNo": null,
"ccAuthSource": null,
"ccCardholderVerification": null,
"ccExpirationDateDisplay": null,
"ccExpirationDate": null,
"ccEntryMode": null,
"ccTerminalId": null,
"ccSpecialCondition": null,
"ccToken": null,
"voucherNo": null,
"couponNbr": null,
"couponRefNo": null,
"chequeAccNo": null,
"chequeNo": null,
"identificationMethod": null,
"identificationId": null,
"originalCurrency": null,
"originalCurrencyAmount": null,
"refNbr9": null,
"refNbr10": null,
"refNbr11": null,
"refNbr12": null,
"salesTtattTbl": [
{
"recType": "TTATT",
"attributeType": null,
"attributeValue": null
}
]
}
],
"salesTtailTbl": []
}
]
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SVC_RTLOG_DATA_REJECT | Yes | No | Yes | No |
Transaction Upload Service
The following services are included in this functional area:
- Load Transactions
Load Transactions
Functional Area
Financial
Business Overview
This service accepts transactions from a Point of Sale (POS) or Order Management Solution (OMS) into Sales Audit. This service provides an alternative to transactions processed from an RTLOG file through the Sales Audit sales process documented under the Scheduled Integration section.
This service accepts transactions from a POS or OMS system in a JSON format and loads them into the staging table SVC_RTLOG_DATA_LOAD for further processing. This service performs minimal data validation as the majority of the sales data validation remains in the Sales Audit import process. The transactions staged through this service are extracted into the RTLOG format by the sacreatertlog.ksh process and processed by the saimptlog process.
In addition, this service supports a near-real-time update of inventory impacted by sales transactions by recording sales units in the SA_INPROGRESS_SALES table. The units record in this table for an item/location can be netted out of stock-on-hand for a more accurate, real-time view of available inventory. When these sales are processed completely through auditing, the in-progress units will be negated.
Service Type
Post
ReST URL
Resa/salesService
Input Parameters
Table 5-1337 SvcprovSalesServiceRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| fleCreateDate | String (Format :YYYYMMDDHHMMSS) |
| businessDate | String(Format:YYYYMMDD) |
| store | Number |
| referenceNbr | String |
| rtlogOrgSys | String |
| transactionHeadTbl | List |
| salesFtailTbl | List |
Table 5-1338 SvcprovSalesTheadRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| register | String |
| transactionDate | String (Format :YYYYMMDDHHMMSS) |
| transactionNo | Number |
| cashier | String |
| salesperson | String |
| transactionType | String |
| subTransactionType | String |
| origSalesNo | Number |
| origRegNo | String |
| reasonCode | String |
| vendorNo | String |
| vendorInvcNo | String |
| paymentRefNo | String |
| prfDlvyNo | String |
| refNo1 | String |
| refNo2 | String |
| refNo3 | String |
| refNo4 | String |
| value | BigDecimal |
| bannerId | String |
| roundedAmt | BigDecimal |
| roundedOffAmt | BigDecimal |
| creditPromoId | String |
| refNo25 | String |
Table 5-1338 (Cont.) SvcprovSalesTheadRecRDO
| Parameter Name | Data Type |
|---|---|
| refNo26 | String |
| refNo27 | String |
| tranProcessSys | String |
| refNo28 | String |
| refNo29 | String |
| refNo30 | String |
| refNo31 | String |
| transactionHeadAttributeTbl | |
| List | |
| transactionCustomerTbl | List< SvcprovSalesTcustRecRDO> |
| customerAttributeTbl | List< SvcprovSalesAttrRecRDO> |
| transactionItemTbl | List< SvcprovSalesTitemRecRDO> |
| transactionTaxTbl | List< SvcprovSalesTtaxRecRDO> |
| transactionPaymentTbl | List< SvcprovSalesTpymtRecRDO> |
| transactionTenderTbl | List |
| transactionTrailerTbl | List |
Table 5-1339 SvcprovSalesAttrRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| attributeType | String |
| attributeValue | String |
Table 5-1340 SvcprovSalesTcustRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| customerId | String |
| customerType | String |
| customerName | String |
| address1 | String |
| address2 | String |
| city | String |
| state | String |
| zipCode | String |
| country | String |
| homePhone | String |
| workPhone | String |
Table 5-1340 (Cont.) SvcprovSalesTcustRecRDO
| Parameter Name | Data Type |
|---|---|
| String | |
| birthdate | String (Format:YYYYMMDD) |
Table 5-1341 SvcprovSalesTitemRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| itemStatus | String |
| itemType | String |
| itemNoType | String |
| formatId | String |
| item | String |
| refItem | String |
| nonMerchItem | String |
| voucherNo | String |
| quantity | String |
| sellingUom | String |
| unitRetail | BigDecimal |
| overrideReason | String |
| originalUnitRetail | BigDecimal |
| taxableIndicator | String |
| pump | String |
| refNo5 | String |
| refNo6 | String |
| refNo7 | String |
| refNo8 | String |
| itemSwipedInd | String |
| returnReasonCode | String |
| salesperson | String |
| expirationDate | String(Format:YYYYMMDD) |
| dropShipInd | String |
| uomQty | BigDecimal |
| catchWeightInd | String |
| sellingItem | String |
| custOrdLineNo | Number |
| mediaId | Number |
| totalIgtaxAmount | BigDecimal |
| uniqueId | String |
| custOrdNo | String |
Table 5-1341 (Cont.) SvcprovSalesTitemRecRDO
| Parameter Name | Data Type |
|---|---|
| custOrdDate | String(Format:YYYYMMDDHHMMSS) |
| fulfllmentOrdNo | String |
| noInventoryReturn | String |
| salesType | String |
| returnWh | Number |
| returnDeposition | String |
| originalStore | Number |
| originalTransactionNo | Number |
| fulfllmentLocType | String |
| fulfllmentLoc | Number |
| postingStore | String |
| transactionItemAttributeTbl | List |
| transactionItemDiscountTbl | List |
| transactionItemTaxTbl | List |
| consignmentRate | BigDecimal |
| consignmentUnitCost | BigDecimal |
| inventoryIdentiferType | String |
| inventoryId | String |
Table 5-1342 SvcprovSalesIdiscRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| merchPromoNo | String |
| discountRefNo | String |
| discountType | String |
| couponNo | String |
| couponRefNo | String |
| quantity | BigDecimal |
| unitDiscountAmount | BigDecimal |
| refNo13 | String |
| refNo14 | String |
| refNo15 | String |
| refNo16 | String |
| uomQty | BigDecimal |
| catchWeightInd | String |
| promoComponent | Number |
| transactionItemDiscountAtrributeTbl | List |
Table 5-1343 SvcprovSalesIgtaxRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| taxAuthority | String |
| igtaxCode | String |
| igtaxRate | BigDecimal |
| igtaxAmount | BigDecimal |
| refNo21 | String |
| refNo22 | String |
| refNo23 | String |
| refNo24 | String |
| transactionItemTaxAttributeTbl | List |
Table 5-1344 SvcprovSalesTtaxRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| taxCode | String |
| taxAmount | BigDecimal |
| refNo17 | String |
| refNo18 | String |
| refNo19 | String |
| refNo20 | String |
| transactionTaxAttributeTbl | List |
Table 5-1345 SvcprovSalesTpymtRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| paymentAmount | BigDecimal |
Table 5-1346 SvcprovSalesTtendRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| tendTypeGroup | String |
| tendTypeId | Number |
| tenderAmount | BigDecimal |
| ccNo | String |
| ccAuthNo | String |
| ccAuthSource | String |
Table 5-1346 (Cont.) SvcprovSalesTtendRecRDO
| Parameter Name | Data Type |
|---|---|
| ccCardholderVerifcation | String |
| ccExpirationDate | String(Format:YYYYMMDD) |
| ccEntryMode | String |
| ccTerminalId | String |
| ccSpecialCondition | String |
| ccToken | String |
| voucherNo | String |
| couponNbr | String |
| couponRefNo | String |
| chequeAccNo | String |
| chequeNo | Number |
| identifcationMethod | String |
| identifcationId | String |
| originalCurrency | String |
| originalCurrencyAmount | BigDecimal |
| refNbr9 | String |
| refNbr10 | String |
| refNbr11 | String |
| refNbr12 | String |
| transactionTenderAttributeTbl | List |
Table 5-1347 SvcprovSalesCounterRecRDO
| Parameter Name | Data Type |
|---|---|
| recType | String |
| recCounter | Number |
JSON Structure:
[
{
"recType": null,
"fileCreateDate": null,
"businessDate": null,
"store": null,
"referenceNbr": null,
"rtlogOrgSys": null,
"transactionHeadTbl": [
{
"recType": null,
"register": null,
"transactionDate": null,
"transactionNo": null,
"cashier": null,
"salesperson": null,
"transactionType": null,
"subTransactionType": null,
"origSalesNo": null,
"origRegNo": null,
"reasonCode": null,
"vendorNo": null,
"vendorInvcNo": null,
"paymentRefNo": null,
"prfDlvyNo": null,
"refNo1": null,
"refNo2": null,
"refNo3": null,
"refNo4": null,
"value": null,
"bannerId": null,
"roundedAmt": null,
"roundedOffAmt": null,
"creditPromoId": null,
"refNo25": null,
"refNo26": null,
"refNo27": null,
"tranProcessSys": null,
"refNo28": null,
"refNo29": null,
"refNo3null": null,
"refNo31": null,
"transactionHeadAttributeTbl": [
{
"recType": null,
"attributeType": null,
"attributeValue": null
}
],
"transactionCustomerTbl": [
{
"recType": null,
"customerId": null,
"customerType": null,
"customerName": null,
"address1": null,
"address2": null,
"city": null,
"state": null,
"zipCode": null,
"country": null,
"homePhone": null,
"workPhone": null,
"email": null,
"birthdate": null
}
],
"customerAttributeTbl": [
{
"recType": null,
"attributeType": null,
"attributeValue": null
}
],
"transactionItemTbl": [
{
"recType": null,
"itemStatus": null,
"itemType": null,
"itemNoType": null,
"formatId": null,
"item": null,
"refItem": null,
"nonMerchItem": null,
"voucherNo": null,
"quantity": null,
"sellingUom": null,
"unitRetail": null,
"overrideReason": null,
"originalUnitRetail": null,
"taxableIndicator": null,
"pump": null,
"refNo5": null,
"refNo6": null,
"refNo7": null,
"refNo8": null,
"itemSwipedInd": null,
"returnReasonCode": null,
"salesperson": null,
"expirationDate": null,
"dropShipInd": null,
"uomQty": null,
"catchWeightInd": null,
"sellingItem": null,
"custOrdLineNo": null,
"mediaId": null,
"totalIgtaxAmount": null,
"uniqueId": null,
"custOrdNo": null,
"custOrdDate": null,
"fulfillmentOrdNo": null,
"noInventoryReturn": null,
"salesType": null,
"returnWh": null,
"returnDeposition": null,
"originalStore": null,
"originalTransactionNo": null,
"fulfillmentLocType": null,
"fulfillmentLoc": null,
"postingStore": null,
"transactionItemAttributeTbl": [
{
"recType": null,
"attributeType": null,
"attributeValue": null
}
],
"transactionItemDiscountTbl": [
{
"recType": null,
"merchPromoNo": null,
"discountRefNo": null,
"discountType": null,
"couponNo": null,
"couponRefNo": null,
"quantity": null,
"unitDiscountAmount": null,
"refNo13": null,
"refNo14": null,
"refNo15": null,
"refNo16": null,
"uomQty": null,
"catchWeightInd": null,
"promoComponent": null,
"transactionItemDiscountAtrributeTbl": [
{
"recType": null,
"attributeType": null,
"attributeValue": null
}
]
}
],
"transactionItemTaxTbl": [
{
"recType": null,
"taxAuthority": null,
"igtaxCode": null,
"igtaxRate": null,
"igtaxAmount": null,
"refNo21": null,
"refNo22": null,
"refNo23": null,
"refNo24": null,
"transactionItemTaxAttributeTbl": [
{
"recType": null,
"attributeType": null,
"attributeValue": null
}
]
}
],
"consignmentRate": null,
"consignmentUnitCost": null,
"inventoryIdentifierType : null,
"inventoryId": null
}
],
"transactionTaxTbl": [
{
"recType": null,
"taxCode": null,
"taxAmount": null,
"refNo17": null,
"refNo18": null,
"refNo19": null,
"refNo2null": null,
"transactionTaxAttributeTbl": [
{
"recType": null,
"attributeType": null,
"attributeValue": null
}
]
}
],
"transactionPaymentTbl": [
{
"recType": null,
"paymentAmount": null
}
],
"transactionTenderTbl": [
{
"recType": null,
"tendTypeGroup": null,
"tendTypeId": null,
"tenderAmount": null,
"ccNo": null,
"ccAuthNo": null,
"ccAuthSource": null,
"ccCardholderVerification": null,
"ccExpirationDate": null,
"ccEntryMode": null,
"ccTerminalId": null,
"ccSpecialCondition": null,
"ccToken": null,
"voucherNo": null,
"couponNbr": null,
"couponRefNo": null,
"chequeAccNo": null,
"chequeNo": null,
"identificationMethod": null,
"identificationId": null,
"originalCurrency": null,
"originalCurrencyAmount": null,
"refNbr9": null,
"refNbr1null": null,
"refNbr11": null,
"refNbr12": null,
"transactionTenderAttributeTbl": [
{
"recType": null,
"attributeType": null,
"attributeValue": null
}
]
}
],
"transactionTrailerTbl": [
{
"recType": null,
"recCounter": null
}
]
}
],
"salesFtailTbl": [
{
"recType": null,
"recCounter": null
}
]
}
]
Output
Table 5-1348 SVCPROV_SALES_STATUS_REC
| Parameter Name | Data Type |
|---|---|
| statusMsg | String |
| salesErrTbl | List< SVCPROV_SALES_FAIL_REC > |
Table 5-1349 SVCPROV_SALES_FAIL_REC
| Parameter Name | Data Type |
|---|---|
| store | BigDecimal |
| transactionNo | BigDecimal |
| recType | String |
| businessDate | Date |
| errorMsg | String |
The output will contain the status of the request including validation errors, if any.
JSON Structure:
{
"statusMsg": null,
"salesErrTbl": [
{
"store": null,
"transactionNo": null,
"recType": null,
"businessDateDisplay": null,
"businessDate": null,
"errorMsg": null,
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
],
"links": [],
"hyperMediaContent": {
"linkRDO": []
}
}
Table Impact
| TABLE | SELECT | INSERT | UPDATE | DELETE |
|---|---|---|---|---|
| SVC_RTLOG_DATA_LOAD | No | Yes | No | No |
| ITEM_LOC_SOH | Yes | No | Yes | No |
| SA_INPROGRESS_SALES | Yes | Yes | Yes | No |
| SVC_INPROGRESS_SALES | No | Yes | No | No |
| SVC_PROCESS_TRACKER | No | Yes | No | No |
In this guide
- Guide: Inbound and Outbound Integration Guide
- Previous: 4 SOAP Web Services
- Next: 6 Scheduled Integration
Related chapters
- 2 Administration Batch — Batch Operations Guide · shares
COST_SUSP_SUP_DETAIL,COST_ZONE_GROUP_LOC,DAILY_PURGE,DEAL_DETAIL - F Appendix: Publication Tables and Triggers — Merchandising Cloud Services Data Conversion Implementation Guide · shares
ADDR_CFA_EXT,ALLOC_DETAIL,ALLOC_HEADER,CLASS_CFA_EXT - A Appendix – Interface Details — RMFCS and SIOCS Implementation Guide · shares
ICL_RMS_ADDR,ICL_RMS_ALLOC,ICL_RMS_CLASS,ICL_RMS_DEPS - G Appendix: Tables List — Merchandising Cloud Services Data Conversion Implementation Guide · shares
ADDR_CFA_EXT,CLASS_CFA_EXT,COST_SUSP_SUP_DETAIL,COST_SUSP_SUP_DETAIL_LOC - 5 Purchase Order — Batch Operations Guide · shares
ALC_COMP_LOC,ALC_HEAD,ALLOC_CHRG,ALLOC_CHRG_TEMP - 6 Scheduled Integration — Inbound and Outbound Integration Guide · shares
ADD_TYPE_MODULE,CODE_DETAIL,CODE_HEAD,CODE_TYPE