5 ReSTful Web Services

This chapter gives an overview about the Merchandising and Sales Audit ReSTful Web service implementation and the APIs used in Merchandising and Sales Audit. For more information on ReST architectural style applied for building Web services, access the following URL:

http://www.oracle.com/technetwork/articles/javase/index-137171.html

To provide visibility to the background processing that's occurring, services write to the JOB_AUDIT_LOGS table in the database. Reports can be built based on this to provide visibility to what is happening in the background. Additionally, to assist users and developers in troubleshooting any error that may arise, the payload that was processed is also stored in the JOB_AUDIT_PAYLOAD table in the database.

Once the nightly batch run has started, web service execution will be halted, and users will receive a warning message that the nightly batch run has commenced.

Introduction

Merchandising and Sales Audit ReST support several web services, including the ability to query data and the ability to create and update data within the solutions. A few were built specifically to support mobile applications. These may not be useful for general use, however if you wanted to build your own mobile applications leveraging these services, this can be done. The ReSTful Web services Java code cannot be customized. The diagram below shows how the services are intended to interact with a mobile client.

Figure 5-1 Mobile Client and Web Services Integration through Javascript

Mobile and Web Services Integration

Note:

The services should not be used during the restricted 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 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.

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. User can change it though, in case they need content in a specific language.

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

  • POST/UPDATE : 204

  • DELETE : 204

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 following links provide access to the Merchandising services:

  • The ReSTful Web services WADL file is available at:

    https://<hostname>/RmsReSTServices/services/application.wadl

  • The ReSTful Web services are available at:

    https://<hostname>/RmsReSTServices/services/private/<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 WADL file is available at:

    https://<hostname>/ResaReSTServices/services/application.wadl

  • To access the ReSTful web services:

    https://<hostname>/ResaReSTServices/services/private/Resa/<service>

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 id of OAuth client app>

  • Client Secret: <Client secret of OAuth client app>

  • Scope: <Custom environment specific 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.

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.

  • Previous Page URL: Shows the service URL with same input parameters and the pageNumber input value minus 1, when page number is not 1.

Next or previous page URL is not provided when:

  • No records are returned

  • Previous page is not returned, when the page number is 1.

  • Next page is not returned, when the record reaches the last page.

Figure 5-2 Javascript for Paging Information in RMS Web Services

Javascript for Paging Information

Web Service APIs Process Flow

The diagram shows the Web Service API process flow.

Figure 5-3 Web Service APIs Process Flow

Web Service APIs Process Flow

Configuring ReSTful Web Services for Integration with External Systems

Based on your implementation, you will need to enable the Merchandising ReSTful publishing services for data replication between Merchandising and external systems. Additionally, the 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 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,

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.

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:

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

/downloaded

/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 Hierarchy

dynamic_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"
}

Register a New Storage Prefix

Business Overview

This service is used to register a new storage prefix.

Service Type

Put

ReST URL
/FTSWrapper/register/{prefix}
  • {prefix} - The Storage prefix to use

Headers
Key Value

Accept-Language

String (Ex: en-US)

Responses
Code Description

200

Successfully registered.

500

Failed registration.

Unregister a Storage Prefix

Business Overview

This service unregisters a storage prefix.

Service Type

Delete

ReST URL
/FTSWrapper/unregister/{prefix}
  • {prefix} - The storage prefix to be unregistered.

Headers
Key Value

Accept-Language

String (Ex: en-US)

Responses
Code Description

200

Successfully unregistered.

500

Failed unregistering.

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

<List> String

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

<List> String

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

prefix

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

modifiedDate

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",
}

Move Files

Business Overview

This service is used to move files from one location to other in Object Storage.

Service Type

Post

ReST URL
/FTSWrapper/movefiles
Headers
Key Value

Accept-Language

String (Ex: en-US)

Request body

{
    "listOfFiles": [
        {
            "currentPath": {
                "storagePrefix": "string",
                "fileName": "string"
            },
            "newPath": {
                "storagePrefix": "string",
                "fileName": "string"
            }
        }
    ]
}
Output

The output metadata contains the output of the FTS service for file movement. Validation error will be output, if any.

For Success:

{
    "failedMove": [],
    "successfulMove": [
        {
            "moveFile": {
                "currentPath: {
                    "storagePrefix": "downloaded",
                    "fileName": "RTLOG_STOREXXX_20210405122426384.DAT"
                },
                "newPath: {
                    "storagePrefix": "incoming",
                    "fileName": "RTLOG_STOREXXX_20210405122426384.DAT"
                },
                "responseMessage": "Successfully moved"
            }
        }
    ]
}

For Failure:

{
   "error_message": "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 Omni Integration

REST Endpoint for Omni Channel/Diff Group

Endpoint
MerchIntegrations/services/foundation/omnichannel/diff/group
Functional Area

Foundation

Business Overview

This service is used by Omni Channel applications to get diff group details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/diff/group?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

offsetkey

No

String

Offset Key. Valid Value are Combination of valid Differentiator Group ID and a valid Differentiator IF separated by comma. For example: diffGroupId, diffId

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

Action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT, and DELETE.

diffgroupid

String

This field will hold a unique number (identifier) for the differentiator group.

diffgroupdesc

String

Description of the differentiator group (for example: Mens Shirt Sizes, Womens Shoe Sizes, Girls Dress Sizes, Shower Gel Scents, Yogurt Flavors, and so on).

difftypeid

String

This field will hold a value of the types of differentiators contained in this differentiator group, such as S - size, C - color, F - flavor, E - scent, P - pattern. Valid values are stored in the DIFF_TYPE table.

diffid

String

Contains the differentiator which are associated with a differentiator group. This field must be a valid value from the DIFF_IDS table.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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%3A00%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

Foundation

Business Overview

This service is used by Omni Channel applications to get diff IDs and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/diff?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

offsetkey

No

String

Offset Key. Valid Value is Differentiator ID. For example: diffid.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT, and DELETE.

diffid

String

Contains the code to uniquely identify a differentiator.

diffdesc

String

Description of the differentiator (for example, Blueberry, Shower Fresh, Red, and so on).

difftype

String

This field will hold a value of the types of differentiators contained in this differentiator group, such as S - size, C - color, F - flavor, E - scent, P - pattern. Valid values are stored in the DIFF_TYPE table.

difftypedesc

String

Contains the description of the differentiator type. Contains the description of the differentiator type.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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.001Z",
      "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-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_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 is used by Omni Channel applications to get available inventory for store locations from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/inventory/omnichannel/inventory/store?since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&nodelevel={nodelevel}&nodeid={nodeId}
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

nodelevel

No

String

Node Level

Valid Value is STORE. If node level is provided, node ID should also be provided

nodeid

No

Number

Node ID

Should be a valid store number if nodelevel is defined as STORE.

offsetkey

No

String

Offset Key. Valid Value is combination of store ID and item in case of entire stores list being pulled or item in case a specific store ID is pulled.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT and DELETE.

item

String

This field contains the unique alphanumeric value that identifies the item.

location

Number

This field contains the numeric identifier of the location in which the item is to be found.

loctype

String

This field contains the Type of location in the location field.

availablequantity

Number

This field represents the available inventory of an item in a particular location.

stockonhand

Number

This field contains current stock on hand for the item.

standarduom

String

This field contains the Unit of measure in which stock of the item is tracked at a corporate level.

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 limit value. If the total rows are more than then limit defined, then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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%3A00%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%2C100000286&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 is used by Omni Channel applications to get available inventory for warehouse locations from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/inventory/omnichannel/inventory/warehouse?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

offsetkey

No

String

Offset Key. Valid Value is combination of store ID and item in case of entire warehouses list being pulled or item in case specific warehouse ID is pulled.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT and DELETE.

item

String

This field contains the unique alphanumeric value that identifies the item.

location

Number

This field contains the numeric identifier of the location in which the item is to be found.

loctype

String

This field contains the Type of location in the location field.

availablequantity

Number

This field represents the available inventory of an item in a particular location.

stockonhand

Number

This field contains current stock on hand for the item.

standarduom

String

This field contains the Unit of measure in which stock of the item is tracked at a corporate level.

physicalwarehouse

Number

This field contains the physical warehouse ID of the location field

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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.001Z",
            "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

Foundation

Business Overview

This service is used by Omni Channel applications to get all or location specific items and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/item?since={since}&before={before}}&nodelevel={nodelevel}&nodeid={nodeid}&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

nodelevel

No

String

Node Level.

Valid Value are STORE or WAREHOUSE.

nodeid

No

BigDecimal

Node ID. Valid Values are Valid stores present in the STORE table or Valid Warehouse from WH table.

offsetkey

No

String

Offset Key. Valid Value is an Item ID.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT and DELETE.

item

String

This field specifies a unique alphanumeric value that identifies the item.

itemLocation

Number

This field specifies location id associated with item if valid node level value is sent. If Node level is absent then it defaults to ‘ent’ that refers to Enterprise.

itemparent

String

This field specifies an alphanumeric value that uniquely identifies the item/group at the level above the item.

itemgrandparent

String

This field specifies an alphanumeric value that uniquely identifies the item/group two levels above the item.

itemlevel

Number

This field specifies a number indicating in which of the three levels the item resides. The item level determines whether the item stands alone or if it is part of a family of related items.

tranlevel

Number

This field specifies a number indicating in which of the three levels transactions occur for the items group. The transaction level is the level at which the items inventory is tracked in the system.

inventoryind

String

This field determines whether an item holds inventory or not for item transformations.

diff1level

String

This field specifies diff1 level.

diff1type

String

This field specifies diff1 type.

diff1

String

This field specifies a diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this field may be either a group or value. For an item that is not a parent, this field may contain a value.

diff2level

String

This field specifies diff2 level.

diff2type

String

This field specifies diff2 type.

diff2

String

This field specifies a diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this field may be either a group or value. For an item that is not a parent, this field may contain a value.

diff3level

String

This field specifies diff3 level.

diff3type

String

This field specifies diff3 type.

diff3

String

This field specifies a diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this field may be either a group or value. For an item that is not a parent, this field may contain a value.

division

Number

This field specifies a number that uniquely identifies the division of the company.

groupid

Number

This field specifies the group in which the department exists.

dept

Number

This field uniquely identifies the department

class

Number

This field uniquely identifies the class within the system.

uniqueclass

Number

This field uniquely identifies the department/class combination.

subclass

Number

This field uniquely identifies the subclass.

uniquesubclass

Number

This field uniquely identifies the department/class/subclass combination.

description

String

This field specifies the description of the item. For items that have parents, this description will default to the parents description plus any differentiators

localdescription

String

This field specifies local description of item.

brandname

String

This field specifies the brand associated to an item.

merchandiseind

String

Indicates whether the item is a merchandise item.

Merchandise items are generally physical items (things that must be shipped/received and of which there is an inventory).

Non-merchandise items are often items that do not have inventory. Common examples include extra fees for service (extended warranties, alterations) or endlessly available items (downloads, in-app purchases of bonus content, or subscriptions)

uintype

String

This field specifies a unique identification number (UIN) used to identify the instances of the item at the location.

mfgrecretail

Number

This field specifies manufacturers recommended retail price for the item. This field is stored in the primary currency.

orginalunitretail

Number

This field specifies retail price for the item.

catchweightind

String

This field specifies whether the item should be weighed when it arrives at a location.

itemservicelevel

String

This field specifies value that restricts the type of shipment methods that RCOM can select for an item.

giftwrapind

String

This field determines whether the location will support gift wrapping or not.

shipaloneind

String

This field indicates if the item should be shipped to the customer in a separate package versus being grouped together in a box.

standarduom

String

This field specifies the unit of measure in which stock of the item is tracked at a corporate level

productclassification

String

Field determines how to pack customer orders: such as to determine products that may not be able to be packaged together. Examples of classifications may include fragile, toxic, heavy, and son on.

xdiff1desc

String

Field specifies diff1 description

xdiff2desc

String

Field specifies diff2 description

Xdiff3desc

String

Field specifies diff3 description

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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 ",
            "localdescription": 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}
    ],
    "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&nodeid=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&nodeid=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

Foundation

Business Overview

This service is used by Omni Channel applications to get all or location specific item UPCs and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/item/upc?since={since}&before={before}&nodelevel={nodelevel}&nodeid={nodeid}&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

nodelevel

No

String

Node Level.

Valid Value are STORE or WAREHOUSE.

nodeid

No

BigDecimal

Node ID. Valid Values are Valid stores present in the STORE table or Valid Warehouse from the WH table.

offsetkey

No

String

Offset Key. Valid Value is an Item ID.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT and DELETE.

item

String

This field specifies unique alphanumeric value that identifies the item.

itemLocation

Number

This field specifies a location ID associated with the item if a valid node level value is sent. If Node level is absent then it defaults to ent which refers to enterprise.

itemparent

String

This field specifies an alphanumeric value that uniquely identifies the item/group at the level above the item.

itemgrandparent

String

This field specifies an alphanumeric value that uniquely identifies the item/group two levels above the item.

itemlevel

Number

This field specifies a number indicating in which of the three levels the item resides. The item level determines whether the item stands alone or if it is part of a family of related items.

tranlevel

Number

This field specifies a number indicating which of the three levels transactions occur for the items group. The transaction level is the level at which the items inventory is tracked in the system.

inventoryind

String

This field determines whether an item holds inventory or not for item transformations.

diff1level

String

This field specifies diff1 level.

diff1type

String

This field specifies diff1 type.

diff1

String

This field specifies a diff_group or a diff_id that differentiates the current item from its item_parent. For an item that is a parent, this field may be either a group or value. For an item that is not a parent, this field may contain a value.

diff2level

String

This field specifies diff2 level.

diff2type

String

This field specifies diff2 type.

diff2

String

This field specifies a diff_group or a diff_id that differentiates the current item from its item_parent. For an item that is a parent, this field may be either a group or value. For an item that is not a parent, this field may contain a value.

diff3level

String

This field specifies diff3 level.

diff3type

String

This field specifies diff3 type.

diff3

String

This field specifies a diff_group or a diff_id that differentiates the current item from its item_parent. For an item that is a parent, this field may be either a group or value. For an item that is not a parent, this field may contain a value.

division

Number

This field specifies a number that uniquely identifies the division of the company.

groupid

Number

This field specifies the group in which the department exists.

dept

Number

This field uniquely identifies the department

class

Number

This field uniquely identifies the class within the system.

uniqueclass

Number

This field uniquely identifies the department/class combination.

subclass

Number

This field uniquely identifies the subclass.

uniquesubclass

Number

This field uniquely identifies the department/class/subclass combination.

description

String

This field specifies the description of the item. For items that have parents, this description will default to the parent’s description plus any differentiators

localdescription

String

This field is populated as empty for a UPC Item.

brandname

String

This field specifies the brand associated with an item.

merchandiseind

String

Indicates whether the item is a merchandise item.

Merchandise items are generally physical items (things that must be shipped/received and of which there is an inventory).

Non merchandise items are often items that do not have inventory. Common examples include extra fees for service (extended warranties, alterations) or endlessly available items (downloads, in-app purchases of bonus content, subscriptions)

uintype

String

This field is populated as empty for a UPC Item.

mfgrecretail

Number

This field specifies the manufacturer’s recommended retail price for the item. This field is stored in the primary currency.

orginalunitretail

Number

This field specifies retail price for the item.

catchweightind

String

This field specifies whether the item should be weighed when it arrives at a location.

itemservicelevel

String

This field specifies a value that restricts the type of shipment methods that RCOM can select for an item.

giftwrapind

String

This field determines whether the location will support gift wrapping or not.

shipaloneind

String

This field indicates whether the item should be shipped to the customer in a separate package versus being grouped together in a box.

standarduom

String

This field specifies the unit of measure in which stock of the item is tracked at a corporate level

productclassification

String

This field determines how to pack customer orders: such as to determine products that may not be able to be packaged together. Examples of classifications may include fragile, toxic, heavy, and so on.

xdiff1desc

String

Field specifies diff1 description

xdiff2desc

String

Field specifies diff2 description

Xdiff3desc

String

Field specifies diff3 description

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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",
            "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 
       }
    ],
    "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&nodeid=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&nodeid=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

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

Foundation

Business Overview

This service is used by Omni Channel applications to get merchandise hierarchies and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/merchhier?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

offsetkey

No

String

Offset Key. Valid Value is combination of sort_order_seq and node ID.

limit

No

BigDecimal

Pagination limit. Default Value is 10000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT and DELETE.

nodeid

Number

This field contains the Merchandising Hierarchy ID.

hierarchylevel

String

This field contains the Merchandising Hierarchy Level.

nodename

String

This field contains the name of the Merchandising Hierarchy.

parentlevel

String

This field contains the Parent Merchandising Hierarchy Level.

parentnodeid

Number

This field contains the Parent Merchandising Hierarchy ID.

merchdisplayid

Number

This field contains the merchandising hierarchy display id.

buyer

String

This field contains the number of the buyer associated with the merchandising hierarchy.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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%3A00%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

Foundation

Business Overview

This ReST service will be used by Omni Channel Applications to retrieve Organization Hierarchy Descendants details. Org hierarchy descendants are used by Oracle Retail Xstore Point of Service to retrieve a complete branch of org hierarchy rooted at a specific node – for example, locations under a region.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/orghier/descendant?since={since}&before={before}&nodelevel={nodelevel}&nodeid={nodeid}&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

nodelevel

No

String

Node Level.

Valid Value are COMPANY,CHAIN, AREA, REGION, and DISTRICT.

nodeid

No

BigDecimal

Node ID. Valid Values are Company, Chain, Area, Region, and District present in respective tables.

offsetkey

No

String

Offset Key. Valid Value: levelorder.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT, DELETE, and NO_CHANGE.

hierarchylevel

String

This field specifies the Organization Hierarchy Level.

hierarchynodeid

Number

This field specifies the Organization Hierarchy ID.

hierarchynodename

String

This field specifies the name of the Organization Hierarchy ID.

parentlevel

String

This field specifies the Parent Organization Hierarchy Level.

parentid

Number

This field specifies the Parent Organization Hierarchy ID.

levelorder

Number

This column contains the hierarchy level of the Organization Hierarchy. Valid values : 1 - COMPANY, 10 - CHAIN, 20 - AREA, 30 - REGION, 40 - DISTRICT, 50 - STORE and 2000 - WAREHOUSE.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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

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

Foundation

Business Overview

This service is used by Omni Channel applications to get organizational hierarchies and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/orghier?since={since}&before={before}&nodelevel={nodelevel}&nodeid={nodeid}&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

nodelevel

No

String

Node Level.

Valid Value are COMPANY, CHAIN, AREA, REGION, DISTRICT, and STORE.

nodeid

No

BigDecimal

Node ID. Valid Values are Company, Chain, Area, Region, District, and Store IDs present in respective tables.

offsetkey

No

String

Offset Key. Contains combination of valid hierarchy level and a valid hierarchy node id separated by comma.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

Action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT, DELETE, and NO_CHANGE.

hierarchylevel

String

This field specifies the Organization Hierarchy Level.

hierarchynodeid

Number

This field specifies the Organization Hierarchy ID.

hierarchynodename

String

This field specifies the name of the Organization Hierarchy ID

parentlevel

String

This field specifies the Parent Organization Hierarchy Level.

parentid

Number

This field specifies the Parent Organization Hierarchy ID.

mgrname

String

This field specifies the name of the store manager.

stockholding

String

This column indicates whether the store can hold stock. In a non-multichannel environment this will always be Y. Value will be populated. This field holds value only for stores.

integratedpos

String

This field Indicates whether or not the POS system at the Store is integrated. This field holds value only for stores.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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&nodeid=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&nodeid=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

Inventory

Business Overview

This ReST service will be used by Omni Channel Applications to retrieve metadata related to individual Merch Integrations services. This service returns the timestamp when the data cache table was initially loaded or had a complete data refresh. A change in last refresh date for a service end point is an indication for the consuming system that high volume of data will be interfaced and the consumer can choose to use regular delta integration process or switch to flushing earlier interfaced data and load the data freshly.

Service Type

GET

ReST URL
/MerchIntegrations/services/omnichannel/refreshdate?entitytype={entitytype}
Input Parameters

Parameter Name Required Data Type Description

entitytype

No

String

Entity Type.

Merchandising Integration Rest Service name.

Output

Name Data Type Description

entity

String

This column contains the Merchandising Integration REST Service Name.

refresh_date

String

This column contains the Refresh date of the Merchandising Integration REST Service API.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 input:

" {
  "items": [
    {
      "entity": "COFutureAvail",
      "refreshdate": "2020-12-17T10:03:12.324664000-06: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-01T00%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

Foundation

Business Overview

This service is used by Omni Channel applications to get warehouses and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/location/warehouse?since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&nodelevel={nodelevel}&nodeid={nodeId}
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

nodelevel

No

String

Node Level

Valid Value is WAREHOUSE. If a node level is provided, a node ID should also be provided.

nodeid

No

Number

Node ID

Should be a valid store number if nodelevel is defined as WAREHOUSE.

offsetkey

No

String

Offset Key. Valid Value is warehouse id and ware house type.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT and DELETE.

warehouseid

Number

This field uniquely identifies the warehouse.

type

String

This field determine whether the warehouse is physical or virtual.

warehousename

String

This field specifies the name of the warehouse which, along with the warehouse number, identifies the warehouse.

whnamesecondary

String

This field specifies the Secondary name of the warehouse.

contactname

String

This field specifies the name of the contact at this location.

phonenumber

Number

This field specifies the phone number of the contact person at this location.

faxnumber

Number

This field specifies the fax number of the contact person at this location.

email

String

This field contains the email address for the location.

currencycode

String

This field specifies the currency code under which the warehouse operates.

physicalwh

String

This field specifies the number of the physical warehouse that are assigned to the virtual warehouse.

vatregion

Number

This field specifies a unique identifying number for the VAT region where this warehouse is located.

orghiertype

Number

Organization type that will be used in reporting purposes for the warehouse. The type comes from the organizational hierarchy.

orghiervalue

Number

This field specifies a code associated with the specific organizational hierarchy type.

orgentitytype

String

This field specifies whether the warehouse is a legal entity (Importer, Exporter) or a regular warehouse.

channelid

Number

This field specifies the channel to which the virtual warehouse will be assigned.

channelname

String

This field specifies the name of the channel for which the virtual warehouse will be assigned.

address1

String

This field specifies the first line of the address for this location.

address2

String

This field specifies the second line of the address for this location.

address3

String

This field specifies the third line of the address for this location.

city

String

This field specifies the name of the city associated with the address for this location.

State

String

This field specifies the state abbreviation for the address for this location.

Country

String

This field specifies the country where the address exists.

postalcode

String

This field specifies the zip code for the address.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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%3A00%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

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

Foundation

Business Overview

This service is used by Omni Channel applications to get related item details from Merchandising.

Service Types

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/item/relateditem?since={since}&before={before}&nodelevel={nodelevel}&nodeid={nodeid}&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

nodelevel

No

String

Node Level.

Valid Value is STORE.

nodeid

No

BigDecimal

Node ID. Valid Values are Valid stores present in the STORE table.

offsetkey

No

String

Offset Key. Valid Value are Combination of valid Relationship ID and a valid Related Item separated by comma. For example: relid, relitem

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

Action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT and DELETE.

relationshipid

String

This column contains unique identifier for each relationship header.

item

String

This column contains item for which the relationships are defined.

relationshiptype

String

This column describes the type of relationship. Values are configured in code_detail table under code_type IREL.

mandatoryind

String

This column indicates whether the relationship is mandatory.

relateditem

String

This column contains the item ID of the related item.

relateditemaction

String

Related Action for Item details. Valid Values are INSERT, UPDATE, UPSERT and DELETE.

startdate

String

This column contains the start date for a related item. Represents the date from which related item can be used on transactions.

enddate

String

This column contains the end date for a related item. Represents the date until which the related item can be used on transactions. A value of null means that it is effective forever.

priority

BigDecimal

This column contains priority which is applicable only in case of relationship type SUBS. In case of multiple related substitute items, this column could be used (optional) to define relative priority.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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%3A00%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%2C111051290&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

Foundation

Business Overview

This service is used by Omni Channel applications to get all or hierarchy level specific stores and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/location/retailstore?since={since}&before={before}&nodelevel={nodelevel}&nodeid={nodeid}&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

nodelevel

No

String

Node Level.

Valid Value are COMPANY, CHAIN, AREA, REGION, DISTRICT, and STORE.

nodeid

No

BigDecimal

Node ID. Valid Values are with respect to nodelevel parameter. These are IDs of a particular node level. For example: If node level is STORE then node is a valid Store ID.

offsetkey

No

String

Offset Key. Valid Value is Store ID.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT and DELETE.

address1

String

This field contains the first line of the store address.

address2

String

This field contains the second line of the store address.

address3

String

This field contains the third line of the store address.

city

String

This field contains the name of the city that is associated with the store address.

contactname

String

This field contains the name of the contact for the store at this address.

country

String

This field contains the country where the store address exists.

currencycode

String

This field contains the currency code under which the store operates.

email

String

This field contains the email address for the location.

integratedpos

String

This field indicates whether or not the POS system at the Store is integrated.

manager

String

This field contains the name of the store manager

phonenumber

String

This field contains the phone number for the store.

postalcode

String

This field contains the zip code for the store address.

sellingsqfeet

Number

This field contains the total square footage of the stores selling area.

state

String

This field contains the state abbreviation for the store address.

stockholding

String

This field indicates whether the store can hold stock. In a non-multichannel environment this will always be Y.

storeid

Number

This field contains the number that uniquely identifies the store.

storename

String

This field contains the name of the store which, along with the store number, identifies the store.

storename10

String

This field contains a ten-character abbreviation of the store name.

totalsqfeet

Number

This column contains the total square footage of the store.

vatregion

Number

This column contains the number of the Value Added Tax region in which this store is located.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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&nodeid=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&nodeid=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

Foundation

Business Overview

This ReST service will be used by Omni Channel Applications to retrieve Item Dimension Type Details. Dimension Systems are a structure in Oracle Retail Xstore Point of Service for items and supports up to three dimensions of style characteristics, such as color, size, and fabric. Dimension Types are the diff types associated with a style item in Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/item/dimensiontype?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

offsetkey

No

String

Offset Key. Valid Value are Combination of valid Item and a valid Location separated by comma. For example: item number, location number.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT, DELETE, and NO_CHANGE.

itemaction

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT, DELETE, and NO_CHANGE.

dimensionsystem

Number

This column contains the dimension system. This contains the item, item parent or the item grandparent depending on the item level.

dimension

String

This column contains the dimension. This is the differentiator type of the item.

description

String

This field contains the description of the dimension.

seq

String

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.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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.001Z",
      "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

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

Foundation

Business Overview

This ReST service will be used by Omni Channel Applications to retrieve Item Dimension Value Details. Dimension Systems are a structure in Oracle Retail Xstore Point of Service for items and supports up to three dimensions of style characteristics such as color, size, and fabric. Dimension Values are the diff values associated with each dimension within a dimension system (parent item).

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/item/dimensionvalue?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

offsetkey

No

String

Offset Key. Valid Value are Combination of valid Item and a valid Location separated by comma. For example: item number, location number.

Limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT, DELETE, and NO_CHANGE.

itemaction

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT, DELETE, and NO_CHANGE.

dimensionsystem

String

This column contains the dimension system. This contains the item, item parent or the item grandparent depending on the item level.

dimension

String

This column contains the dimension. This is the differentiator type of the item.

value

String

This column contains the code to uniquely identify a differentiator.

description

String

This field contains the description of the dimension.

displayseq

Number

This field contains the display sequence for the differentiator. This field is used to determine the order in which differentiators should be displayed for a differentiator group.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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.001Z",
      "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%2CBLACK_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

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 ReST service will be used by Omni Channel Applications to retrieve Future Inventory aggregated at an item level across customer orderable locations.

Service Type

GET

ReST URL
/MerchIntegrations/services/inventory/omnichannel/inventory/futureinventory?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

offsetkey

No

String

Offset Key. Valid Value is Item. For example: item

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT and DELETE.

item

String

This column contains a sellable and orderable transaction level item whose future inventory position is described. The item must be backorderable.

onorderquantity

String

This column represents the on-order quantity of an item.

receivedquantity

String

This column represents the received quantity of an item.

backorderquantity

String

This column represents the backorder quantity of an item.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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.

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

Functional Area

Business Overview

This service is used by Omni Channel applications to get item images and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/item/image?since={since}&before={before}&nodelevel={nodelevel}&nodeid={nodeid}&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

nodelevel

No

String

Node Level. Valid Value are STORE or WAREHOUSE.

nodeid

No

BigDecimal

Node ID. Valid Values are Valid stores present in the STORE table or a Valid Warehouse from the WH table. If anodelevel or nodeid is provided, the other should also be provided.

offsetkey

No

String

Offset Key. Valid Value are Combination of valid Item and a valid Image Name separated by comma. For example: item, imageName

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

Action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT and DELETE.

item

String

Unique alphanumeric value that identifies the item.

imagename

String

Description of the differentiator group (for example: Mens Shirt Sizes, Womens Shoe Sizes, Girls Dress Sizes, Shower Gel Scents, Yogurt Flavors, and so on).

imageaddr

String

This field contains the actual path where the file of the image of the item is stored.

imageuri

String

Image URI.

imagedesc

String

This field contains the description associated with the image of the item.

imagetype

String

This field contains the type of the image of the item. Valid values are defined as member of IITD code type.

primaryind

String

This field will indicate whether this record is the primary image of the item or not. Valid values are Y-Yes and N-No only. Default to N value if left blank or set as NULL.

displaypriority

BigDecimal

This field will specify the display sequence order of images associated with the item per priority.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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
    }
  ],
  "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.001Z",
      "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&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

MERCHAPI_BOOKMARK

Yes

Yes

Yes

Yes

ICL_RMS_ITEM_IMAGE

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

Foundation

Business Overview

This service is used by Omni Channel applications to get initial price details from Pricing.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/item/initialprice?since={since}&before={before}&nodelevel={nodelevel}&nodeid={nodeid}&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

nodelevel

No

String

Node Level. Valid Value are STORE or WAREHOUSE.

nodeid

No

BigDecimal

Node ID. Valid Values are Valid stores present in the STORE table or a Valid Warehouse from the WH table. If a nodelevel or nodeid is provided, the other parameter should also be provided.

offsetkey

No

String

Offset Key. Valid Value are Combination of valid Item and a valid Location separated by comma. For example: item number, location number.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT, DELETE, and NO_CHANGE.

loctype

String

This field specifies type of location in the location field. Valid values are S-Store, W-Warehouse.

location

Number

This field contains numeric identifier of the location in which the item is to be found. This field may contain a store, warehouse.

item

String

This field specifies a unique alphanumeric value that identifies the item.

pricetype

String

This field specifies Price Type. Valid Values are Initial.

price

Number

This field specifies the initial unit retail price in the standard unit of measure for the item/location combination. This field is stored in the local currency.

effective

String

This field specifies the Date on which the unit retail price became or will become active.

source

String

This field specifies the source of the initial unit retail price of each item.

eventid

String

This field specifies the ID of the event.

resetind

String

This field specifies the reset indicator.

clearanceind

String

This field Indicates whether the item is on clearance at the store.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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&since=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&offsetkey=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

Foundation

Business Overview

This ReST service will be used by Omni Channel Applications to retrieve Item Location Details. In a VAT environment, this service will also include the VAT details for the item/location. This service supports integration for specific location number or can be used to integrate all item/location combinations.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/item/itemlocation?since={since}&before={before}&nodelevel={nodelevel}&nodeid={nodeid}&offsetkey={offsetkey}&limit={limit}
Input Parameter

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

nodelevel

No

String

Node Level. Valid Value are STORE or WAREHOUSE.

nodeid

No

BigDecimal

Node ID. Valid Values are Valid stores present in the STORE table or a Valid Warehouse from the WH table.

offsetkey

No

String

Offset Key. Contains Combination of valid Item and a valid Location separated by comma. For example: item number, location number.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT, DELETE, and NO_CHANGE.

loctype

String

This field specifies type of location in the location field. Valid values are S-Store and W-Warehouse.

location

Number

This field contains a numeric identifier of the location in which the item is to be found. This field may contain a store, warehouse.

item

String

This field specifies a unique alphanumeric value that identifies the item

sellingunitretail

Number

This field specifies the unit retail price in the selling unit of measure for the item/location combination. This field is stored in the local currency.

sellinguom

String

This field specifies the selling unit of measure for an items single-unit retail.

taxableind

String

This field Indicates whether the item is taxable at the store.

localitemdesc

String

This field specifies the selling local description of the item. This field defaults to the item’s description but will be over-ridable. This value will be downloaded to the POS

status

String

This field specifies the Current status of item at the store.

qtykeyoptions

String

This field specifies whether the quantity 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

String

This field specifies the price can/should be entered manually on a POS for this item at the location.

foodstampind

String

This field specifies whether the item is approved for food stamps at the location. This value will be downloaded to the POS.

fixedtarevalue

String

This field holds the value associated with the packaging in items sold by weight at the location. Fixed tare is the tare of the packaging used to (that is, if the tare item is bulk candy, this is weight of the bag and twist tie). The only processing Merchandising does involving the fixed tare value is downloading it to the POS. Fixed tare is not subtracted from items sold by weight when sales are uploaded to Merchandising, and so on. This kind of processing is the responsibility of the client and should occur before sales are sent to any Oracle Retail application.

fixedtareuom

String

This field Holds the unit of measure value associated with the tare value. The only processing Merchandising does involving the fixed 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, and so on. This kind of processing is the responsibility of the client and should occur before sales are sent to any Oracle Retail application.

stopsaleind

String

This field specifies 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

String

This field will contain a value of Yes when the item can be returned to the location.

backorderind

String

This field will contain a value of Yes when the item can be back-ordered to the location.

merchandiseind

String

This field indicates whether the item is a merchandise item.

clearanceind

String

This field Indicates whether the item is on clearance at the store.

crosssell

String

This field Indicates whether a substitute item exists for the main item.

attacheditem

String

This field Indicates whether Cross/Up Sell items are attached to the main item.

vatcodes

String

This field contains VAT Code information for the item in a JSON array. This does not follow standard JSON structure due to backward compatibility and the quotes character is escaped by a backslash.

vatcodes JSON Output

Name Data Type Description

code

String

This field contains VAT code that is used to uniquely identify a VAT rate.

date

Date

This filed contains the date on which the VAT rate become active. Format: YYYY-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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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\"}]"
        }
    ],
    "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&nodeid=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&nodeid=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

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

REST Endpoint for Omnichannel/VAT

Endpoint
MerchIntegrations/services/foundation/omnichannel/vat
Functional Area

Foundation

Business Overview

This service is used by Omni Channel applications to get VAT and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/omnichannel/vat?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

offsetkey

No

String

Offset Key. Valid Value are Combination of valid VAT Region, valid VAT Code and a valid Active Date separated by comma. For example: vatregion, vatcode, activedate

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output

Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT and DELETE.

vatregion

BigDecimal

This column contains the unique identifying number for the VAT region in the system.

vatregionname

String

This column contains the name associated with the VAT region.

vatcode

String

This column field contains the alphanumeric identification for the VAT code. Valid values include: S - Standard, C - Composite, Z - Zero, E - Exempt. Other values may also be entered. These are the default VAT Rates that are set up upon installation of Merchandising.

vatcodedesc

String

This column contains a description identifying the VAT code.

activedate

String

This column contains the date on which the VAT rate becomes active.

vatrate

BigDecimal

This column contains the VAT rate associated with a given VAT code.

enddate

String

This column contains the date on which the VAT rate becomes inactive.

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 limit value. If the total rows are more than then limit defined then hasMore will be set to true; otherwise it will be set to 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, internally it tries to fetch 26 rows. If 26th row exists then 25 rows are returned along with a "next" link; otherwise no links will be 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 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%3A00%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%2C2019-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 ReSTful Web Services

Merchandising Common Services

This section describes the GA account validation service.

Functional Area

Foundation

Business Overview

The primary role of this service is to provide access to cross-functional Merchandising data.

Vdate

Business Overview

Retrieve Merchandising Vdate.

Service Type

Get

ReST URL

/Common/vDate

Input Parameters

NA

Output

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

Procurement Unit Options

Business Overview

Retrieve Merchandising's Procurement Unit Options.

Service Type

Get

ReST URL

/Common/POSysOps

Input Parameters

NA

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

Functional Config Options

Business Overview

Retrieve Merchandising's Functional Config Options.

Service Type

Get

ReST URL

/Common/FuncSysOps

Input Parameters

NA

Output

FunctionalConfigRDO

Parameter Name Data Type

importInd

String

orgUnitInd

String

supplierSitesInd

String

contractInd

String

elcInd

String

JSON 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

Inventory Movement Unit Options

Business Overview

Retrieve Merchandising's Inventory Movement Unit Options.

Service Type

Get

ReST URL

/Common/InvMovSysOps

Input Parameters

NA

Output

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

defaultSizeProfile

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

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

Currencies

Business Overview

Retrieve Merchandising's Currencies table records.

Service Type

Get

ReST URL

/Common/Currencies

Input Parameters

NA

Output

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

Department Search

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

PageSize

No

Maximum number of records to retrieve per page

PageNumber

No

Result page to retrieve

Output

MerchHierDeptRDO

Parameter Name Data Type

department

BigDecimal

departmentName

String

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

Department Load

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

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

Allocation Detail Service

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>

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

Get Next Allocation Number Service
Business Overview

This service retrieves the next allocation number from Merchandising.

Service Type

GET

ReST URL
/Alloc/allocNo
Input Payload Details

No input

Output
Parameter Name Data Type

allocNo

Long

JSON Structure:

{
  "allocNo": 1009403
}
Table Impact

N/A

Allocation Publish Services

Endpoint
MerchIntegrations/services/inventory/allocation
MerchIntegrations/services/inventory/allocation/{allocNo}
Functional Area

Inventory – Allocations

Business Overview

This service can be used by external applications to get all or selected allocations and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/inventory/allocation? 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

offsetkey

No

String

Offset Key. Valid Value is warehouse id and ware house type.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output
Name Data Type Description

action

String

Action for Allocation details. Valid Values are INSERT, UPDATE and DELETE.

allocNo

Number

This field specifies the number that uniquely identifies the allocation within the system.

docType

String

This field specifies type that is source for allocation.

physicalWarehouse

Number

This field specifies number that is used to identify physical warehouse for virtual warehouse.

warehouse

Number

This field specifies number which uniquely identifies the warehouse.

item

String

This field specifies unique alphanumeric value that identifies the item.

pickNotBeforeDate

String

This field specifies first date on which the allocation should be released from the warehouse for delivery to the store locations.

pickNotAfterDate

String

This field specifies last date on which the allocation should be released from the warehouse for delivery to the store locations.

orderType

String

This field specifies identifies 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_TYPE from the SYSTEM_OPTIONS table which can be AUTOMATIC, MANUAL or WAVE.

orderNo

Number

This field specifies order number to which the allocation applies.

orderDocType

String

This field specifies order type and defaulted to ‘P’.

priority

Number

This field specifies the priority of an allocation. This field is defaulted to 1.

ticketTypeId

String

This field uniquely identifies the ticket type which is associated with the item.

contextType

String

This field specifies functional area code to which the transfer relates to, for example, Promotions. Valid values are: PROM - Promotion.

contextValue

String

This field specifies value relating to the context type, for example, Promotion Number.

allocStatus

String

This field specifies status of the allocation.

createDateTime

String

This column holds the record creation date.

updateDateTime

String

This column holds the date when the record was last updated.

details

 

This list holds detail records for the allocation.

cacheTimestamp

String

This field specifies date and time when allocation record was last maintained.

Table 5-2 details

Name Data Type Description

physicaltoLocation

Number

This field specifies physical warehouse of virtual warehouse, provide to location is a warehouse.

toLocation

Number

This field specfies location to which the allocation is being sent.

locationType

String

This field specfies type of location in the location field. Valid values are Store and Warehouse.

storeType

String

This field specfies if the store is company or franchise store and not populated in case of warehouse.

stockholdingInd

String

This field specfies indicates whether the store can hold stock. In a non-multichannel environment, field is defaulted to Y.Not populated in case of warehouse.

quantityAllocated

Number

This column contains the total number of items allocated.

price

Number

This field specifies unit retail price in the selling unit retail.

sellingUom

String

This field specifies selling unit of measure for an item.

priority

Number

This field specifies the priority of an allocation details. This field is defaulted to 1.

storeOrderMultiple

String

This field contains the multiple in which the item needs to be shipped from a warehouse to the location.

inStoreDate

String

This field contains the date to be included in the publication to communication for warehouse.

rushFlag

String

This field contains rush flag indicator to be included in the publication to communication for warehouse.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

detailsTicket

 

This List holds attributes for details of allocation details ticket record.

Table 5-3 detailsTicket

Name Data Type Description

componentItem

String

This field specifies Alphanumeric value that identifies the component item within the pack.

componentPrice

Number

This field specifies unit retail price in the selling unit retail of the component item within the pack. 

componentSellingUom

String

This field specifies selling unit of measure for an component item within the pack.

Table 5-4 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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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",
      "allocNo": 5002,
      "docType": "A",
      "physicalWarehouse": 440,
      "warehouse": 441,
      "item": "100500002",
      "pickNotBeforeDate": "2022-02-16",
      "pickNotAfterDate": "2022-03-18",
      "orderType": "AUTOMATIC",
      "orderNo": null,
      "orderDocType": "P",
      "priority": 1,
      "ticketTypeId": null,
      "contextType": null,
      "contextValue": null,
      "allocStatus": "A",
      "createDateTime": "2022-02-16T19:06:31.000Z",
      "updateDateTime": "2022-02-16T19:06:31.000Z",
      "details": [
        {
          "physicaltoLocation": 8811,
          "toLocation": 8811,
          "locationType": "S",
          "storeType": "C",
          "stockholdingInd": "Y",
          "quantityAllocated": 1,
          "price": 12.22,
          "sellingUom": "EA",
          "priority": 1,
          "storeOrderMultiple": "E",
          "inStoreDate": "2022-02-17",
          "rushFlag": null,
          "createDateTime": "2022-02-16T19:06:31.000Z",
          "updateDateTime": "2022-02-16T19:06:31.000Z",
          "detailsTicket": null
        }
      ],
      "cacheTimestamp": "2022-04-06T11:36:30.809Z"
    },
    {
      "action": "INSERT",
      "allocNo": 5003,
      "docType": "A",
      "physicalWarehouse": 440,
      "warehouse": 441,
      "item": "100500002",
      "pickNotBeforeDate": "2022-02-16",
      "pickNotAfterDate": "2022-03-18",
      "orderType": "AUTOMATIC",
      "orderNo": null,
      "orderDocType": "P",
      "priority": 1,
      "ticketTypeId": null,
      "contextType": null,
      "contextValue": null,
      "allocStatus": "A",
      "createDateTime": "2022-02-16T19:27:43.000Z",
      "updateDateTime": "2022-02-16T19:27:43.000Z",
      "details": [
        {
          "physicaltoLocation": 1515,
          "toLocation": 1515,
          "locationType": "S",
          "storeType": "C",
          "stockholdingInd": "Y",
          "quantityAllocated": 1,
          "price": 12.22,
          "sellingUom": "EA",
          "priority": 1,
          "storeOrderMultiple": "E",
          "inStoreDate": "2022-02-17",
          "rushFlag": null,
          "createDateTime": "2022-02-16T19:27:43.000Z",
          "updateDateTime": "2022-02-16T19:27:43.000Z",
          "detailsTicket": null
        }
      ],
      "cacheTimestamp": "2022-04-06T11:36:31.628Z"
    }
  ],
  "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/allocation?limit=2&since=1970-01-01T00:00:00.001Z&before=2022-04-08T12:19:48.608912+00:00",
      "rel": "self"
    },
    {
      "href": "https://rex.retail.us-phoenix-1.ocs.oc-test.com/rgbu-rex-rgbu-stg83-mfcs/MerchIntegrations/services/inventory/allocation?offsetkey=5003&limit=2&since=1970-01-01T00:00:00.001Z&before=2022-04-08T12:19:48.608912+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_ALLOC

Yes

No

Yes

Yes

MERCHAPI_EXT_ALLOC

Yes

Yes

Yes

No

V_MERCHAPI_EXT_ALLOC_JSON

Yes

No

No

No

SYSTEM_OPTIONS

Yes

No

No

No

Background Process 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

NA

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

Book Transfer ReSTful Web Service

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

UpdateCustomerReservedQty

No

String

Indicates if any of the customer reserved quantity should be update either the source or destination location or both. Valid values:

  • B update both the source and destination location

  • S update only the source location

  • R update only the destination location

  • N or 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<failCobtsfRDO>

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_CONVERSION_RATES

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

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-5 Cancel - Object. See list of elements for detail

Element Name Required Data Type Description

items

No

Collection of Object

It's a referenced element. For detailed description, please refer referenced element doc.

Table 5-6 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.

fulfillOrderNo

Yes

String (48)

Unique number from OMS related to the fulfillment details. One or more fulfillment 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 fulfillment 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 fulfillment orders.

fulfillLocationType

No

String (1)

This would be either 'S' (for physical store) or 'V' (for virtual store).

fulfillLocation

Yes

Number (10)

Indicates the store or warehouse number associated with fulfilling 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 fulfillment cancellation detail.

Table 5-7 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 specific UPC is ordered. This is supported for vendor drop-ships orders only as we don't support transfer requests for a specific 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 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.

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"
  ]
}

Close Allocations

Functional Area

Inventory - Transfers and Allocations

Business Overview

This service allows an external application delete allocations from Merchandising. During an allocation header delete, on successfully validating the information in the message, the allocation header is updated to Closed (C) status.

Service Type

PUT

ReST URL
MerchIntegrations/services/inventory/allocations/close
Input Payload Details

Table 5-8 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-9 Items - Object. See list of elements for detail

Element Name Required Data Type Description

allocationNo

Yes

Number (10)

Contains the unique identifier 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 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.

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"
  ]
}

Code Detail Service

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

Create Allocations

Functional Area

Inventory - Transfers and Allocations

Business Overview

This service allows an external application to create allocations within Merchandising. The Oracle Retail Allocation Cloud Service does not use this API to interface allocations to Merchandising. 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.

Allocations only 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.

Service Type

POST

ReST URL
MerchIntegrations/services/inventory/allocations/create
Input Payload Details

Table 5-10 Create - 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-11 Items - Object. See list of elements for detail

Element Name Required Data Type Description

allocationNo

Yes

Number (10)

Contains the unique identifier of the allocation. This should fall within the range of Merchandising IDs already designated for allocations.

allocationDescription

Yes

String (300)

Contains the user defined 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.

releaseDate

No

date

Contains the earliest date on which the warehouse should ship the allocation.

originInd

No

String (6)

Indicates the source application that sends the allocation. Valid values are 'AIP' and 'EG'. It will be defaulted to 'EG' in Merchandising if not defined.

documentNo

No

String (30)

Contains identification number for a transfer, another allocation, bill of landing number (BOL), or advanced shipping notice (ASN) number for a purchase order. This field 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-12 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 modified, 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,
      "releaseDate": "2001-12-31",
      "originInd": "EG",
      "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 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.

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 allows an external application to create details for one or more allocations at a time within Merchandising by adding new locations to existing allocations.

Service Type

POST

ReST URL
MerchIntegrations/services/inventory/allocation/details/create
Input Payload Details

Table 5-13 Create - 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-14 Items - Object. See list of elements for detail

Element Name Required Data Type Description

allocationNo

Yes

Number (10)

Contains the unique identifier of the allocation. This should fall within the range of Merchandising IDs already designated for allocations.

allocationDescription

Yes

String (300)

Contains the user defined 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.

documentNo

No

String (30)

Contains identification number for a transfer, another allocation, bill of landing number (BOL), or advanced shipping notice (ASN) number for a purchase order. This field 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-15 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 modified, 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 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.

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 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-16 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

References a collection of appointments.

Table 5-17 Items - Object. See list of elements for detail

Element Name Required Data Type Description

location

Yes

Number (10)

This field contains the location where the merchandise has been sent.

appointmentNo

Yes

Number (9)

This field 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 - Modified Scheduled, AR - Arrived, AC - Closed.

details

No

Collection of Object

References a collection of appointment details.

Table 5-18 Details - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

This field contains the items shipped to the location.

unitQuantity

Yes

Number (12,4)

This field contains the quantity of the item slated to be sent to the location.

documentNo

Yes

Number (12)

This field contains the purchase order, transfer or allocation corresponding to the shipped merchandise.

documentType

Yes

String (1)

This field indicates the type of document corresponding to the shipped merchandise. Possible choices are Purchase Order (P), Transfer (T), or Allocation (A).

asnNo

No

String (30)

This field 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": 3,
          "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"
    }
  ]
}

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-19 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 field cannot be modified.

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 predefined on the DEPS table. This value cannot be modified.

customFlexAttribute

No

Collection of Object

References a collection of customer flexible attributes.

Table 5-20 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"
    }
  ]
}
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 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.

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
Input Payload Details

Create - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

A referenced element. For detailed description, please refer to the Items table.

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 predefined on the SUPS table. This can be a primary or non-primary supplier.

originCountry

Yes

String (3)

The identifier of the origin country of the item supplier to which the cost change will apply. This value must be predefined on the COUNTRIES table. This can be the primary or a non-primary country.

diffId

No

String (10)

The identifier 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 predefined on the DIFF_IDS table.

unitCost

Yes

Number (20,4)

The new unit cost of the item in the currency specified 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 field 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 predefined on the currencies table and must be the currency of the supplier.

hierarchyLevel

No

String (2)

The hierarchy level of the hierarchy value. This field 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 customer flexible attributes.

purchaseRate

No

Number (12,4)

This column contains the percentage of the retail price that determine the cost paid to the supplier for a consignment or concession item.

Details - Object. See list of elements for detail

Element Name Required Data Type Description

hierarchyValue

Yes

Number (10)

The ID of the specified hierarchy level that encompasses the locations affected by the cost change.

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 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"
  ]
}

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-21 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 CustOrdSubDesc objects.

Table 5-22 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.

fulfillOrderNo

Yes

String (48)

Unique number from OMS related to the fulfillment 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 line item number of the substituted-for item within the order.

Table 5-23 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 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"
  ]
}

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-24 Create - Object. See list of elements for detail

Element Name Required Data Type Description

dept

Yes

Number (4)

The number which uniquely identifies the department. This value cannot be modified.

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 predefined 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).

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 predefined on the MERCHANT table.

groupNo

Yes

Number (4)

The number of the group to which the department belongs. This value must be predefined 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.

profitCalcType

Yes

Number (1)

The number which indicates whether profit 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. This value 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 value is required if pricing is installed.

budgetedIntakePercent

No

Number (12,4)

The budgeted intake percentage. The percent of the total take that is income. If this field 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.

customFlexAttribute

No

Collection of Object

References a collection of customer flexible attributes.

upcharge

No

Collection of Object

References a collection of department upcharges.

Table 5-25 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 predefined on the VAT_REGION table.

vatCode

Yes

String (6)

The alphanumeric identifier of the VAT code. This value must be predefined 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-26 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-27 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 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 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-28 Details - Object. See list of elements for detail

Element Name Required Data Type Description

component

Yes

String (10)

This field contains the unique identifier of the Up Charge component.

componentRate

Yes

Number (20,4)

This field contains the rate to be charged against the cost of the Item/To Location combinations within the department.

perCount

No

Number (12,4)

This field contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies.

perCountUom

No

String (4)

This field contains the unit of measure in which the Per Count is specified.

upChargeGroup

Yes

String (6)

This field 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 field 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 defined 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"
        }
      ]
    }
  ]
}
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-29 Create - Object. See list of elements for detail

Element Name Required Data Type Description

dept

Yes

Number (4)

The number which uniquely identifies the department. This value cannot be modified.

vat

No

Collection of Object

References a collection of department VAT information.

Table 5-30 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 predefined on the VAT_REGION table.

vatCode

Yes

String (6)

The alphanumeric identifier of the VAT code. This value must be predefined 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"
    }
  ]
}
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 to-locations in the request payload. If no up-charge record is found, this message creates the up-charge 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-31 Create - Object. See list of elements for detail

Element Name Required Data Type Description

dept

Yes

Number (4)

The number which uniquely identifies the department. This value cannot be modified.

upcharge

No

Collection of Object

References a collection of department upcharges.

Table 5-32 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 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 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-33 Details - Object. See list of elements for detail

Element Name Required Data Type Description

component

Yes

String (10)

This field contains the unique identifier of the Up Charge component.

componentRate

Yes

Number (20,4)

This field contains the rate to be charged against the cost of the Item/To Location combinations within the department.

perCount

No

Number (12,4)

This field contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies.

perCountUom

No

String (4)

This field contains the unit of measure in which the Per Count is specified.

upChargeGroup

Yes

String (6)

This field 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 field 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 defined 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,
  "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": "Y",
          "transferAllocationDefaultInd": "Y",
          "computationValueBase": "C1",
          "costBasis": "S",
          "includeInTotalUpChargeInd": "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 Differentiators

Functional Area

Items - Differentiators

Business Overview

This service is used to create Differentiators in Merchandising from an external system. For successful creation of a new differentiator, this API 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. 

  • Verifies 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 the diff type is a valid value on the code detail table under code type DIFF

Service Type

POST

ReST URL
MerchIntegrations/services/item/differentiators/create
Input Payload Details

Create - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

It's a referenced element. For detailed description, please refer to the Items table.

Items - Object. See list of elements for detail

Element Name Required Data Type Description

diffId

Yes

String (10)

The unique identifier of the differentiator.

diffType

Yes

String (6)

The identifier of the differentiator type. This value must be predefined 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.

industrySubgroup

No

String (10)

The unique reference number representing 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 (for example, purple is defined 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, and so on).

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 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"
  ]
}

Create Differentiator Group Details

Functional Area

Items - Differentiators

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-34 Create - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

It's a referenced element. For detailed description, please refer referenced element doc.

Table 5-35 Items - Object. See list of elements for detail

Element Name Required Data Type Description

diffGroupId

Yes

String (10)

A unique differentiator group identifier.

details

No

Collection of Object

Description is not available.

Table 5-36 Details - Object. See list of elements for detail

Element Name Required Data Type Description

diffId

Yes

String (10)

The identifier 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 predefined 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 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.

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 - Differentiators

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

Create - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

References a collection of differentiator groups.

Items - Object. See list of elements for detail

Element Name Required Data Type Description

diffGroupId

Yes

String (10)

A unique differentiator group identifier.

diffType

Yes

String (6)

A differentiator type predefined in 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.

Details - Object. See list of elements for detail

Element Name Required Data Type Description

diffId

Yes

String (10)

The identifier 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 because a diff group needs at least one diff ID. Value must be predefined 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 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"
  ]
}

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-37 Create - Object. See list of elements for detail

Element Name Required Data Type Description

division

Yes

Number (4)

The unique identifier 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 predefined on the MERCHANT table.

buyer

No

Number (4)

The number of the buyer associated with the division. This value must be predefined on the BUYER table.

totalMarketAmount

No

Number (24,4)

The total market amount that is expected for the division. If this field 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"
    }
  ]
}

Create Franchise Orders

Functional Area

Franchise Management

Business Overview

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 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-38 Create - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

References a collection of franchise order creation details.

Table 5-39 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 field represents the currency of the order, which may or may not be different from the primary currency in the system. Valid values for this field are based on the currency codes held in the CURRENCIES table.

exchangeRate

No

Number (20,10)

This field 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 field represents any freight charges associated to the franchise order.

otherCharges

No

Number (20,4)

This field 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 field represents the address type for the default billing location. This field 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-40 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 field 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 field 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 field 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 field 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.

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.

fixedCost

No

Number (20,4)

This is a user defined 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-41 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 identified 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-42 CreateResponse - Object. See list of elements for detail

Element Name Required Data Type Description

items

No

Collection of Object

References a collection of franchise orders created.

Table 5-43 CreateResponse.Items - Object. See list of elements for detail

Element Name Required Data Type Description

franchiseOrder

Yes

Number (10)

This is the unique identifier 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

No

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 fixing the issue.

transactions

No

Collection of Object

References a collection of transfers or purchase orders created.

Table 5-44 Transactions - Object. See list of elements for detail

Element Name Required Data Type Description

customerLocation

Yes

Number (10)

This field holds a valid franchise location number.

sourceLocation

Yes

Number (10)

Contains the location id from where this item will be sourced from. The id will correspond to a company store, physical 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 field is populated, the source location should also be populated.

needDate

No

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

No

Number (12)

This contains the purchase order or transfer number created.

documentType

No

String (1)

This contains the document type generated. This can be P - Purchase Order or T - Transfer.

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. The element businessError will be 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"
  ]
}

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

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:

  • Due to data validation errors (e.g., invalid item).

  • 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:

  • Non-stockholding franchise stores cannot part of a fulfillment order, either as a sourcing location or as a fulfillment location.

  • 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.

  • 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.

  • 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-45 Create - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

It's a referenced element. For detailed description, please refer referenced element doc.

Table 5-46 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.

fulfillOrderNo

Yes

String (48)

Unique number from OMS related to the fulfillment details. One or more fulfillment 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 fulfillment 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 fulfillment orders.

fulfillLocationType

No

String (1)

This would be either 'S' (for physical store) or 'V' (for virtual store).

fulfillLocation

Yes

Number (10)

Indicates the store or warehouse number associated with fulfilling 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 fulfillment 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 specified 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. ).

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 fulfillment 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-47 CustomerDetails - Object. See list of elements for detail

Element Name Required Data Type Description

customerNo

No

String (14)

Indicates the number that uniquely identifies the customer in OMS.

deliverFirstName

No

String (120)

Contains the first name for the delivery address on the order.

deliverPhoneticFirst

No

String (120)

Contains the phonetic first 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.

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)

Identifies 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 first name for the billing address on the order.

billPhoneticFirst

No

String (120)

Contains the phonetic first 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)

Identifies 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-48 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 specific UPC is ordered. This is supported for vendor drop-ships orders only as we don't support transfer requests for a specific 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 Store Inventory Operations.

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 Fulfillment 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 Fulfillment 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": "johmscott@gmail.com"
      },
      "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-49 CreateResponse - Object. See list of elements for detail

Element Name Required Data Type Description

items

No

Collection of Object

It's a referenced element. For detailed description, please refer referenced element doc.

Table 5-50 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.

fulfillOrderNo

Yes

String (48)

Unique number from OMS related to the fulfillment details. One or more fulfillment orders could relate back to a single customer order in OMS.

confirmationType

Yes

String (1)

Contains the confirmation type. 'P' - Order Partially Created; 'X' - Order Could not be Created; 'C' - Order Completely Created.

confirmationNo

No

Number (12)

Contains the PO or Transfer number in RMS related to the fulfillment order line. Required if fulfillment status is 'P'.

details

No

Collection of Object

References a collection of customer order confirmation item details.

fulfillLocation

No

Number (10)

Contains the fulfillment location for the order.

systemCode

No

String (10)

The code identifying the system associated with the location.

Table 5-51 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.

referenceItem

No

String (25)

Indicates the reference item ordered by the customer. Used only if a specific UPC is ordered. This is supported for vendor drop-ships orders only as we don't support transfer requests for a specific reference item.

confirmedQuantity

Yes

Number (12,4)

Indicates the quantity of the item that can be sourced or fulfilled on the order.

confirmedQuantityUom

Yes

String (4)

Indicates the unit of measure of the confirmation quantity.

itemLineNo

No

Number (10)

Indicates the detail item line number on the order.

Sample Response Message

{
  "items": [
    {
      "customerOrderNo": "123123",
      "fulfillOrderNo": "123124",
      "confirmationType": "P",
      "confirmationNo": 9999999,
      "details": [
        {
          "item": "100100076",
          "referenceItem": "String",
          "confirmedQuantity": 3,
          "confirmedQuantityUom": "EA",
          "itemLineNo": 1
        }
      ],
      "fulfillLocation": 6000,
      "systemCode": "INV"
    }
  ]
}
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.

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 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 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

POST

ReST URL
MerchIntegrations/services/financials/generalLedger/chartOfAccounts/create
Input Payload Details

Table 5-52 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

References a collection of GL chart of accounts.

Table 5-53 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.

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 field. 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 field. 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 field. 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 field. 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 field. 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 field. 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 field. 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 field. Required if attribute8 is supplied and you are not using Oracle Financials 11.5.10 or greater.

description9

No

String (50)

Description of the attribute9 field. 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 field. 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 field. 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 field. 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 field. 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 field. 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 field. 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 Identifier.

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
    }
  ]
}
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 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-54 Create - Object. See list of elements for detail

Element Name Required Data Type Description

groupNo

Yes

Number (4)

The number which uniquely identifies the group. This field cannot be modified.

groupName

Yes

String (120)

Description is not available.

division

Yes

Number (4)

The identifier of the division of which the group is a member. This value must be predefined on the DIVISION table.

merchandiser

No

Number (4)

The number of the merchandiser associated to the group. This value must be predefined on the MERCHANT table.

buyer

No

Number (4)

The number of the buyer associated to the group. This value must be predefined 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"
    }
  ]
}

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.

  • 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

Table 5-55 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

References a collection of inventory adjustment details.

Table 5-56 Items - Object. See list of elements for detail

Element Name Required Data Type Description

location

Yes

Number (10)

This field contains the location where the inventory adjustment is being made.

details

Yes

Collection of Object

References a collection of items for which stock is being adjusted.

Table 5-57 Details - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

This contains the item for which stock is being adjusted. The item should be an approved inventory item.

adjustmentReasonCode

No

Number (4)

Contains the reason for inventory adjustment. This field will only have a value for saleable inventory types.

unitQuantity

Yes

Number (12,4)

This field contains the number of units to be added or reduced. The value should not be 0 and should be a whole number if the standard UOM of the item is EA.

fromDisposition

No

String (4)

Used to fetch the inv_status. Also used to determine if the adjustment quantity is negative or positive.

toDisposition

No

String (4)

Used to fetch the inv_status. Also used to determine if the adjustment quantity is negative or positive.

userId

Yes

String (30)

This field contains the name of the user who created the inventory adjustment.

createDate

Yes

date

This field contains the date and time the inventory adjustment was made.

poNo

No

String (12)

This field contains either a PO, Allocation, BOL or Transfer number associated to the inventory adjustment based on the doc_type. The value should exist in Merchandising.

documentType

No

String (1)

This field indicates the type of document where the inventory adjustment originated from. Valid values are: P - Purchase Order, T - Transfer and A - Allocation.

weight

No

Number (12,4)

This contains the weight of the item. Weight and Weight UOM should both have values or both should be NULL.

weightUom

No

String (4)

This is the unit of measurement for weight. Weight and Weight UOM should both have values, or both should be NULL. This value should belong to the uom_class, MASS.

unitCost

No

Number (20,4)

Contains the current unit cost of the item

Sample Input Message

{
  "collectionSize": 1,
  "items": [
    {
      "location": 6000,
      "details": [
        {
          "item": "100100076",
          "adjustmentReasonCode": 99,
          "unitQuantity": 3,
          "fromDisposition": null,
          "toDisposition": "ATS",
          "userId": "BOYLE",
          "createDate": "2001-12-31",
          "poNo": null,
          "documentType": null,
          "weight": 2.5,
          "weightUom": "KG",
          "unitCost": 9.65
        }
      ]
    }
  ]
}
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 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

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 must be updated.

Items - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

The item identifier. An item does not need to have an open purchase order to increase backorder quantity. Catchweight, Transformable, Consignment, Concession and Deposit container items are not supported for backorder requests.

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 must be updated. This field may contain a store or a physical warehouse.

channelId

No

Number (4)

Channel ID for the Physical Warehouse.

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 defined, 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 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"
  ]
}

Create Inventory Requests

Functional Area

Inventory

Business Overview

Merchandising receives requests for inventory using this service, which allows for items to be ordered by the store and fulfilled by the 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 a POs 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 to the case size if ordering from the supplier.

  • Upcharges will always be applied to a transfer, when they can be defaulted.

  • 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-58 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

References a collection of inventory request details.

Table 5-59 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)

Defines 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-60 Details - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

Unique alphanumeric value that identifies 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)

Specifies 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"
    }
  ]
}

Create Inventory Transfer Services

This section describes the inventory transfer services.

Functional Area

Inventory Movement

Business Overview

The primary role of these services is to create transfers and send them to Merchandising.

Transfer Number

Business Overview

Retrieves the next transfer number from Merchandising.

Service Type

Get

ReST URL

/Transfer/transferId

Input Parameters

No input

Output

…RDO

Parameter Name Data Type

transfer_no

Long

JSON Structure:
"{
    ""links"": [],
    ""transfer_no"": 100000029403,
    ""hyperMediaContent"": {
        ""linkRDO"": []
    }
}"

Table Impact

NA

Search Items

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}&fromLocation={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

TsfItemSearchRDO

Parameter Name Data Type

item

String

itemDesc

String

dept

BigDecimal

availQty

BigDecimal

averageCost

BigDecimal

unitRetail

BigDecimal

currencyCode

String

standardlUnitOfMeasure

String

suppPackSize

BigDecimal

innerPackSize

BigDecimal

itemImageUrl

String

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&pageNumber=3"",
            ""rel"": ""next"",
            ""type"": ""GET"",
            ""methodType"": null
        },
        {
            ""href"": ""/Transfer/item?itemSearchType=ITEM&searchString=Black&fromLocation=363640301&pageSize=1&pageNumber=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&pageNumber=3"",
                ""rel"": ""next"",
                ""type"": ""GET"",
                ""methodType"": null
            },
            {
                ""href"": ""/Transfer/item?itemSearchType=ITEM&searchString=Black&fromLocation=363640301&pageSize=1&pageNumber=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

JOB_AUDIT_PAYLOAD

No

Yes

No

No

Load 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 Paramters

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

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

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

Search From Location

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}&toLocation={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>

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

Search To Location

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}&fromLocation={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

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>

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

Load 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>

TsfLocitemSearchResRDO

Parameter Name Data Type

item

String

availQty

BigDecimal

averageCost

BigDecimal

unitRetail

BigDecimal

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

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

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

NA

Table Impact

For more information on the Merchandising XTSF API, see the Store Order Subscription API and Transfer Subscription API sections.

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 a 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-61 Create - Object. See list of elements for detail

Element Name Required Data Type Description

hierarchyValue

Yes

Number (10)

The ID of the specified 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 field 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 predefined 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 that identifies the currency under which the hierarchy value operates. This value must be predefined 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"
    }
  ]
}

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.

Service Type

POST

ReST URL
MerchIntegrations/services/financials/terms/paymentTerm/create
Input Payload Details

Create - Object. See list of elements for detail

Element Name Required Data Type Description

terms

No

String (15)

Unique ID for this payment term.

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.

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 identifier 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.

fixedDate

No

date

Fixed due date.

enabledFlag

Yes

String (1)

Indicates whether the Payment terms are valid or invalid within the respective application. The value would be either Yes or No.

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",
  "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)

Sample Response Message

{
  "status": "SUCCESS"
}
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"
    }
  ]
}

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.

Service Type

POST

ReST URL
MerchIntegrations/services/financials/terms/paymentTerm/detail/create
Input Payload Details

Table 5-62 Create - Object. See list of elements for detail

Element Name Required Data Type Description

terms

No

String (15)

Unique id for this payment term.

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-63 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 identifier 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.

fixedDate

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",
  "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)

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 Placeholder Items

Functional Area

Items

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-64 Create - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

It's a collection of Items record. Refer to items details

Table 5-65 Items - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

The unique identifier of the main item on the message.

itemParent

No

String (25)

The item at the level above this item. This value must be predefined 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

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 field may hold a differentiator group id.

dept

Yes

Number (4)

The number of the department to which this item belongs. This value must be predefined on the DEPS table. It cannot be modified.

class

Yes

Number (4)

The number of the class to which the item belongs. This value must be predefined on the CLASS table. It cannot be modified.

subclass

Yes

Number (4)

The number of the subclass to which the item belongs. This value must be predefined on the SUBCLASS table. It cannot be modified.

itemDescription

Yes

String (250)

The long description of the item.

itemSuppliers

Yes

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-66 ItemSuppliers - Object. See list of elements for detail

Element Name Required Data Type Description

supplier

Yes

Number (10)

The identifier of the supplier who sources the item. This value must be predefined on the SUPS table.

Table 5-67 ItemUdas - Object. See list of elements for detail

Element Name Required Data Type Description

udaId

Yes

Number (5)

This field contains a number identifying the User-Defined Attribute of type List of Value

udaValue

No

String (30)

This field contains value of the Used Defined 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 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"
  ]
}

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.

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-68 Create - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

 

Table 5-69 Items - Object. See list of elements for detail

Element Name Required Data Type Description

orderNo

Yes

Number (12)

The unique identifier for the order.

approvedBy

No

String (30)

Indicates where the order was approved. It will be the user ID of the person approving the order.

dataLoadingDestination

No

String (6)

This field indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defined, 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-70 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 field 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 field cannot be modified.

unitCost

No

Number (20,4)

The cost of the item from the supplier in the order's currency. This can be modified 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 specified 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 field. If the item field is not populated this field is required. A ref item/location may be added to the order in worksheet or approved status.

originCountry

No

String (3)

The identifier of the country from which the item is being sourced. This field cannot be modified.

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.

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 field contains the quantity that was left to be ordered when the line item was cancelled.

cancelCode

No

String (1)

This field contains the reason that the line item was cancelled. This field 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 customer flexible attributes for the order/location.

Table 5-71 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-72 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 field 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 customer flexible attributes for ordsku.

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 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.

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-73 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

References a collection of order expenses.

Table 5-74 Items - Object. See list of elements for detail

Element Name Required Data Type Description

orderNo

Yes

Number (12)

The unique identifier for the order.

supplier

No

Number (10)

The identifier of the supplier from which the order will be sourced. This cannot be modified 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 field can be modified 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 modified in worksheet or approved status.

notBeforeDate

No

date

The first date that delivery will be accepted. This can be modified in worksheet or approved status.

notAfterDate

No

date

The last date that delivery will be accepted. This can be modified in worksheet or approved status.

otbEowDate

No

date

The end of week date of the OTB bucket used. This can be modified in worksheet or approved status.

dept

No

Number (4)

The department in which are all the items on the order. This field is required if the system enforces single department ordering. This cannot be modified 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 modified in worksheet or approved status. Valid values are Y and N.

writtenDate

No

date

The date the order was created. If this field is not populated on the message it will default to the time of creation in RMS. It cannot be modified.

origin

No

String (1)

Indicates where the order originated. Valid values include: 2 - Manual, 6 - Inventory Planning generated order, 7 , 8.

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 field 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 (30)

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 field indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defined, the default is STG.

masterOrderNo

No

Number (10)

This field indicates the master order number from which child records were created.

ladingPort

No

String (5)

This field indicates the port from which the items on the purchase order are shipped.

dischargePort

No

String (5)

This field indicates the port at which the items on the purchase order will enter the country of import.

factory

No

String (10)

This field indicates the factory at which the items on the purchase order are made.

agent

No

String (10)

This field indicates the agent that is used in the purchase of the items on the purchase order.

shipMethod

No

String (6)

This field 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 field indicates Partner 1 Type.

partner1

No

String (10)

This field indicates the Additional Partner 1.

partnerType2

No

String (6)

This field indicates Partner 2 Type.

partner2

No

String (10)

This field indicates the Additional Partner 2.

partnerType3

No

String (6)

This field indicates Partner 3 Type.

partner3

No

String (10)

This field indicates the Additional Partner 3.

importCountry

No

String (3)

The identifier of the country into which the items on the order are being imported.

purchaseType

No

String (6)

This field 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 field indicates how the purchase order will be paid. Valid options are LC (Letter of Credit), WT (Wire Transfer) and OA (Open Account).

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 field 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.

buyer

No

Number (4)

Contains the number associated with the buyer for the order.

location

No

Number (10)

This field 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 field contains the type of location in the location field. 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 field 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 field 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 - Defined by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller.

transportationResponsibilityType

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 specific freight rates. This field 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 field 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 identifies 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 field 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 customer flexible attributes at the order header level.

expenses

No

Collection of Object

References the expense associated with a particular item/location of the purchase order.

Table 5-75 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-76 Expenses - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

This field contains alphanumeric value that uniquely identifies the item.

packItem

No

String (25)

This field contains alphanumeric value that uniquely identifies the pack.

location

Yes

Number (10)

This field contains the location that item will be ordered to. This field may contain a store or a warehouse.

locationType

Yes

String (1)

This field contains the type of location in the location field. Valid values are: S - Store W - Warehouse.

component

Yes

String (10)

This field contains a user specified code representing a specific expense found on the ELC_COMP table.

computationValueBase

No

String (10)

This field contains contains a code representing the base value for calculating the expense.

calculationBasis

No

String (1)

This field 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 field is EXCB.

componentRate

Yes

Number (20,4)

This field contains the rate to be charged against the calculation base of the component (either value or specific).

componentCurrency

Yes

String (3)

This field 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 field contains the exchange rate of the individual expense.

perCount

No

Number (12,4)

This field contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defined as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10.

perCountUom

No

String (4)

This field contains the unit of measure in which the Per Count is specified. When creating an expense that is defined 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 field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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 flag is used to indicate if the value of the cost component should be included in total duty.

nominationFlag3

Yes

String (1)

This field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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_flag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_flag_2 is used to indicate the status of a component in duty calculation nom_flag_4 is used to indicate the status of a component in ELC calculation nom_flag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 flags can not be used for any other purposes if ALC is turned on.

inAlc

Yes

String (1)

See description for nom_flag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_flag_2 is used to indicate the status of a component in duty calculation nom_flag_4 is used to indicate the status of a component in ELC calculation nom_flag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 flags 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 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/create
Input Payload Details

Table 5-77 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

References a collection of order HTS records.

Table 5-78 Items - Object. See list of elements for detail

Element Name Required Data Type Description

orderNo

Yes

Number (12)

The unique identifier for the order.

supplier

No

Number (10)

The identifier of the supplier from which the order will be sourced. This cannot be modified 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 field can be modified 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 modified in worksheet or approved status.

notBeforeDate

No

date

The first date that delivery will be accepted. This can be modified in worksheet or approved status.

notAfterDate

No

date

The last date that delivery will be accepted. This can be modified in worksheet or approved status.

otbEowDate

No

date

The end of week date of the OTB bucket used. This can be modified in worksheet or approved status.

dept

No

Number (4)

The department in which are all the items on the order. This field is required if the system enforces single department ordering. This cannot be modified 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 modified in worksheet or approved status. Valid values are Y and N.

writtenDate

No

date

The date the order was created. If this field is not populated on the message it will default to the time of creation in RMS. It cannot be modified.

origin

No

String (1)

Indicates where the order originated. Valid values include: 2 - Manual, 6 - Inventory Planning generated order, 7 , 8.

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 field 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 (30)

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 field indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defined, the default is STG.

masterOrderNo

No

Number (10)

This field indicates the master order number from which child records were created.

ladingPort

No

String (5)

This field indicates the port from which the items on the purchase order are shipped.

dischargePort

No

String (5)

This field indicates the port at which the items on the purchase order will enter the country of import.

factory

No

String (10)

This field indicates the factory at which the items on the purchase order are made.

agent

No

String (10)

This field indicates the agent that is used in the purchase of the items on the purchase order.

shipMethod

No

String (6)

This field 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 field indicates Partner 1 Type.

partner1

No

String (10)

This field indicates the Additional Partner 1.

partnerType2

No

String (6)

This field indicates Partner 2 Type.

partner2

No

String (10)

This field indicates the Additional Partner 2.

partnerType3

No

String (6)

This field indicates Partner 3 Type.

partner3

No

String (10)

This field indicates the Additional Partner 3.

importCountry

No

String (3)

The identifier of the country into which the items on the order are being imported.

purchaseType

No

String (6)

This field 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 field indicates how the purchase order will be paid. Valid options are LC (Letter of Credit), WT (Wire Transfer) and OA (Open Account).

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 field 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.

buyer

No

Number (4)

Contains the number associated with the buyer for the order.

location

No

Number (10)

This field 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 field contains the type of location in the location field. 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 field 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 field 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 - Defined by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller.

transportationResponsibilityType

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 specific freight rates. This field 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 field 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 identifies 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 field 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 customer flexible attributes at the order header level.

hts

No

Collection of Object

References the HTS code associated with a particular item of the purchase order.

Table 5-79 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-80 Hts - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

This field contains an unique alphanumeric value that identifies the item.

packItem

No

String (25)

This field contains alphanumeric value that uniquely identifies the pack.

hts

Yes

String (25)

This field contains an identifier for the Harmonized Tariff Schedule code.

status

Yes

String (1)

This field contains a flag to indicate the status of the Purchase Order/Item/HTS relationship. Valid values are (W)orksheet and (A)pproved.

originCountry

Yes

String (3)

This field 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 field 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-81 Assessments - Object. See list of elements for detail

Element Name Required Data Type Description

component

Yes

String (10)

This field contains a user specified code representing the specific assessment component found on the ELC_COMP table.

computationValueBase

No

String (10)

This field contains contains a code representing the base value for calculating the assessment.

componentRate

Yes

Number (20,4)

This field contains the rate to be charged against the calculation base. This field will hold a percentage value if the Calculation Basis of the Component is Value or a monetary amount in the currency defined for the assessment (usually the import countrys currency) if the Calculation Basis is Specific.

perCount

No

Number (12,4)

This field contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defined as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10.

perCountUom

No

String (4)

This field contains the unit of measure in which the Per Count is specified. When creating an expense that is defined 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 field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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 flag is used to indicate if the value of the cost component should be included in total duty.

nominationFlag3

Yes

String (1)

This field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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 flag is used to indicate if the value of the cost component should be included in total expenses.

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"
    }
  ]
}

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-82 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

References a collection of order HTS assessment records.

Table 5-83 Items - Object. See list of elements for detail

Element Name Required Data Type Description

orderNo

Yes

Number (12)

The unique identifier for the order.

supplier

No

Number (10)

The identifier of the supplier from which the order will be sourced. This cannot be modified 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 field can be modified 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 modified in worksheet or approved status.

notBeforeDate

No

date

The first date that delivery will be accepted. This can be modified in worksheet or approved status.

notAfterDate

No

date

The last date that delivery will be accepted. This can be modified in worksheet or approved status.

otbEowDate

No

date

The end of week date of the OTB bucket used. This can be modified in worksheet or approved status.

dept

No

Number (4)

The department in which are all the items on the order. This field is required if the system enforces single department ordering. This cannot be modified 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 modified in worksheet or approved status. Valid values are Y and N.

writtenDate

No

date

The date the order was created. If this field is not populated on the message it will default to the time of creation in RMS. It cannot be modified.

origin

No

String (1)

Indicates where the order originated. Valid values include: 2 - Manual, 6 - Inventory Planning generated order, 7 , 8.

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 field 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 (30)

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 field indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defined, the default is STG.

masterOrderNo

No

Number (10)

This field indicates the master order number from which child records were created.

ladingPort

No

String (5)

This field indicates the port from which the items on the purchase order are shipped.

dischargePort

No

String (5)

This field indicates the port at which the items on the purchase order will enter the country of import.

factory

No

String (10)

This field indicates the factory at which the items on the purchase order are made.

agent

No

String (10)

This field indicates the agent that is used in the purchase of the items on the purchase order.

shipMethod

No

String (6)

This field 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 field indicates Partner 1 Type.

partner1

No

String (10)

This field indicates the Additional Partner 1.

partnerType2

No

String (6)

This field indicates Partner 2 Type.

partner2

No

String (10)

This field indicates the Additional Partner 2.

partnerType3

No

String (6)

This field indicates Partner 3 Type.

partner3

No

String (10)

This field indicates the Additional Partner 3.

importCountry

No

String (3)

The identifier of the country into which the items on the order are being imported.

purchaseType

No

String (6)

This field 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 field indicates how the purchase order will be paid. Valid options are LC (Letter of Credit), WT (Wire Transfer) and OA (Open Account).

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 field 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.

buyer

No

Number (4)

Contains the number associated with the buyer for the order.

location

No

Number (10)

This field 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 field contains the type of location in the location field. 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 field 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 field 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 - Defined by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller.

transportationResponsibilityType

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 specific freight rates. This field 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 field 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 identifies 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 field 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 customer flexible attributes at the order header level.

hts

No

Collection of Object

References the HTS code associated with a particular item of the purchase order.

Table 5-84 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-85 Hts - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

This field contains an unique alphanumeric value that identifies the item.

packItem

No

String (25)

This field contains alphanumeric value that uniquely identifies the pack.

hts

Yes

String (25)

This field contains an identifier for the Harmonized Tariff Schedule code.

status

Yes

String (1)

This field contains a flag to indicate the status of the Purchase Order/Item/HTS relationship. Valid values are (W)orksheet and (A)pproved.

originCountry

Yes

String (3)

This field 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 field 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-86 Assessments - Object. See list of elements for detail

Element Name Required Data Type Description

component

Yes

String (10)

This field contains a user specified code representing the specific assessment component found on the ELC_COMP table.

computationValueBase

No

String (10)

This field contains contains a code representing the base value for calculating the assessment.

componentRate

Yes

Number (20,4)

This field contains the rate to be charged against the calculation base. This field will hold a percentage value if the Calculation Basis of the Component is Value or a monetary amount in the currency defined for the assessment (usually the import countrys currency) if the Calculation Basis is Specific.

perCount

No

Number (12,4)

This field contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defined as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10.

perCountUom

No

String (4)

This field contains the unit of measure in which the Per Count is specified. When creating an expense that is defined 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 field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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 flag is used to indicate if the value of the cost component should be included in total duty.

nominationFlag3

Yes

String (1)

This field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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 flag is used to indicate if the value of the cost component should be included in total expenses.

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"
    }
  ]
}

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-87 Create - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

Collection of orders.

Table 5-88 Items - Object. See list of elements for detail

Element Name Required Data Type Description

orderNo

Yes

Number (12)

The unique identifier for the order.

supplier

No

Number (10)

The identifier of the supplier from which the order will be sourced. This cannot be modified 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 field can be modified 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 modified in worksheet or approved status.

notBeforeDate

No

date

The first date that delivery will be accepted. This can be modified in worksheet or approved status.

notAfterDate

No

date

The last date that delivery will be accepted. This can be modified in worksheet or approved status.

otbEowDate

No

date

The end of week date of the OTB bucket used. This can be modified in worksheet or approved status.

dept

No

Number (4)

The department in which are all the items on the order. This field is required if the system enforces single department ordering. This cannot be modified 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 field can be modified 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 modified in worksheet or approved status. Valid values are Y and N.

writtenDate

No

date

The date the order was created. If this field is not populated on the message it will default to the time of creation in RMS. It cannot be modified.

origin

No

String (1)

Indicates where the order originated. Valid values include: 2 - Manual, 6 - Inventory Planning generated order, 7 , 8.

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 field 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 (30)

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 field indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defined, the default is STG.

masterOrderNo

No

Number (10)

This field indicates the master order number from which child records were created.

ladingPort

No

String (5)

This field indicates the port from which the items on the purchase order are shipped.

dischargePort

No

String (5)

This field indicates the port at which the items on the purchase order will enter the country of import.

factory

No

String (10)

This field indicates the factory at which the items on the purchase order are made.

agent

No

String (10)

This field indicates the agent that is used in the purchase of the items on the purchase order.

shipMethod

No

String (6)

This field 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 field indicates Partner 1 Type.

partner1

No

String (10)

This field indicates the Additional Partner 1.

partnerType2

No

String (6)

This field indicates Partner 2 Type.

partner2

No

String (10)

This field indicates the Additional Partner 2.

partnerType3

No

String (6)

This field indicates Partner 3 Type.

partner3

No

String (10)

This field indicates the Additional Partner 3.

importCountry

No

String (3)

The identifier of the country into which the items on the order are being imported.

purchaseType

No

String (6)

This field 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 field indicates how the purchase order will be paid. Valid options are LC (Letter of Credit), WT (Wire Transfer) and OA (Open Account).

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 field 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.

buyer

No

Number (4)

Contains the number associated with the buyer for the order.

location

No

Number (10)

This field 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 field contains the type of location in the location field. 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 field 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 field 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 - Defined by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller.

transportationResponsibilityType

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 specific freight rates. This field 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 field 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 identifies 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 field 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 customer flexible attributes at the order header level.

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-89 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 field 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 field cannot be modified.

unitCost

No

Number (20,4)

The cost of the item from the supplier in the order's currency. This can be modified 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 specified 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 field. If the item field is not populated this field is required. A ref item/location may be added to the order in worksheet or approved status.

originCountry

No

String (3)

The identifier of the country from which the item is being sourced. This field cannot be modified.

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.

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 field contains the quantity that was left to be ordered when the line item was cancelled.

cancelCode

No

String (1)

This field contains the reason that the line item was cancelled. This field 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 customer flexible attributes for the order/location.

Table 5-90 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-91 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 field 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 customer flexible attributes for ordsku.

Table 5-92 LetterOfCredit - Object. See list of elements for detail

Element Name Required Data Type Description

lcReferenceId

No

Number (8)

This field contains the ID of the LC to which the order is attached.

lcGroupId

No

String (10)

This field 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 field contains the ID of the applicant being used for the LC process.

beneficiary

Yes

Number (10)

This field contains the ID of the beneficiary being used for the LC process.

merchandiseDescription

Yes

String (2000)

This field holds a description of the merchandise on the order.

transshipmentInd

Yes

String (1)

This field 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 field 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 field indicates whether or not the order has been attached to a Letter of Credit. Valid values are Y and N.

Table 5-93 Expenses - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

This field contains alphanumeric value that uniquely identifies the item.

packItem

No

String (25)

This field contains alphanumeric value that uniquely identifies the pack.

location

Yes

Number (10)

This field contains the location that item will be ordered to. This field may contain a store or a warehouse.

locationType

Yes

String (1)

This field contains the type of location in the location field. Valid values are: S - Store W - Warehouse.

component

Yes

String (10)

This field contains a user specified code representing a specific expense found on the ELC_COMP table.

computationValueBase

No

String (10)

This field contains contains a code representing the base value for calculating the expense.

calculationBasis

No

String (1)

This field 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 field is EXCB.

componentRate

Yes

Number (20,4)

This field contains the rate to be charged against the calculation base of the component (either value or specific).

componentCurrency

Yes

String (3)

This field 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 field contains the exchange rate of the individual expense.

perCount

No

Number (12,4)

This field contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defined as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10.

perCountUom

No

String (4)

This field contains the unit of measure in which the Per Count is specified. When creating an expense that is defined 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 field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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_flag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_flag_2 is used to indicate the status of a component in duty calculation nom_flag_4 is used to indicate the status of a component in ELC calculation nom_flag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 flags can not be used for any other purposes if ALC is turned on.

nominationFlag3

Yes

String (1)

This field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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_flag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_flag_2 is used to indicate the status of a component in duty calculation nom_flag_4 is used to indicate the status of a component in ELC calculation nom_flag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 flags can not be used for any other purposes if ALC is turned on.

inAlc

Yes

String (1)

See description for nom_flag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_flag_2 is used to indicate the status of a component in duty calculation nom_flag_4 is used to indicate the status of a component in ELC calculation nom_flag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 flags can not be used for any other purposes if ALC is turned on.

Table 5-94 Hts - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

This field contains an unique alphanumeric value that identifies the item.

packItem

No

String (25)

This field contains alphanumeric value that uniquely identifies the pack.

hts

Yes

String (25)

This field contains an identifier for the Harmonized Tariff Schedule code.

status

Yes

String (1)

This field contains a flag to indicate the status of the Purchase Order/Item/HTS relationship. Valid values are (W)orksheet and (A)pproved.

originCountry

Yes

String (3)

This field 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 field 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-95 Assessments - Object. See list of elements for detail

Element Name Required Data Type Description

component

Yes

String (10)

This field contains a user specified code representing the specific assessment component found on the ELC_COMP table.

computationValueBase

No

String (10)

This field contains contains a code representing the base value for calculating the assessment.

componentRate

Yes

Number (20,4)

This field contains the rate to be charged against the calculation base. This field will hold a percentage value if the Calculation Basis of the Component is Value or a monetary amount in the currency defined for the assessment (usually the import countrys currency) if the Calculation Basis is Specific.

perCount

No

Number (12,4)

This field contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defined as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10.

perCountUom

No

String (4)

This field contains the unit of measure in which the Per Count is specified. When creating an expense that is defined 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 field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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_flag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_flag_2 is used to indicate the status of a component in duty calculation nom_flag_4 is used to indicate the status of a component in ELC calculation nom_flag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 flags can not be used for any other purposes if ALC is turned on.

nominationFlag3

Yes

String (1)

This field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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_flag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_flag_2 is used to indicate the status of a component in duty calculation nom_flag_4 is used to indicate the status of a component in ELC calculation nom_flag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 flags can not be used for any other purposes if ALC is turned on.

inAlc

Yes

String (1)

See description for nom_flag_1. If ALC is turned on (i. e. system_options. import_ind = Y), nom_flag_2 is used to indicate the status of a component in duty calculation nom_flag_4 is used to indicate the status of a component in ELC calculation nom_flag_5 is used to indicate the status of a component in ALC calculation i. e. these 3 flags 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",
      "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 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 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 may be used to associate 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-96 Create - Object. See list of elements for detail

Element Name Required Data Type Description

hierarchyValue

Yes

Number (10)

The ID of the specified 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.

hierarchyLevel

Yes

String (2)

The hierarchy level of the hierarchy value. This field 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 predefined on either the CHAIN, AREA or REGION table.

traits

Yes

Collection of Object

References a collection of traits.

Table 5-97 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 predefined 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"
    }
  ]
}

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-98 Create - Object. See list of elements for detail

Element Name Required Data Type Description

subclass

Yes

Number (4)

The unique number which identifies the subclass. This value cannot be modified.

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 predefined on the CLASS table. This value cannot be modified.

dept

Yes

Number (4)

The number of the department which contains the subclass. This value must be predefined on the DEPS table. This value cannot be modified.

intercompanyTransferPriceBasis

No

String (6)

This specifies 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) for subclasses under departments with cost-based profit calculation type. Valid value is 'R'(Retail Based) for subclasses under departments with retail-based profit calculation type. If not defined, the value will default to 'W' and 'R' respectively.

customFlexAttribute

No

Collection of Object

References a collection of customer flexible attributes.

Table 5-99 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"
    }
  ]
}
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 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 API 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 AIP. 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 API regardless of type. Store inventory availability is never validated by this API 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 API. 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 API, 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.

Service Type

POST

Administrative (AD)
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 API:

  • 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 API 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 API:

  • 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)
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 API:

  • 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 API 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 API 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 API

  • 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 API

  • 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

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 API 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.

Service Type

POST

ReST URL
MerchIntegrations/services/inventory/transfers/create
Input Payload Details

Table 5-100 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-101 Items - Object. See list of elements for detail

Element Name Required Data Type Description

transferNo

Yes

Number (12)

Number that uniquely identifies 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.

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 configured as needed for your business. Examples are Federal Express (1), UPS (2) and mail (3).

transferType

No

String (6)

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).

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 field 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). Two-legged transfer can not be created for context types Promotion, Customer Transfer and Store Requisition. For the context type Repairing only external finisher can be selected. Note: context type Repairing (REPAIR) has specific logic tied to it and must be associated with a return to warehouse or a transfer using an external finisher.

contextValue

No

String (25)

This field holds the value relating to the context type like Promotion number.

customFlexAttribute

No

Collection of Object

References a collection of customer flexible attributes. Child node.

Table 5-102 Details - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

The unique identifier 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.

adjustmentType

No

String (6)

This field, 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 specified. 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 specified. This must always be a positive amount.

Table 5-103 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",
      "department": null,
      "routingCode": null,
      "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 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.

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 Suppliers

Functional Area

Foundation - Suppliers

Business Overview

This service is used for creation of suppliers, supplier sites, 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. 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

When creating supplier sites, you must provide both supplier parent and supplier site information. 

Mandatory addresses as defined in the system are defaulted when creating address records even if the request does not contain the mandatory address types.

Service Type

POST

ReST URL
MerchIntegrations/services/foundation/suppliers/create
Input Payload Details

Table 5-104 Create - 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-105 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 used in the external financial system. It is populated by the integration that brings suppliers from external financial systems into Merchandising. This ID and the supplier site 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 field as null for a system generated supplier ID.

attributes

Yes

Record

This contains supplier parent information.

supplierSites

No

Collection of Object

References a collection of supplier sites.

Table 5-106 Attributes - Object. See list of elements for detail

Element Name Required Data Type Description

supplierName

Yes

String (240)

This field contains the supplier name.

supplierNameSecondary

No

String (240)

This type can hold secondary name for the supplier with a max length of 240 characters.

contactName

No

String (120)

This field contains the name of the supplier representative contact for this site.

contactPhone

No

String (20)

This field contains a telephone number for the supplier's representative contact.

contactFax

No

String (20)

This field contains a fax number for the supplier's representative contact.

contactPager

No

String (20)

This field contains a pager number for the supplier's representative contact.

supplierStatus

Yes

String (1)

This field contains the status of the supplier. 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.

qualityControlInd

No

String (1)

This field determines whether orders from this supplier will require quality control. Valid values are Yes (Y) and No (N).

qualityControlPercentage

No

Number (12,4)

This field contains the percentage of items per receipt that will be marked for quality checking.

qualityControlFrequency

No

String (2)

This field contains the frequency for which items per receipt will be marked for quality checking.

vendorCheckingInd

No

String (1)

This field determines whether orders from this supplier will require vendor control. Valid values are Yes (Y) and No (N).

vendorCheckingPercentage

No

Number (12,4)

This field contains percentage of items per receipt that will be marked for vendor checking.

vendorCheckingFrequency

No

Number (2)

This field contains the frequency for which items per receipt that will be marked for vendor checking.

currencyCode

Yes

String (3)

This field contains code identifying the currency the supplier site uses for business transactions.

language

Yes

Number (6)

This field contains the supplierss preferred language. This field is provided for custom purchase orders in a specified language.

terms

Yes

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.

freightTerms

Yes

String (30)

This field contains code indicating what freight terms will default when an order is created for the supplier site.

returnAllowedInd

No

String (1)

This field indicates whether the supplier site will accept returns. Valid values are Yes (Y) or No (N).

returnAuthReqInd

No

String (1)

This field indicates if returns must be accompanied by an authorization number when sent back to the vendor. Valid values are Yes (Y) and No (N).

minReturnValue

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 contains the name of the courier that should be used for 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 indicates whether purchase orders will be sent to the supplier via Electronic Data Interchange (EDI). Valid values are Yes (Y) and No (N).

ediOrderChangeInd

No

String (1)

This field indicates whether purchase order changes will be sent to the supplier via EDI. Valid values are Yes (Y) and No (N).

ediOrderConfirmInd

No

String (1)

This field indicates whether acknowledgements of purchase orders will be sent from the supplier via EDI. Valid values are Yes (Y) and No (N).

ediAsnInd

No

String (1)

This field indicates whether the supplier will send Advance Shipment Notifications electronically. Valid values are Yes (Y) and No (N).

ediSalesReportFreq

No

String (1)

This field contains the EDI sales report frequency for the supplier. Valid values are weekly (W) or daily (D).

ediSupplierAvailabilityInd

No

String (1)

This field indicates whether the supplier will send availability via EDI. Valid values are Yes (Y) and No (N).

ediContractInd

No

String (1)

Indicates whether contracts will be sent to the supplier via EDI. Valid values are Yes (Y) and No (N).

ediInvcInd

No

String (1)

This field indicates whether invoices, debit memos, and credit note requests will be sent to/from the supplier via EDI. Valid values are Yes (Y) and No (N).

ediChannel

No

Number (4)

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. This field 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 flow. 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).

costChangeVariancePercentage

No

Number (12,4)

This field 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 field 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.

replenApprovalInd

No

String (1)

This field indicates whether contract orders created via replenishment should be created in Approved status. Valid values are Yes (Y) and No (N).

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 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 field indicates the default method for how purchase orders for this site will be paid. Valid options are 'LC' - Letter of Credit, 'WT' - Wire Transfer and 'OA' - Open Account

contactTelex

No

String (20)

This field contains the telex number of the partner or suppliers representative contact.

contactEmail

No

String (100)

This field contains the email address of the partner or suppliers representative contact.

settlementCode

No

String (1)

This field indicates which payment process method is used for this supplier.

preMarkInd

No

String (1)

This field indicates whether or not the supplier has agreed to break an order into separate boxes (and mark them) that can be shipped directly to the stores. Valid values are Yes (Y) and No (N).

autoApproveInvoiceInd

No

String (1)

Indicates whether or not the suppliers invoice matches can be automatically approved for payment. This field will only be populated if invoice matching is installed. Valid values are Yes (Y) and No (N).

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. Valid values are Yes (Y) and No (N).

autoApproveDebitMemoInd

No

String (1)

This field indicates whether debit memos sent to the supplier site can be automatically approved on creation. Valid values are Yes (Y) and No (N).

prepayInvoiceInd

No

String (1)

This field indicates whether all invoices for the supplier can be pre-paid. Valid values are Yes (Y) and No (N).

backorderInd

No

String (1)

This field indicates if backorders or partial shipments will be accepted. Valid values are Yes (Y) and No (N).

vatRegion

No

Number (4)

This field contains the unique identifying number for the VAT region applicable for this site.

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), or supplier/department/location (A). If no value is provided, then if the department level orders system option is set to Yes, then this is defaulted to supplier/department, otherwise it is defaulted to supplier.

servicePerfReqInd

No

String (1)

This field indicates if the supplier's services must be confirmed as performed before paying an invoice from that supplier site. Valid values are Yes (Y) and No (N).

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).

deliveryPolicy

No

String (6)

This field contains the default delivery policy of the supplier site. Valid values come from the DLVY (Delivery Policy) code type. Examples of delivery policies are Next Valid Delivery Day (NDD), Next Day (NEXT) and Bank Instructions (BI).

comments

No

String (2000)

This field contains any miscellaneous comments associated with the supplier.

defaultItemLeadTime

No

Number (4)

This field 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.

bracketCostingInd

No

String (1)

This field will determine if the supplier site supports bracket costing pricing structures. Valid values are Yes (Y) and No (N).

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. Valid values are Y and N. Valid values are Yes (Y) and No (N).

scaleAipOrders

No

String (1)

Depending upon the value in this column, scaling is done for Inventory Planning orders. Default value is N. Valid values are Yes (Y) and No (N).

supplierQuantityLevel

No

String (6)

This field indicates the supplier site order quantity level. Valid values are cases (CA) or eaches (EA).

customFlexAttribute

No

Collection of Object

References a collection of customer flexible attributes.

dealUploadStatus

No

String (6)

Indicates the status in which the deal needs to be uploaded into the system by upload batch process. The valid values are 'W'orksheet, 'S'ubmitted, 'A'pproved.

taxId

No

String (20)

This field contains the unique tax identification number of the supplier site.

Table 5-107 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-108 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 used in the external financial system. It is populated by the integration that brings suppliers from external financial systems into Merchandising. This ID and the supplier site 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 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 field 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-109 OrgUnit - Object. See list of elements for detail

Element Name Required Data Type Description

orgUnitId

Yes

Number (15)

This field contains org_unit_id.

primaryPaySite

No

String (1)

This field contains the primary pay site indicator.

Table 5-110 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-111 Address.Address - Object. See list of elements for detail

Element Name Required Data Type Description

addressType

Yes

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 flagged as mandatory and are not included when the supplier 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 first 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 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

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 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.

customFlexAttribute

No

Collection of Object

References a collection of customer flexible attributes.

Sample Input Message

{
  "items": [
    {
      "supplierReferenceNo": "1",
      "supplier": 3026,
      "attributes": {
        "supplierName": "Prime Hardware",
        "supplierNameSecondary": "Prime Hardware 2",
        "contactName": "Alexandre Roma",
        "contactPhone": "234-112-7654",
        "contactFax": "234-112-7654",
        "contactPager": null,
        "supplierStatus": "A",
        "qualityControlInd": "Y",
        "qualityControlPercentage": 3,
        "qualityControlFrequency": "5",
        "vendorCheckingInd": "Y",
        "vendorCheckingPercentage": 3,
        "vendorCheckingFrequency": 2,
        "currencyCode": "USD",
        "language": 1,
        "terms": "108",
        "freightTerms": "03",
        "returnAllowedInd": "Y",
        "returnAuthReqInd": "N",
        "minReturnValue": 3.55,
        "returnCourier": "125",
        "handlingPercentage": 3,
        "ediOrderInd": "Y",
        "ediOrderChangeInd": "Y",
        "ediOrderConfirmInd": "Y",
        "ediAsnInd": "Y",
        "ediSalesReportFreq": "W",
        "ediSupplierAvailabilityInd": "Y",
        "ediContractInd": "Y",
        "ediInvcInd": "Y",
        "ediChannel": 2,
        "costChangeVariancePercentage": 9.65,
        "costChangeVarianceAmt": 9.65,
        "replenApprovalInd": "Y",
        "shipMethod": "30",
        "paymentMethod": "OA",
        "contactTelex": "234-112-7654",
        "contactEmail": "a_roma@primehardware.com",
        "settlementCode": "N",
        "preMarkInd": "Y",
        "autoApproveInvoiceInd": "Y",
        "debitMemoCode": "N",
        "freightChargeInd": "Y",
        "autoApproveDebitMemoInd": "Y",
        "prepayInvoiceInd": "Y",
        "backorderInd": "Y",
        "vatRegion": 1000,
        "invManagementLevel": "S",
        "servicePerfReqInd": "Y",
        "invoicePayLocation": "S",
        "invoiceReceiveLocation": "C",
        "invoiceGrossNet": "G",
        "deliveryPolicy": "NEXT",
        "comments": null,
        "defaultItemLeadTime": 7,
        "dunsNumber": "108890",
        "dunsLocation": "1055",
        "bracketCostingInd": "Y",
        "vmiOrderStatus": null,
        "dsdSupplierInd": "Y",
        "scaleAipOrders": "N",
        "supplierQuantityLevel": "EA",
        "customFlexAttribute": [
          {
            "name": "REVIEW_DATE",
            "value": null,
            "valueDate": "2001-12-31"
          }
        ],
        "dealUploadStatus": "W",
        "taxId": null
      },
      "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",
            "qualityControlInd": "Y",
            "qualityControlPercentage": 3,
            "qualityControlFrequency": "5",
            "vendorCheckingInd": "Y",
            "vendorCheckingPercentage": 3,
            "vendorCheckingFrequency": 2,
            "currencyCode": "USD",
            "language": 1,
            "terms": "108",
            "freightTerms": "03",
            "returnAllowedInd": "Y",
            "returnAuthReqInd": "N",
            "minReturnValue": 3.55,
            "returnCourier": "125",
            "handlingPercentage": 3,
            "ediOrderInd": "Y",
            "ediOrderChangeInd": "Y",
            "ediOrderConfirmInd": "Y",
            "ediAsnInd": "Y",
            "ediSalesReportFreq": "W",
            "ediSupplierAvailabilityInd": "Y",
            "ediContractInd": "Y",
            "ediInvcInd": "Y",
            "ediChannel": 2,
            "costChangeVariancePercentage": 9.65,
            "costChangeVarianceAmt": 9.65,
            "replenApprovalInd": "Y",
            "shipMethod": "30",
            "paymentMethod": "OA",
            "contactTelex": "234-112-7654",
            "contactEmail": "a_roma@primehardware.com",
            "settlementCode": "N",
            "preMarkInd": "Y",
            "autoApproveInvoiceInd": "Y",
            "debitMemoCode": "N",
            "freightChargeInd": "Y",
            "autoApproveDebitMemoInd": "Y",
            "prepayInvoiceInd": "Y",
            "backorderInd": "Y",
            "vatRegion": 1000,
            "invManagementLevel": "S",
            "servicePerfReqInd": "Y",
            "invoicePayLocation": "S",
            "invoiceReceiveLocation": "C",
            "invoiceGrossNet": "G",
            "deliveryPolicy": "NEXT",
            "comments": null,
            "defaultItemLeadTime": 7,
            "dunsNumber": "108890",
            "dunsLocation": "1055",
            "bracketCostingInd": "Y",
            "vmiOrderStatus": null,
            "dsdSupplierInd": "Y",
            "scaleAipOrders": "N",
            "supplierQuantityLevel": "EA",
            "customFlexAttribute": [
              {
                "name": "REVIEW_DATE",
                "value": null,
                "valueDate": "2001-12-31"
              }
            ],
            "dealUploadStatus": "W",
            "taxId": null
          },
          "orgUnit": [
            {
              "orgUnitId": 1111111111,
              "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"
                  }
                ]
              }
            }
          ]
        }
      ]
    }
  ]
}
Response Code: 200 (Success)

Table 5-112 CreateResponse - Object. See list of elements for detail

Element Name Required Data Type Description

items

No

Collection of Object

References a collection of suppliers created.

Table 5-113 CreateResponse.Items - Object. See list of elements for detail

Element Name Required Data Type Description

supplierReferenceNo

Yes

String (32)

This field holds the ID for the supplier used in the external financial system. It is populated by the integration that brings suppliers from external financial systems into Merchandising. This ID and the supplier site ID can be used to join to information about the supplier in the external system.

supplier

Yes

Number (10)

This contains the supplier ID created in the system.

supplierSites

No

Collection of Object

References a collection of supplier sites created.

Table 5-114 CreateResponse.Items.SupplierSites - Object. See list of elements for detail

Element Name Required Data Type Description

supplierSiteReferenceNo

Yes

String (32)

This field holds the ID for the supplier site used in the external financial system. It is populated by the integration that brings suppliers from external financial systems into Merchandising. This ID and the supplier site ID can be used to join to information about the supplier in the external system.

supplierSite

Yes

Number (10)

Unique identifying number for a supplier within the system.

address

Yes

Collection of Object

References a collection of supplier addresses created.

Table 5-115 CreateResponse.Items.SupplierSites.Address - Object. See list of elements for detail

Element Name Required Data Type Description

addressReferenceKey

Yes

String (32)

This column contains the external reference ID used to distinguish between different addresses.

addressKey

Yes

Number (11)

This column contains a unique number used to distinguish between different addresses.

Sample Response Message

{
  "items": [
    {
      "supplierReferenceNo": "1",
      "supplier": 2400,
      "supplierSites": [
        {
          "supplierSiteReferenceNo": "2",
          "supplierSite": 3026001,
          "address": [
            {
              "addressReferenceKey": null,
              "addressKey": 33445
            }
          ]
        }
      ]
    }
  ]
}
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.

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 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.

Service Type

POST

ReST URL
MerchIntegrations/services/inventory/transfer/details/create
Input Payload Details

Table 5-116 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-117 Items - Object. See list of elements for detail

Element Name Required Data Type Description

transferNo

Yes

Number (12)

Number that uniquely identifies 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-118 Details - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

The unique identifier 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.

adjustmentType

No

String (6)

This field, 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 specified. 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 specified. 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 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.

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"
  ]
}

Currency Rates Service

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

NA

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

Data Privacy Access Service

This section describes the Data Privacy Access service for Merchandising.

Business Overview

This query service provides access to data stored in Merchandising that contain personally identifiable information.

Service Type

GET

ReSTURL

https://<host:port>/RetailAppsDataPrivServicesRESTApp/rest/privatedata/getPersonalInfo?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)

Entity Type

Used if the entity name is PARTNER or OUTLOC. The value here should indicate the type of partner or outside 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

Entity ID

The ID of the entity being queried. For example, the supplier ID.

Full Name

The full name to be searched for the selected entity.

Phone

The phone number to be searched for the selected entity.

Email

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 (e.g. buyer), then it will not be used as part of the search. The following data is included in the response:

Parameter Description

Entity Name

Valid values are:

  • BUYER (Buyer)

  • MERCHANT (Merchant)

  • STORE (Store)

  • WAREHOUSE (Warehouse)

  • SUPPLIER (Supplier)

  • PARTNER (Partner)

  • OUTLOC (Outside Location)

  • ORDER CUSTOMER (Merchandising Customer)

Entity Type

If the entity name is PARTNER or OUTLOC, the value here indicates the type of partner or outside 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

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.

Fax

The fax number associated with the entity.

Telex

The telex number associated with the entity.

Pager

The pager number associated with the entity.

Email

The email address associated with the entity.

Sample Response
{
    "Personal Information": {
        "list": [],
            "Get Personal Information": {
                "list": [            
                   [
                        {
                            "ENTITY_NAME": "BUYER",
                            "ENTITY_TYPE": "null",
                            "ENTITY_ID": "1002",
                            "FULL_NAME": "Matt Wilsman",
                            "PHONE": "6125251034",
                            "FAX": "6125259800",
                            "TELEX": "null",
                            "PAGER": "null",
                            "EMAIL": "null"
                        }
                    ]
                ]
            }
        }
    }
}
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 jsonFormat

  • 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

Data Privacy Forget Service

This section describes the Data Privacy Forget service for Merchandising.

Business Overview

This service supports updating personal information stored in Merchandising. 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

ReSTURL

https://<host:port>/RetailAppsDataPrivServicesRESTApp/rest/privatedata/updatePersonalInfo?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

Entity Name

(required)

The group type for which data is to be updated. 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)

Entity Type

Required if the entity name is PARTNER or OUTLOC. 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

Entity ID

(required)

The ID of the entity to be updated. For example, the supplier ID.

Full Name

The value to update the full name with. If the value is null and this is a required field in the entity, 'XXXXX' will 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, 'XXXXX' will 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.

Email

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 jsonFormat

  • 500 - Internal Server Errors - for all other types of errors (e.g. config errors, sql errors, etc).

Success Payloads

N/A

Delete Allocation Details

Functional Area

Inventory - Transfers and Allocations

Business Overview

This service allows an external application to remove details from one or more allocations at a time in Merchandising. The detail records are validated and deleted from the allocation on receipt of a detail delete message.

Service Type

DELETE

ReST URL
MerchIntegrations/services/inventory/allocation/details/delete
Input Payload Details

Table 5-119 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-120 Items - Object. See list of elements for detail

Element Name Required Data Type Description

allocationNo

Yes

Number (10)

Contains the unique identifier 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-121 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 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.

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 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
Element Name Required Data Type Description

collectionSize

Yes

Number (4)

Number of items in the collection.

items

No

Collection of Object

References a collection of appointments.

Table 5-122 Items - Object. See list of elements for detail

Element Name Required Data Type Description

appointmentNo

Yes

Number (9)

This field contains the unique number generated by warehouse while creating an appointment.

location

Yes

Number (10)

This field 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 Detail

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/appointments/detail/delete
Input Payload Details

Table 5-123 Delete - Object. See list of elements for detail

Element Name Required Data Type Description

appointmentNo

Yes

Number (9)

This field contains the unique number generated by warehouse while creating an appointment.

location

Yes

String (10)

This field contains the location where the merchandise has been sent.

details

No

Collection of Object

References a collection of appointment details.

Table 5-124 Details - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

This field contains the items shipped to the location.

orderNo

Yes

String (12)

This field contains the purchase order, transfer or allocation corresponding to the shipped merchandise.

asnNo

No

String (30)

This field 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

{
  "appointmentNo": 200911,
  "location": "2",
  "details": [
    {
      "item": "101200001",
      "orderNo": "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"
    }
  ]
}

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-125 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"
    }
  ]
}

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-126 Delete - Object. See list of elements for detail

Element Name Required Data Type Description

dept

Yes

Number (4)

The number which uniquely identifies 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-127 Delete - Object. See list of elements for detail

Element Name Required Data Type Description

dept

Yes

Number (4)

The number which uniquely identifies the department.

upcharge

No

Collection of Object

References a collection of department upcharge information.

Table 5-128 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 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 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-129 Details - Object. See list of elements for detail

Element Name Required Data Type Description

component

No

String (10)

This field contains the unique identifier of the Up Charge component.

Sample Input Message

{
  "dept": 3041,
  "upcharge": [
    {
      "fromLocation": "1121",
      "toLocation": "1311",
      "fromLocationType": "S",
      "toLocationType": "S",
      "details": [
        {
          "component": "UC1"
        }
      ]
    }
  ]
}
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 Differentiator Group Details

Functional Area

Items - Differentiators

Business Overview

This service is used to delete existing Differentiator Groups details from Merchandising. For successful deletion, validation is performed to ensure that the Diff ID is associated with the Differentiator Group.

Service Type

DELETE

ReST URL
MerchIntegrations/services/item/differentiator/group/details/delete
Input Payload Details

Table 5-130 Delete - Object. See list of elements for detail

Element Name Required Data Type Description

items

No

Collection of Object

It's a referenced element. For detailed description, please refer referenced element doc.

Table 5-131 Items - Object. See list of elements for detail

Element Name Required Data Type Description

diffGroupId

Yes

String (10)

A unique differentiator group identifier.

details

No

Collection of Object

Description is not available.

Table 5-132 Details - Object. See list of elements for detail

Element Name Required Data Type Description

diffId

Yes

String (10)

The identifier of the differentiator contained within the differentiator group. This id must be unique within the diff group. Value must be predefined 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 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.

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 Object

References a collection of differentiator groups.

Items - Object. See list of elements for detail

Element Name Required Data Type Description

diffGroupId

Yes

String (10)

A unique differentiator group identifier.

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"
  ]
}

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 Object

It's a referenced element. For detailed description, please refer to the Items table.

Items - Object. See list of elements for detail

Element Name Required Data Type Description

diffId

Yes

String (10)

The unique identifier 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"
  ]
}

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-133 Delete - Object. See list of elements for detail

Element Name Required Data Type Description

division

Yes

Number (4)

The unique identifier 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"
    }
  ]
}

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-134 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"
    }
  ]
}

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-135 Delete - Object. See list of elements for detail

Element Name Required Data Type Description

hierarchyValue

Yes

Number (10)

The ID of the specified 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 field 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"
    }
  ]
}

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-136 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

No

Collection of Object

References a collection of orders.

Table 5-137 Items - Object. See list of elements for detail

Element Name Required Data Type Description

orderNo

Yes

Number (12)

The unique identifier for the order.

dataLoadingDestination

No

String (6)

This field indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defined, 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 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-138 Delete - Object. See list of elements for detail

Element Name Required Data Type Description

items

No

Collection of Object

 

Table 5-139 Items - Object. See list of elements for detail

Element Name Required Data Type Description

orderNo

Yes

Number (12)

The unique identifier for the order.

dataLoadingDestination

No

String (6)

This field indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defined, the default is STG.

details

No

Collection of Object

This references the order detail node.

Table 5-140 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 field. If the item field is not populated this field 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 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.

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-141 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

No

Collection of Object

References a collection of order expenses.

Table 5-142 Items - Object. See list of elements for detail

Element Name Required Data Type Description

orderNo

Yes

Number (12)

The unique identifier for the order.

dataLoadingDestination

No

String (6)

This field indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defined, the default is STG.

expenses

No

Collection of Object

References the expense associated with a particular item/location of the purchase order.

Table 5-143 Expenses - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

Unique alphanumeric value that identifies the item.

packItem

No

String (25)

Alphanumeric value that uniquely identifies the pack.

location

Yes

Number (10)

This field contains the location that the item was ordered to.

component

Yes

String (10)

This field 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. The element businessError will be 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"
  ]
}

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-144 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

No

Collection of Object

References a collection of order HTS records.

Table 5-145 Items - Object. See list of elements for detail

Element Name Required Data Type Description

orderNo

Yes

Number (12)

The unique identifier for the order.

dataLoadingDestination

No

String (6)

This field indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defined, the default is STG.

hts

No

Collection of Object

References the HTS code associated with a particular item of the purchase order.

Table 5-146 Hts - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

Unique alphanumeric value that identifies the item.

packItem

No

String (25)

Alphanumeric value that uniquely identifies the pack.

hts

Yes

String (25)

The unique identifier 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 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 may be used to detach 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-147 Delete - Object. See list of elements for detail

Element Name Required Data Type Description

hierarchyValue

Yes

Number (10)

The ID of the specified 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 field 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-148 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 predefined on LOC_TRAITS table. A location trait cannot be associated with (or deleted from) a chain.

Sample Input Message

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-149 Delete - Object. See list of elements for detail

Element Name Required Data Type Description

subclass

Yes

Number (4)

The unique number which identifies the subclass.

class

Yes

Number (4)

The number of the class which contains the subclass. This value must be predefined on the CLASS table.

dept

Yes

Number (4)

The number of the department which contains the subclass. This value must be predefined 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"
    }
  ]
}

Diff Detail Service

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

Diff Group Publish Services

Endpoints
MerchIntegrations/services/foundation/diffgroup 
MerchIntegrations/services/foundation/diffgroup/{diffGroupId}
Functional Area

Items - Differentiators

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 of sort_order_seq and node ID.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

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 field contains the ID of the diff group being added or updated.

diffGroupDescription

String

This field contains the description of the diff group.

diffType

String

This field contains the code for the types of diffs contained in this group, such as S for size.

createDateTime

String

This field holds the record creation date.

UpdateDateTime

String

This field holds the date when the record was last updated.

details

 

This List holds list attributes for Diff Group Details

cacheTimestamp

String

This field specifies date and time when Diff Group record was last maintained.

Output – Diff Group Details
Name Data Type Description

diffId

String

This field contains the ID of the diff that is included in the group.

displaySequence

Number

This field contains the display sequence for the diff in the group.

createDateTime

String

This field holds the record creation date.

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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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-18T23: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

Diff ID Publish Services

Endpoints
MerchIntegrations/services/foundation/diffid 
MerchIntegrations/services/foundation/diffid/{diffId}
Functional Area

Items - Differentiators

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 of sort_order_seq and node ID.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Input Parameters for MerchIntegrations/services/foundation/diffId/{diffId}
Parameter Name Required Data Type Description

differentiatorId

Yes

String

This field contains a unique identifier 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 field contains a unique identifier of the differentiator.

diffDescription

String

This field contains the description of the differentiator.

diffType

String

This field contains a code indicating the type of differentiator, for example C for Color.

industryCode

String

This field is used to hold the unique code used by industry standards to identify the differentiator

industrySubgroup

String

This field is used to hold a sub-grouping code used by industry standards to further identify the differentiator

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

cacheTimestamp

String

This field specifies date and time when the Diff ID 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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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+00: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

Diff Type Publish Services

Endpoints
MerchIntegrations/services/foundation/difftype 
MerchIntegrations/services/foundation/difftype/{diffType}
Functional Area

Items - Differentiators

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 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 of sort_order_seq and node ID.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Input Parameters for Merchintegrations/services/foundation/difftype/{diffType}
Parameter Name Required Data Type Description

diffType

Yes

String

Differentiator Type

Output - Diff ID
Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE and DELETE.

diffType

string

This field contains a code indicating the type of differentiator, for example C for Color.

diffTypeDescription

string

This field holds the description of the diff type (e.g., Color, Size, and so on).

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

cacheTimestamp

String

This field specifies date and time when Diff Type 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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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+00: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

EOW Run Signal Service

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

Get 4-5-4 Calendar Services

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? year=[year]
Input Parameters
Parameter Name Required Data Type Description

year

No

Number

Year. Retrieve calendar for a specific year

Output – Calendar
Name Data Type Description

year

String

Contains the year. The 4-5-4 year begins on the first day of the first 4-5-4 month regardless of when the calendar year begins.

month

String

Contains the number ranging from 1 to 12 which indicates the 4-5-4 month.

noOfWeeks

Number

Indicates whether there are 4 or 5 calendar weeks in the 4-5-4 month.

firstDay

Date

Contains the first day of the 4-5-4 month in YYYY-MM-DD format

Example JSON output:

[{
    "year": 2022,
    "month": 1,
    "noOfWeeks": 4,
    "firstDay": "2022-01-02"
  },
  {
    "year": 2022,
    "month": 2,
    "noOfWeeks": 4,
    "firstDay": "2022-01-30"
 }]
Table Impact
TABLE SELECT INSERT UPDATE DELETE

CALENDAR

Yes

No

No

No

Get Available Inventory Details Service

Functional Area

Inventory

Business Overview

This integration web service fetches available inventory at a customer-orderable store or warehouse location. This service fetches approved transaction-level items that are sellable, inventoried, and ranged to stockholding and customer-orderable locations. To keep the volume served by this service manageable for performance consideration, this serves either

  • item/locations that currently have non-zero inventory positions

  • while the current inventory position is zero, the item/locations that had non-zero inventory position in the last 7 days

Service Type

GET

ReST URL
/MerchIntegrations/services/inventory/available? since={since}&before={before}&offsetkey={offsetkey}&limit={limit}&locationType={locationType}&location={location}
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

offsetkey

No

String

Offset Key. Valid Value is combination of location type, location ID and item in case of pagination when the next page has to start the last fetched record of the previous call

limit

No

Number

Pagination limit. Default Value is 1000.

locationType

No

String

Allowed value for locationType is S for Store or W for Warehouse. If not defined, fetches details for all locations. If defined, fetches for the specified location type.

location

No

Number

Should be a valid store or a virtual warehouse if inventory position for a particular location must be fetched. locationType is mandatory if this is populated

Output
Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE, UPSERT and DELETE.

locationType

String

This field contains the Type of location in the location field. This will be either S for store or W for warehouse.

location

Number

This field contains the numeric identifier of the location in which the item is to be found.

item

String

This field contains the unique alphanumeric value that identifies the item. This will be an approved, sellable, transaction-level item. In case of warehouse location, pack items are also included.

availableQuantity

Number

This field represents the available inventory of an item in a particular location. This is calculated as Stock on Hand minus sum of non-sellable, transfer reserved, customer order reserve, RTV and in-progress sales quantity. In case of warehouse location, the inventory as an item as a component of a pack is also included in the available inventory calculation.

stockOnHand

Number

This field contains current stock on hand for the item.

standardUom

String

This field contains the Unit of measure in which stock of the item is tracked at a corporate level.

physicalWarehouse

Number

This field contains the physical warehouse ID of the location field. This is only populated for warehouse locations.

channelId

Number

This field contains the channel ID for the store or the channel of the virtual warehouse for location type of warehouse.

cacheTimestamp

Datetime

This field holds the database timestamp when the message was prepared/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 till the next inventory change. The consumer can use this field for sequencing records for an item/location

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.

hasMore

This is dependent on limit value. If the total rows are more than the limit defined then hasMore will be set to true, otherwise it will be 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, 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 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>:<port>:/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>:<port>:/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 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) and W (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 Object

A collection of items and locations for 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 identifier.

location

Yes

Number (10)

Location where the item is to be found. This field may contain a store or a warehouse.

locationType

Yes

String (1)

Type of location. Valid values are S (store) and W (warehouse).

channelId

No

Number (4)

Channel identifier of the warehouse. If the location is a store, channelId will be 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) or calculated 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"
  ]
}

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

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)

GetResponse - Object. See list of elements for detail

Element Name Required Data Type Description

reportReferenceKey

Yes

String (32)

Holds the unique reference trace ID used to match to the report URL.

reportUrl

Yes

String (256)

Contains the report URL with parameters for financial 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 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"
  ]
}

Get Banners Services

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?bannerId=[bannerId]
Input Parameters
Parameter Name Required Data Type Description

bannerId

No

Number

Banner ID. Searches for a specific banner

Output – Banner
Name Data Type Description

bannerId

Number

This field contains the banner id

bannerName

String

This field contains the banner name

Example JSON output:

[
  {
    "bannerId": 1,
    "bannerName": "B&M"
  },
  {
    "bannerId": 2,
    "bannerName": "Direct"
  }
]
Table Impact
TABLE SELECT INSERT UPDATE DELETE

BANNER

Yes

No

No

No

Get Brands Services

Endpoints

/MerchIntegrations/services/items/brands

Functional Area

Items – Brands

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/items/brands? offsetkey={offsetkey}&limit={limit}&brandName=[brandName]
Input Parameters
Parameter Name Required Data Type Description

offsetkey

No

String

Offset Key. Valid Value is brand name

limit

No

Number

Pagination limit. Default Value is 1000.

brandName

No

String

Brand Name. Searches for a specific brand

Output – Brand
Name Data Type Description

brandName

String

This field contains the brand name.

brandDescription

String

This field contains the brand description.

createDatetime

Datetime

This field contains the date-time in UTC when this record was created.

lastUpdateDatetime

Datetime

This field contains the date-time in UTC when this record was updated.

Table 5-150 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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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": [
    {
      "brandName": "ORCL",
      "brandDescription": "ORACLE",
      "createDatetime": "2020-12-31T23:59:59.000Z",
      "lastUpdateDatetime": "2021-12-31T23:59:59.000Z "
    }
  ],
  "hasMore": true,
  "limit": 1,
  "count": 1,
  "links": [
    {
      "href": "http://server:port/MerchIntegrations/services/items/brands?limit=1",
      "rel": "self"
    },
    {
      "href": "http://server:port /MerchIntegrations/services/items/brands?offsetkey=ORCL&limit=1",
      "rel": "next"
    }
  ]
}
Table Impact
TABLE SELECT INSERT UPDATE DELETE

BRAND

Yes

No

No

No

Get Channels Services

Endpoint

/MerchIntegrations/services/foundation/channels

Functional Area

Foundation

Business Overview

This service retrieves all Channels. This service takes an optional query parameter of channelId to retrieve detail for specified channel id

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/channels?channelId=[channelId]
Input Parameters
Parameter Name Required Data Type Description

channelId

No

Number

Channel ID. Searches for a specific channel

Output – Channel
Name Data Type Description

channelId

Number

This field contains the channel id

channelName

String

This field contains the channel name

channelType

String

This field contains the channel type. Channel type is a user configured value defined in Code Detail with code_type as CHTY. Default values (which can be changed) are BANDM - Brick and Mortar, WEBSTR - Webstore, CAT - Catalog.

bannerId

Number

This field contains the banner id associated with this Channel.

Example JSON output:

[
  {
    "channelId": 2,
    "channelName": "Brick & Mortar",
    "channelType": "BANDM",
    "bannerId": 1
  },
  {
    "channelId": 3,
    "channelName": "Outlet",
    "channelType": "BANDM",
    "bannerId": 1
  }
]
Table Impact
TABLE SELECT INSERT UPDATE DELETE

CHANNELS

Yes

No

No

No

Get Code Details Services

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 the code details for a single code type.

Service Type

GET

ReST URL
/MerchIntegrations/services/administration/operations/codes? offsetkey={offsetkey}&limit={limit}&codeType=[codeType]
Input Payload Details

Table 5-151 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 specific code type

Response Code: 200 (Success)

Table 5-152 Output – Code

Name Data Type Description

codeType

String

This field contains the code type which will serve as a grouping mechanism for the multiple codes.

description

String

This field will contain the description of the code type.

Details

Collection

Code details

Table 5-153 Output – Code Details

Name Data Type Description

code

String

This field contains the code used in the application.

codeDescription

String

This field contains the description associated with the code and code type.

sequence

Number

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

String

Indicate if the code is in use or not. Records set to N will not display as possible options for users. Valid value Y or N

Table 5-154 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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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": [
    {
      "codeType": "LOC",
      "description": "Location",
      "details": [
        {
          "code": "W",
          "codeDescription": "Warehouse",
          "sequence": "2",
          "usedInd": "Y"
        },
        {
          "code": "S",
          "codeDescription": "Store",
          "sequence": "1",
          "usedInd": "Y"
        }
      ]
    }
  ],
  "hasMore": true,
  "limit": 1,
  "count": 1,
  "links": [
    {
      "href": "http://Server:port/MerchIntegrations/services/administration/operations/codes?offsetkey=LOB&limit=1",
      "rel": "self"
    },
    {
      "href": "http:// Server:port /MerchIntegrations/services/administration/operations/codes?offsetkey=LOC&limit=1",
      "rel": "next"
    }
  ]
}
Table Impact
TABLE SELECT INSERT UPDATE DELETE

CODE_HEAD

Yes

No

No

No

CODE_DETAIL

Yes

No

No

No

Get Item Location Weekly Sales

Functional Area

Sales

Business Overview

This webservice allows the store inventory system to query Merchandising for a specific item-location combination's sales data. Merchandising will respond by sending the available weeks of sales data, including the quantity sold, retail value, and sales type (e.g. regular, promotion, clearance).

Service Type

POST

ReST URL
MerchIntegrations/services/sales/itemLocation/weekly/get
Input Payload Details

Table 5-155 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.

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-156 GetResponse - Object. See list of elements for detail

Element Name Required Data Type Description

items

No

Collection of Object

References a collection of store order details.

Table 5-157 Items - Object. See list of elements for detail

Element Name Required Data Type Description

eowDate

Yes

date

Contains the end of week date.

quantity

Yes

Number (12,4)

This contains the quantity of items in the order/transfer.

salesValue

Yes

Number (20,4)

This contains the value of the units sold.

salesType

Yes

String (1)

Indicates the type of sale which generated the sales.

Sample Response Message

{
  "items": [
    {
      "eowDate": "2001-12-31",
      "quantity": 1350,
      "salesValue": 2500000,
      "salesType": "?"
    }
  ]
}
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.

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"
  ]
}

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-158 Get - Object. See list of elements for detail

Element Name Required Data Type Description

items

No

Collection of Object

A referenced element. For detailed description, please refer to the Item table.

Table 5-159 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 identifies 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 the supplier belongs to, for which the Pricing Cost must be retrieved.

fulfillLocation

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 warehouse 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 must 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-160 GetResponse - Object. See list of elements for detail

Element Name Required Data Type Description

items

No

Collection of Object

A referenced element. For detailed description, please refer to the GetResponse.Items table.

Table 5-161 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 identifies 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 to which the supplier belongs, for which the Pricing Cost needs to be retrieved.

fulfillLocation

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 warehouse 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 must 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 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"
  ]
}

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-162 SvcprovRejectedRecRDO

Parameter Name Data Type

pageSize

Number

pageNumber

Number

readUnreadErrorInd

String

startDate

String (Format :YYYYMMDD)

endDate

String (Format :YYYYMMDD)

svcprovRejStoreRDOs

List<SvcprovRejStoreRecRDO>

svcprovRejErrorcodeRDOs

List<SvcprovRejErrorcodeRecRDO>

svcprovRejTransactionidRDOs

List<SvcprovRejTransactionidRecRDO>

Table 5-163 SvcprovRejStoreRecRDO

Parameter Name Data Type

store

String

Table 5-164 SvcprovRejErrorcodeRecRDO

Parameter Name Data Type

errorCode

String

Table 5-165 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-166 SVCPROV_REJ_THEAD_REC

Parameter Name Data Type

Store

Number

businessDate

Date

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<SvcprovSalesAttrRecRDO>

salesTcustTbl

List< SvcprovSalesTcustRecRDO>

salesCattTbl

List< SvcprovSalesAttrRecRDO>

salesTitemTbl

List< SvcprovSalesTitemRecRDO>

salesTtaxTbl

List< SvcprovSalesTtaxRecRDO>

salesTpymtTbl

List< SvcprovSalesTpymtRecRDO>

salesTtendTbl

List<SvcprovSalesTtendRecRDO>

salesTtailTbl

List<SvcprovSalesCounterRecRDO>

Table 5-167 SvcprovSalesAttrRecRDO

Parameter Name Data Type

recType

String

attributeType

String

attributeValue

String

Table 5-168 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

email

String

birthdate

Date

Table 5-169 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

Date

dropShipInd

String

uomQty

BigDecimal

catchWeightInd

String

sellingItem

String

custOrdLineNo

Number

mediaId

Number

totalIgtaxAmount

BigDecimal

uniqueId

String

custOrdNo

String

custOrdDate

Date

fulfillmentOrdNo

String

noInventoryReturn

String

salesType

String

returnWh

Number

returnDeposition

String

originalStore

Number

originalTransactionNo

Number

fulfillmentLocType

String

fulfillmentLoc

Number

postingStore

String

salesItattTbl

List<SvcprovSalesAttrRecRDO>

salesIdiscTbl

List<SvcprovSalesIdiscRecRDO>

salesIgtaxTbl

List<SvcprovSalesIgtaxRecRDO>

Table 5-170 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<SvcprovSalesAttrRecRDO>

Table 5-171 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<SvcprovSalesAttrRecRDO>

Table 5-172 SvcprovSalesTtaxRecRDO

Parameter Name Data Type

recType

String

taxCode

String

taxAmount

BigDecimal

refNo17

String

refNo18

String

refNo19

String

refNo20

String

transactionTaxAttributeTbl

List<SvcprovSalesAttrRecRDO>

Table 5-173 SvcprovSalesTpymtRecRDO

Parameter Name Data Type

recType

String

paymentAmount

BigDecimal

Table 5-174 SvcprovSalesTtendRecRDO

Parameter Name Data Type

recType

String

tendTypeGroup

String

tendTypeId

Number

tenderAmount

BigDecimal

ccNo

String

ccAuthNo

String

ccAuthSource

String

ccCardholderVerification

String

ccExpirationDate

Date

ccEntryMode

String

ccTerminalId

String

ccSpecialCondition

String

ccToken

String

voucherNo

String

couponNbr

String

couponRefNo

String

chequeAccNo

String

chequeNo

Number

identificationMethod

String

identificationId

String

originalCurrency

String

originalCurrencyAmount

BigDecimal

refNbr9

String

refNbr10

String

refNbr11

String

refNbr12

String

transactionTenderAttributeTbl

List<SvcprovSalesAttrRecRDO>

Table 5-175 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

Half Data Budget Service

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 insert data to the Merchandising tables.

Service Type

Post

Rest URL:

financials/HalfDataBudgetREST/modifyHdb

Input Parameters

SvcprovHdbdescRecRDO

Parameter Name Data Type

dept

BigDecimal

halfNo

BigDecimal

locType

String

location

BigDecimal

setOfBooksId

BigDecimal

cumMarkonPct

BigDecimal

shrinkagePct

BigDecimal

markdownPct

BigDecimal

JSON Structure:

[
    {
        "dept": 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

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,
                "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

Yes

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

Inventory Adjustment Service

This section describes the Inventory Adjustment service.

Functional Area

Inventory

Business Overview

The primary role of this service is to create inventory adjustment and send them to Merchandising.

Inventory Adjustment

Business Overview

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>

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

Item Detail Service

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

inventoryInd

String

packitemBreakout

List<RestPackitemBreakoutRecRDO>

itemSupplier

List<RestItemSupplierRecRDO>

itemSupplierCountry

List<RestItemSupplierCountryRecRDO>

vatItem

List<RestVatItemRecRDO>

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": []
            }
        }
    ],
    "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

Item Loc Inventory Detail Service

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

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

Item Publish Services

Endpoints
MerchIntegrations/services/foundation/item
MerchIntegrations/services/foundation/item/{itemId}
Functional Area

Items

Business Overview

This service can be used by external applications to get all or selected items and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/item?itemLevel={itemlevel}&tranLevel={tranLevel}& deptId={deptId}&classId={classId}&subclassId={subclassId}&status={status}&itemType={itemType}&offsetkey={offsetkey}&limit={limit}&since={since}&before={before}
/MerchIntegrations/services/foundation/item/{itemId}
Input Parameters

Table 5-176 /MerchIntegrations/services/foundation/item

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

itemLevel

No

Number

Item’s Level. Valid values are 1, 2 and 3.

tranLevel

No

Number

Item’s Transaction Level. Valid Values are 1,2 and 3.

deptId

No

Number

Department ID.

classId

No

Number

Class ID.

subclassId

No

Number

Subclass ID.

status

No

String

Status of the item. At this time, will always contain ‘A’ as only approved items are interfaced.

itemType

No

String

Item Type. Valid values are S - Simple Pack, C - Complex Pack, A - Deposit Container, E - Deposit Contents, T - Deposit Returned Item, Z - Deposit Crate, O - Transformed Orderable, L - Transformed Sellable, R - Regular Item.

offsetkey

No

String

Offset Key. Valid Value is an Item Id.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Table 5-177 /MerchIntegrations/services/foundation/item/{itemId}

Parameter Name Required Data Type Description

itemId

Yes

Number

Item Number.

Output
Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE and DELETE.

item

String

This field specifies unique alphanumeric value that identifies the item.

itemNumberType

String

Indicates the type of the item ID, for example UPC-12. The valid values for this column are maintained in code type UPCT.

status

String

This field specifies status of the item.

itemLevel

Number

This field specifies 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

Number

This field specifies 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

String

This field specifies long description of the item. This description is used throughout the system to help online users identify the item. For items that have parents, this description will default to the parent’s description plus any differentiators. For items without parents this description will default to null.

shortDescription

String

This field specifies 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.

itemDescriptionUppercase

String

This field specifies all upper-case description of the item (same as upper(itemDescription). This field is not displayed in the on-line item maintenance dialog but is used in item list of value search processing throughout the system.

itemDescriptionSecondary

String

This field specifies secondary descriptions of the item. This field can only be populated when secondary_desc_ind on the system options is Y.

itemParent

String

This field specifies alphanumeric value that uniquely identifies the item/group at the level above the item.

itemGrandparent

String

This field specifies alphanumeric value that uniquely identifies the item/group at two levels above the item.

sellableInd

String

This field indicates if the item can be sold.

orderableInd

String

This field indicates if the item can be ordered.

inventoryInd

String

This field indicates whether the retailer intends to maintain inventory of the item. Non-inventory items cannot be put on any transactions except sales.

packInd

String

This field 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 quantities, etc.) that other items do not. This field is required by the database.

simplePackInd

String

This field indicates if pack item is a simple pack or not. This field 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 - Yes, this item is a simple pack; N - No if this is not a simple pack.

containsInnerInd

String

This field indicates if pack item contains inner packs. Vendor packs will never contain inner packs and this field will be defaulted to 'N'. This field 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

Number

This field specifies 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).

deptName

String

This field contains the name of the department.

class

Number

Number identifying the class to which the item is attached.

className

String

This field contains the name of the class.

uniqueClassId

Number

This field 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 cannot have a composite key in the merchandise hierarchy.

subclass

Number

This field specifies 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 field are located on the subclass table.

subclassName

String

This field contains the name of the subclass.

uniqueSubclassId

Number

This field uniquely identifies the subclass which the item belongs to. Subclass is not unique ID the merchandise hierarchy. The combination of Dept/Class/Subclass is unique but requires use of a composite key. The unique ID can be used in back-end processing or in systems that cannot have a composite key in the merchandise hierarchy.

unitRetail

Number

This field holds the unit retail in the standard unit of measure for the item/zone combination. This field is stored in the local currency.

variableUpcFormatId

String

This field will hold the format ID that corresponds to the item's variable UPC. This value is only used for items with variable UPCs.

variableWeightUpcPrefix

Number

This field holds the prefix for variable weight UPCs. The prefix 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 client’s responsibility to download this value to their POS system.

diff1

String

This field contains diff_group or diff_id that differentiates the current item from its item_parent. For an item that is a parent, this field 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 field may contain a value (34X34, Red, etc.). Valid values are found on the diff_group and diff_id tables.

diff1Type

String

This field will hold a value of all possible differential types. (for example, 'S' - size, 'C' - color, 'F' - flavor, 'E' - scent, 'P' - pattern). The valid values for this column are maintained in code type 'DIFF' and on the diff_type table.

diff2

String

This field contains diff_group or diff_id that differentiates the current item from its itemParent.

diff2Type

String

This field will hold a value of all possible differential types. (for example, 'S' - size, 'C' - color, 'F' - flavor, 'E' - scent, 'P' - pattern). The valid values for this column are maintained in code type 'DIFF' and on the diff_type table.

diff3

String

This field contains diff_group or diff_id that differentiates the current item from its itemParent.

diff3Type

String

This field will hold a value of all possible differential types. (For example, 'S' - size, 'C' - color, 'F' - flavor, 'E' - scent, 'P' - pattern). The valid values for this column are maintained in code type 'DIFF' and on the diff_type table.

diff4

String

This field contains diff_group or diff_id that differentiates the current item from its itemParent.

diff4Type

String

This field will hold a value of all possible differential types. (For example, 'S' - size, 'C' - color, 'F' - flavor, 'E' - scent, 'P' - pattern). The valid values for this column are maintained in code type 'DIFF' and on the diff_type table.

costZoneGroupId

Number

This field contains cost zone group associated with the item. This field is only required when elc_ind (landed cost indicator) is set to 'Y' on the system_options table.

standardUom

String

This field contains unit of measure in which stock of the item is tracked at a corporate level.

uomConversionFactor

Number

This field contains Conversion factor between an 'Each' and the standard_uom when the standard_uom is not in the quantity class.

packageSize

Number

This field holds the size of the product printed on any packaging.

packageUom

String

This field holds the unit of measure associated with the package size. This field is used for reporting purposes and by Retek Price Management to determine same sized and different sized items.

merchandiseInd

String

This field indicates if the item is a merchandise item (Y, N).

storeOrderMultiple

String

This field indicates Merchandise shipped from the warehouses to the stores must be specified in this unit type. Valid values are C - Cases; I - Inner; E - Eaches.

forecastInd

String

This field indicates if this item will be interfaced to an external forecasting system (Y, N).

manufacturerRecommendedRetail

Number

This field contains manufacturer's recommended retail price for the item. Used for informational purposes only. This field is stored in the primary currency.

manufacturerRetailCurrencyCode

String

The field indicates the currency code of the Manufacturer's retail price.

originalRetail

Number

The field indicated the original retail price of the item per unit. This field is stored in the primary currency.

originalRetailCurrencyCode

String

The field indicates the currency code of the original retail price.

retailLabelType

String

This field indicates any special label type associated with an item (i.e., pre-priced or cents off).

retailLabelTypeDescription

String

Contains the retail label type description corresponding to the retailLabelType value.

retailLabelValue

Number

This field represents the value associated with the retail label type.

handlingTemperature

String

Holds the temperature information associated with the item. The valid values for this column are maintained in code type 'HTMP'.

handlingTemperatureDescription

String

Contains the Handling temperature description corresponding to the handlingTemperature value.

handlingSensitivity

String

Holds the handling sensitivity information associated with the item. The valid values for this column are maintained in code type 'HSEN'.

handlingSensitivityDescription

String

Contains the Handling sensitivity description corresponding to the handlingSensitivity value.

catchWeightInd

String

Indicates whether the item should be weighed when it arrives at a location. Valid values for this field are 'Y' and 'N'.

catchWeightType

String

The field will hold catch weight type for a simple pack catch weight item. The value is based on the component items orderType and saleType: 2 - orderType - Variable Weight, saleType - Loose Weight 4 - orderType - Variable Weight, saleType - Variable Weight Each.

catchWeightUom

String

The field indicates the UOM for Catchweight Items.

orderType

String

The field determines how catch weight items are ordered. Valid values are F - fixed weight V - Variable weight. The valid values for this column are maintained in code type ORDT.

saleType

String

The field indicates the method of how catch weight items are sold in store locations. Valid values are V - variable weight each L - Loose weight. The valid values for this column are maintained in code type STPE.

wasteType

String

The field identifies the wastage type as either sales or spoilage wastage. Valid values are SP - spoilage; and SL - Sales.

wasteTypeDescription

String

The field contains the Waste Type description corresponding to the wasteType value.

averageWastePercentage

Number

The field indicates average percent of wastage for the item over its shelf life. Used in inflating the retail price for wastage items.

defaultWastePercentage

Number

The field 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

String

The field indicates that the dimensions of the product are always the same, regardless of the supplier. If this field 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

String

The field indicates if pack item is a vendor pack or a buyer pack. Valid values are V - Vendor; B - Buyer.

orderAsType

String

This field indicates if pack item is receivable at the component level or at the pack level (for a buyer pack only). Valid Values are E - Eaches (component level) P - Pack (buyer pack only).

comments

String

The field holds any comments associated with the item.

itemServiceLevel

String

The field Holds a value that restricts the type of shipment methods that RCOM can select for an item.

giftWrapInd

String

This field will contain a value of 'Y' if the item is eligible to be gift wrapped.

shipAloneInd

String

This field will contain a value of 'Y' if the item should be shipped to the customer is a separate package versus being grouped together in a box.

brandName

String

This field contains the brand associated to an item.

brandDescription

String

The field contains the brand description associated to an item.

perishableInd

String

A grocery item attribute used to indicate whether an item is perishable or not.

itemTransformInd

String

The field 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

String

The field contains deposit item component type. A NULL value in this field 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 flagged only to enable these items to be mapped to a separate GL account if required.

containerItem

String

The field holds the container item number for a contents item. This field is only populated and required if the depositItemType - E.

depositInPricePerUom

String

This field 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 depositItemType - E. Valid values are I - Include deposit amount E - Exclude deposit amount.

storePackInventoryInd

String

Indicates if inventory for a sellable simple pack should be tracked at a pack level in Store Inventory Operations. Valid values are Y (yes) for tracking at a pack level and N (no) for tracking at a component level.

sohInquiryAtPackInd

String

The field indicates to the Store Inventory System if a notional simple pack item's inventory should be displayed in packs.

purchaseType

String

The field indicates if an item is a normal, consignment or concession item - 'N' for normal, 'S' for consignment, 'C' for concession.

productClassification

String

The field contains item combinability codes (The valid values for this column are maintained in code type 'PCLA') which provide a way to define which items can be combined (packed or boxed) together.

productClassificationDescription

String

This field will hold the description of the product classification.

itemAggregateInd

String

This field 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

String

This field 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

String

This field 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.

diff3AggregateInd

String

This field 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

String

This field 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

String

This field will contain either ID or GROUP, based on whether the diff1 is a group diff or a diff id.

diff1Description

String

This field will hold the description of differentiator.

diff2Level

String

This field will contain either ID or GROUP, based on whether the diff1 is a group diff or a diff id.

diff2Description

String

This field will hold the description of differentiator.

diff3Level

String

This field will contain either ID or GROUP, based on whether the diff1 is a group diff or a diff id.

diff3Description

String

This field will hold the description of differentiator.

diff4Level

String

This field will contain either ID or GROUP, based on whether the diff1 is a group diff or a diff id.

diff4Description

String

This field will hold the description of differentiator.

primaryImageUrl

String

This field will hold the primary item image URL.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttribute

 

This list holds custom flex attributes for the item.

itemTranslation

 

This list holds translation attributes for the item.

itemSupplier

 

This list holds supplier's attributes for the item.

itemUda

 

This list holds uda attributes for the item.

itemImage

 

This list holds image attributes for the item.

referenceItem

 

This list holds the attributes of the reference item.

itemBOM

 

This list holds pack attributes for the item.

itemTicket

 

This list holds ticket attributes for the item.

relatedItem

 

This list holds related item's attributes for the item.

cacheTimestamp

String

This field specifies date and time when the item record was last maintained.

Table 5-178 customFlexAttribute

Name Data Type Description

name

String

This field will hold the custom flex attribute name.

value

String

This field will hold the numeric or string value of the custom flex attribute.

valueDate

String

This field will hold the date value of the custom flex attribute.

createDateTime

String

This field will hold the date time when the custom flex attribute was inserted.

updateDateTime

String

This field will hold the date time when the custom flex attribute was last updated.

Table 5-179 itemTranslation

Name Data Type Description

languageCode

Number

This field contains the language in which the translated text is maintained

languageName

String

This field contains description of language code in which the translated text is maintained

isoCode

String

This field will hold the ISO code associated with the given language.

itemDescription

String

This field will hold the ISO code associated with the given language.

itemDescriptionSecondary

String

This field holds long description of the item.

shortDescription

String

This field 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

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

Table 5-180 itemSupplier

Name Data Type Description

supplier

Number

This field specifies unique identifier for the supplier.

primarySupplierInd

String

This field indicates whether this supplier is the primary supplier for the item. An item can have one and only one primary supplier.

vpn

String

This field contains the Vendor Product Number for the Item/Supplier.

supplierLabel

String

This field contains the supplier label. It will only be populated if item is a parent item.

supplierDiff1

String

This field contains the first supplier differentiator and/or description. This field may only contain a value for items with an item parent.

supplierDiff2

String

This field contains the second supplier differentiator and/or description. This field may only contain a value for items with an item parent.

supplierDiff3

String

This field contains the third supplier differentiator and/or description. This field may only contain a value for items with an item parent.

supplierDiff4

String

This field contains the fourth supplier differentiator and/or description. This field may only contain a value for items with an item parent.

palletName

String

This field specifies code referencing the name used to refer to the pallet.

caseName

String

This field specifies code referencing the name used to refer to the case.

innerName

String

This field specifies code referencing the name used to refer to the inner.

supplierDiscontinueDate

String

This field specifies the date when the supplier discontinues an item.

directShipInd

String

This field indicates that any item associated with this supplier is eligible for a direct shipment from the supplier to the customer.

primaryCaseSize

String

This field indicates the primary case size for the item supplier when an orderable item is configured for informal case types.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttribute

 

This list holds custom flex attributes for the item's supplier record.

itemSupplierCountry

 

This list holds attributes for the item supplier's country record.

itemSupplierCountryOfManufacture

 

This list holds attributes for the item supplier's country of manufacturing record

itemSupplierUom

 

This list holds attributes for the item supplier’s UOM record.

     

Table 5-181 itemSupplierCountry

Name Data Type Description

originCountry

String

This field specifies country where the item was manufactured or significantly altered.

primarySupplierInd

String

This field indicates whether this supplier is the primary supplier for the item. Each item can have one and only one primary supplier.

primaryCountryInd

String

This field 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

Number

This field contains the current corporate unit cost for the item from the supplier /origin country.

leadTime

Number

This field 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

Number

This field contains the time that will be taken to get the item from the supplier to the initial receiving location.

supplierPackSize

Number

This field contains the quantity that orders must be placed in multiples of for the supplier for the item.

innerPackSize

Number

This field contains the break pack size for this item from the supplier.

roundLevel

String

This field is used to determine how order quantities will be rounded to case, layer and pallet.

minimumOrderQuantity

Number

This field contains the minimum quantity that can be ordered at once from the supplier for the item.

maximumOrderQuantity

Number

This field contains the maximum quantity that can be ordered at once from the supplier for the item.

packingMethod

String

This field indicates whether the packing method for the item in the container is flat or hanging.

defaultUop

String

This field contains the default unit of purchase for the item/supplier/country. Valid values include 'C' - Case and 'P' – Pallet.

ti

Number

This field 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

Number

This field 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

String

This field contains cost UOM is held to allow costs to be managed in a separate UOM to the standard UOM.

toleranceType

String

The unit of tolerance for catch weight simple packs. Valid values are: 'A' - actual 'P' - percent.

maximumTolerance

Number

The maximum tolerance value for the catch weight simple pack.

minimumTolerance

Number

The minimum tolerance value for the catch weight simple pack.

roundToInnerPercentage

Number

This field 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.

roundToCasePercentage

Number

This field 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.

roundToLayerPercentage

Number

This field 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.

roundToPalletPercentage

Number

This field 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.

supplierHierarchyType1

String

This field identifies partner type of supplier hierarchy level 1. This field will always have the partner type S1 which indicates manufacturer.

supplierHierarchyLevel1

String

This field 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.

supplierHierarchyType2

String

This field identifies partner type of supplier hierarchy level 2. This field will always have the partner type S2 which indicates distributor.

supplierHierarchyLevel2

String

This field contains 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.

supplierHierarchyType3

String

This field identifies partner type of supplier hierarchy level 3. This field will always have the partner type S3 which indicates wholesaler.

supplierHierarchyLevel3

String

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

Number

This field 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 field.

extendedBaseCost

Number

This field 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 field. 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.

inclusiveCost

Number

This field 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 field. 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

Number

This field will hold the tax exclusive cost of the item.

purchaseType

Number

This field 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

String

This field 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

Number

This field contains the percentage of the retail price which will determine the cost paid to the supplier for a consignment or concession item.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttribute

 

This list holds custom flex attributes for the item supplier's country record.

itemSupplierCountryDimension

 

This list holds dimension attributes for the item supplier's country record.

Table 5-182 itemSupplierCountryOfManufacture

Name Data Type Description

countryId

String

This field holds country ID of manufacturer.

primaryInd

String

This field indicates primary country of manufacturer indicator.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

Table 5-183 ItemSupplierCountryDimension

Name Data Type Description

dimensionObject

String

This field Specific object whose dimensions are specified in this record (e.g. case, pallet, each). The valid values for this column are maintained in code type DIMO.

dimensionObjectDescription

String

This field contains description of the dimension object.

presentationMethod

String

This field describes the packaging (if any) being taken into consideration in the specified dimensions. The valid values for this column are maintained in code type PCKT.

presentationMethodDescription

String

This field contains description of the presentation method.

length

Number

This field contains length of dimension object measured in units specified in terms of the LWH Unit of Measure.

width

Number

This field contains width of dimension object measured in units specified in terms of the LWH Unit of Measure.

height

Number

This field contains height of dimension object measured in units specified in terms of the LWH Unit of Measure.

lwhUom

String

This field contains measurement for length, width, and height.

weight

Number

This field contains weight of dimension object measured in units specified in terms of the Weight Unit of Measure.

netWeight

Number

This field contains net weight of the dimension object (weight without packaging) measured in units specified in terms of the Weight Unit of Measure.

weightUom

String

This field contains unit of measurement for Weight and Net Weight.

liquidVolume

Number

This field contains unit of measurement for volume.

liquidVolumeUom

String

This field contains unit of measurement for liquid volume. Liquid volumes are only convertible to other liquid volumes.

statisticalCube

Number

This field contains statistical value of the dimension object's dimensions to be used for loading purposes.

tareWeight

Number

This field contains amount of weight to be subtracted for packaging materials. Used to calculate the true net weight of the dimension object.

tareType

String

This field indicates whether the tare weight for the dimension object is wet or dry.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

Table 5-184 ItemSupplierUom

Name Data Type Description

uom

String

This field holds unit of measure that the item is being measured in.

value

Number

This field holds value of measure.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

Table 5-185 itemImage

Name Data Type Description

imageName

String

This field specifies name of the image.

imageAddress

String

This field specifies path where the image file is stored.

imageType

String

This field contains the type of the image of the item. The valid values for this column are maintained in code type IITD.

primaryImageInd

String

This field indicates whether this record is the primary image of the item or not. Valid values are Y - Yes and N - No.

displayPriority

Number

This field specifies display sequence order of images associated to the item per priority.

imageDescription

String

This field contains the description associated with the image of the item.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

Table 5-186 referenceItem

Name Data Type Description

referenceItem

String

This field holds the unique identifier for the item.

primaryInd

String

This field indicates if the sub-transaction level item is designated as the primary sub-transaction level item.

formatId

String

This field will hold the format id that corresponds to the item's variable UPC. This value is only used for items with variable UPCs.

prefix

Number

This field holds the prefix for variable weight UPCs. The prefix determines the format of the eventual UPC and will be used to decode variable weight UPCs that are uploaded from the POS.

itemNoType

String

This field holds code specifying what type of the item is. The valid values for this column are maintained in code type UPCT.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

Table 5-187 itemUDA

Name Data Type Description

udaLOV

 

This list will hold attributes for the item's uda list of values.

udaFreeform

 

This list will hold attributes for the item's uda free form.

udaDate

 

This list will hold attributes for the item's uda date.

Table 5-188 udaLOV

Name Data Type Description

udaId

Number

This field contains a number identifying the user-defined attribute.

udaDescription

String

This field contains description of user-defined attribute.

udaValue

Number

This field contains the unique identifier of the Attribute Group being added or delete to the item list.

udaValueDescription

String

This field contains the value of the Attribute Group.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

Table 5-189 udaFreeform

Name Data Type Description

udaId

Number

This field contains a number identifying the user-defined attribute.

udaDescription

String

This field contains description of user-defined attribute.

udaText

String

This field contains the text value of the user-defined attribute for the item.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

Table 5-190 udaDate

Name Data Type Description

udaId

Number

This field contains a number identifying the user-defined attribute.

udaDescription

String

This field contains description of user-defined attribute.

udaDate

String

This field contains the effective date for the udaId.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

Table 5-191 itemBOM

Name Data Type Description

componentItem

String

This field specifies unique identifier for the component item.

packQuantity

Number

his field specifies contains the quantity of each item in the pack item.

Table 5-192 itemTicket

Name Data Type Description

ticketTypeId

String

This field uniquely identifies the ticket type which is associated with the item.

ticketTypeDescription

String

This field contains a description of the ticket or label type.

shelfEdgeLabelInd

String

This field contains a description of the ticket or label type.

poPrintType

String

This field 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.

printOnPcInd

String

This field indicates whether this type of ticket should be printed for this item when a permanent price change goes into effect. Valid values in this field are Y - Yes N - No.

ticketOverPercentage

Number

This field contains a percent which indicates the number 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 field 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 field would indicate the quantity of tickets which should be printed greater than the stock on hand.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttribute

 

This list holds custom flex attributes for the item ticket record.

Table 5-193 relatedItem

Name Data Type Description

relationshipId

Number

A system generated numeric field that uniquely identifies the relationship record.

relationshipName

String

This field holds user entered name of the relationship.

relationshipType

String

This field holds user entered name of the relationship.

mandatoryInd

String

Indicates whether the relationship is mandatory or not. Valid values are Y - Yes, N - No.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

details

 

This list holds the related item detail records.

Table 5-194 relatedItem (details)

Name Data Type Description

relatedItem

String

Item for which related items are defined. Valid transaction level/sellable item. Multiple items can be defined for a relationship.

priority

Number

This field indicates relationship priority. Applicable only for relationship type Substitute.

startDate

String

The related item can be used on transactions starting this date.

endDate

String

This related item can be used on transactions until this date. A value of null means that it is always effective.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

Table 5-195 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.

hasMore

This is dependent on limit value. If the total rows are more than the limit defined, 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",
      "item": "100500002",
      "itemNumberType": "ITEM",
      "status": "A",
      "itemLevel": 1,
      "tranLevel": 1,
      "itemDescription": "100500002",
      "shortDescription": "100500002",
      "itemDescriptionUppercase": null,
      "itemDescriptionSecondary": null,
      "itemParent": null,
      "itemGrandparent": null,
      "sellableInd": "Y",
      "orderableInd": "Y",
      "inventoryInd": "Y",
      "packInd": "N",
      "simplePackInd": "N",
      "containsInnerInd": "N",
      "dept": 1414,
      "deptName": "CG Dept new",
      "classId": 1515,
      "class": 1515,
      "className": "CG Class New",
      "uniqueClassId": 10001,
      "subclass": 1616,
      "subclassName": "CG subclass new",
      "uniqueSubclassId": 10001,
      "unitRetail": 12.1,
      "variableUpcFormatId": null,
      "variableWeightUpcPrefix": null,
      "diff1": "BLACK_9665",
      "diff1Type": "C_3688",
      "diff2": "WHITE_7219",
      "diff2Type": "C_6787",
      "diff3": null,
      "diff3Type": null,
      "diff4": null,
      "diff4Type": null,
      "costZoneGroupId": 1000,
      "standardUom": "EA",
      "uomConversionFactor": null,
      "packageSize": 111,
      "packageUom": "KG",
      "merchandiseInd": "Y",
      "storeOrderMultiple": "E",
      "forecastInd": "N",
      "manufacturerRecommendedRetail": null,
      "manufacturerRetailCurrencyCode": "USD",
      "originalRetail": 12.1,
      "originalRetailCurrencyCode": "USD",
      "retailLabelType": null,
      "retailLabelTypeDescription": null,
      "retailLabelValue": null,
      "handlingTemperature": null,
      "handlingTemperatureDescription": null,
      "handlingSensitivity": null,
      "handlingSensitivityDescription": null,
      "catchWeightInd": "N",
      "catchWeightType": null,
      "catchWeightUom": null,
      "orderType": null,
      "saleType": null,
      "wasteType": "SL",
      "wasteTypeDescription": "Sales Wastage",
      "averageWastePercentage": 10,
      "defaultWastePercentage": null,
      "constantDimensionInd": "N",
      "packType": null,
      "orderAsType": null,
      "comments": null,
      "itemServiceLevel": null,
      "giftWrapInd": "N",
      "shipAloneInd": "N",
      "brandName": null,
      "brandDescription": null,
      "perishableInd": "Y",
      "itemTransformInd": "N",
      "depositItemType": null,
      "containerItem": null,
      "depositInPricePerUom": null,
      "storePackInventoryInd": "N",
      "sohInquiryAtPackInd": "N",
      "purchaseType": null,
      "productClassification": null,
      "productClassificationDescription": null,
      "itemAggregateInd": "N",
      "diff1AggregateInd": "N",
      "diff2AggregateInd": "N",
      "diff3AggregateInd": "N",
      "diff4AggregateInd": "N",
      "diff1Level": "ID",
      "diff1Description": "Auto Black BLACK_9665",
      "diff2Level": "ID",
      "diff2Description": "New White WHITE_7219",
      "diff3Level": null,
      "diff3Description": null,
      "diff4Level": null,
      "diff4Description": null,
      "primaryImageUrl": null,
      "createDateTime": "2021-10-11T18:15:35.000Z",
      "updateDateTime": "2021-10-11T18:19:32.000Z",
      "customFlexAttribute": null,
      "itemTranslation": null,
      "itemSupplier": [
        {
          "supplier": 24241,
          "primarySupplierInd": "Y",
          "vpn": null,
          "supplierLabel": null,
          "consignmentRate": null,
          "supplierDiff1": null,
          "supplierDiff2": null,
          "supplierDiff3": null,
          "supplierDiff4": null,
          "palletName": "PAL",
          "caseName": "CS",
          "innerName": "INR",
          "supplierDiscontinueDate": null,
          "directShipInd": "N",
          "primaryCaseSize": null,
          "createDateTime": "2021-10-11T18:15:35.000Z",
          "updateDateTime": "2021-10-11T18:15:35.000Z",
          "customFlexAttribute": null,
          "itemSupplierCountry": [
            {
              "originCountry": "US",
              "primarySupplierInd": "Y",
              "primaryCountryInd": "Y",
              "unitCost": 10,
              "leadTime": null,
              "pickupLeadTime": null,
              "supplierPackSize": 1,
              "innerPackSize": 1,
              "roundLevel": "C",
              "minimumOrderQuantity": null,
              "maximumOrderQuantity": null,
              "packingMethod": "HANG",
              "defaultUop": "EA",
              "ti": 1,
              "hi": 1,
              "costUom": "EA",
              "toleranceType": null,
              "maximumTolerance": null,
              "minimumTolerance": null,
              "roundToInnerPercentage": 50,
              "roundToCasePercentage": 50,
              "roundToLayerPercentage": 50,
              "roundToPalletPercentage": 50,
              "supplierHierarchyType1": null,
              "supplierHierarchyLevel1": null,
              "supplierHierarchyType2": null,
              "supplierHierarchyLevel2": null,
              "supplierHierarchyType3": null,
              "supplierHierarchyLevel3": null,
              "negotiatedItemCost": null,
              "extendedBaseCost": null,
              "inclusiveCost": null,
              "baseCost": null,
              "purchaseType": 0,
              "calculationBasis": null,
              "purchaseRate": null,
              "createDateTime": "2021-10-11T18:15:35.000Z",
              "updateDateTime": "2021-10-11T18:15:35.000Z",
              "customFlexAttribute": null,
              "itemSupplierCountryDimension": null
            }
          ],
          "itemSupplierCountryOfManufacture": [
            {
              "countryId": "US",
              "primaryInd": "Y",
              "createDateTime": "2021-10-11T18:15:35.000Z",
              "updateDateTime": "2021-10-11T18:15:35.000Z"
            }
          ],
          "itemSupplierUom": null
        }
      ],
      "itemUda": {
        "udaLov": null,
        "udaFreeform": null,
        "udaDate": null
      },
      "itemImage": null,
      "referenceItem": [
        {
          "referenceItem": "100450050",
          "primaryInd": "N",
          "formatId": null,
          "prefix": null,
          "itemNoType": "ITEM",
          "createDateTime": "2021-10-11T18:18:18.000Z",
          "updateDateTime": "2021-10-11T18:20:23.000Z"
        },
        {
          "referenceItem": "100450068",
          "primaryInd": "Y",
          "formatId": null,
          "prefix": null,
          "itemNoType": "ITEM",
          "createDateTime": "2021-10-11T18:20:15.000Z",
          "updateDateTime": "2021-10-11T18:20:32.000Z"
        }
      ],
      "itemBOM": null,
      "itemTicket": null,
      "relatedItem": null,
      "cacheTimestamp": "2022-02-15T12:21:17.002Z" 
 }
],
    "hasMore": true,
    "limit": 0,
    "count": 0,
    "links": [
    {
      "href": "https://<hostname>:<portnumber>/MerchIntegrations/services/foundation/item?itemLevel=1&tranLevel=1&deptId=1414&classId=1515&subclassId=1616&limit=1000&since=1970-01-01T00:00:00.001Z&before=2022-03-30T09:49:44.480246+00: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

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

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_RELATED_ITEM

No

Yes

No

No

Item VAT Publish Services

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}&offsetkey={offsetkey}&limit={limit}&since={since}&before={before}

/MerchIntegrations/services/foundation/item/vat/{item}
Input Parameters

Table 5-196 /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.

activeDate

No

String

Active date for item VAT on future cost.

Format: YYYY-MM-DD

vatType

No

String

VAT Type.

Valid values are R - Retail, C - Cost, B - Both.

offsetkey

No

String

Offset Key. Valid Value is an Item ID.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Table 5-197 /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 field holds the ID of the item.

vatRegion

Number

This field contains the number of the Value Added Tax region a location belongs to.

activeDate

String

This field holds the active date for record on future cost.

vatType

String

This field indicates the type of VAT. Valid values include R (Retail), C (Cost), B (Both).

vatCode

String

This field contains the alphanumeric identification for the VAT code.

vatRate

Number

This field contains the VAT rate for the item-location.

reverseVatInd

String

This field contains the VAT rate for the item-location.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

cacheTimestamp

String

This field specifies 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.

hasMore

This is dependent on limit value. If the total rows are more than the limit defined, 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

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

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-198 SvcprovSalesServiceRecRDO

Parameter Name Data Type

recType

String

fileCreateDate

String (Format :YYYYMMDDHHMMSS)

businessDate

String(Format: YYYYMMDD)

store

Number

referenceNbr

String

rtlogOrgSys

String

transactionHeadTbl

List<SvcprovSalesTheadRecRDO>

salesFtailTbl

List<SvcprovSalesCounterRecRDO>

Table 5-199 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

refNo26

String

refNo27

String

tranProcessSys

String

refNo28

String

refNo29

String

refNo30

String

refNo31

String

transactionHeadAttributeTbl List<SvcprovSalesAttrRecRDO>

transactionCustomerTbl

List< SvcprovSalesTcustRecRDO>

customerAttributeTbl

List< SvcprovSalesAttrRecRDO>

transactionItemTbl

List< SvcprovSalesTitemRecRDO>

transactionTaxTbl

List< SvcprovSalesTtaxRecRDO>

transactionPaymentTbl

List< SvcprovSalesTpymtRecRDO>

transactionTenderTbl

List<SvcprovSalesTtendRecRDO>

transactionTrailerTbl

List<SvcprovSalesCounterRecRDO>

Table 5-200 SvcprovSalesAttrRecRDO

Parameter Name Data Type

recType

String

attributeType

String

attributeValue

String

Table 5-201 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

email

String

birthdate

String (Format: YYYYMMDD)

Table 5-202 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

custOrdDate

String(Format: YYYYMMDDHHMMSS)

fulfillmentOrdNo

String

noInventoryReturn

String

salesType

String

returnWh

Number

returnDeposition

String

originalStore

Number

originalTransactionNo

Number

fulfillmentLocType

String

fulfillmentLoc

Number

postingStore

String

transactionItemAttributeTbl

List<SvcprovSalesAttrRecRDO>

transactionItemDiscountTbl

List<SvcprovSalesIdiscRecRDO>

transactionItemTaxTbl

List<SvcprovSalesIgtaxRecRDO>

Table 5-203 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<SvcprovSalesAttrRecRDO>

Table 5-204 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<SvcprovSalesAttrRecRDO>

Table 5-205 SvcprovSalesTtaxRecRDO

Parameter Name Data Type

recType

String

taxCode

String

taxAmount

BigDecimal

refNo17

String

refNo18

String

refNo19

String

refNo20

String

transactionTaxAttributeTbl

List<SvcprovSalesAttrRecRDO>

Table 5-206 SvcprovSalesTpymtRecRDO

Parameter Name Data Type

recType

String

paymentAmount

BigDecimal

Table 5-207 SvcprovSalesTtendRecRDO

Parameter Name Data Type

recType

String

tendTypeGroup

String

tendTypeId

Number

tenderAmount

BigDecimal

ccNo

String

ccAuthNo

String

ccAuthSource

String

ccCardholderVerification

String

ccExpirationDate

String(Format: YYYYMMDD)

ccEntryMode

String

ccTerminalId

String

ccSpecialCondition

String

ccToken

String

voucherNo

String

couponNbr

String

couponRefNo

String

chequeAccNo

String

chequeNo

Number

identificationMethod

String

identificationId

String

originalCurrency

String

originalCurrencyAmount

BigDecimal

refNbr9

String

refNbr10

String

refNbr11

String

refNbr12

String

transactionTenderAttributeTbl

List<SvcprovSalesAttrRecRDO>

Table 5-208 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
 }
 ]
 }
 ]
 }
 ],
 "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-209 SVCPROV_SALES_STATUS_REC

Parameter Name Data Type

statusMsg

String

salesErrTbl

List< SVCPROV_SALES_FAIL_REC >

Table 5-210 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

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-211 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

No

Collection of Object

References a collection of appointments.

Table 5-212 Items - Object. See list of elements for detail

Element Name Required Data Type Description

location

Yes

Number (10)

This field contains the location where the merchandise has been sent.

appointmentNo

Yes

Number (9)

This field 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 - Modified Scheduled, AR - Arrived, AC - Closed.

details

No

Collection of Object

References a collection of appointment details.

Table 5-213 Details - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

This field contains the items shipped to the location.

unitQuantity

Yes

Number (12,4)

This field contains the quantity of the item slated to be sent to the location.

documentNo

Yes

Number (12)

This field contains the purchase order, transfer or allocation corresponding to the shipped merchandise.

documentType

Yes

String (1)

This field indicates the type of document corresponding to the shipped merchandise. Possible choices are Purchase Order (P), Transfer (T), or Allocation (A).

asnNo

No

String (30)

This field 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"
    }
  ]
}

Manage Cost Change Service

Functional Area

Cost – Cost Change

Business Overview

This service is used by an external source, usually a supplier, to create and maintain future-dated 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 (for update) or DEL (for delete)

costChange

Yes

Yes

Yes

number

Holds the ID that uniquely identifies the cost change. The ID should not overlap with cost changes created through other modes such as induction or the Merchandising UI.

costChangeDesc

Yes

Yes

No

string

Cost change description. This along with the cost change number identifies the cost change for modification 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_REASON table.

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

costChangeOrigin

Yes

Yes

No

string

Contains a code that identifies 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 - By Supplier, SKU - By SKU

approvalDate

Yes

Yes

No

date

Contains the date on which the cost change was last approved. The date format should be YYYY-MM-DD

approvalId

No

No

No

string

Contains the user ID who last approved the cost change.

suppItemDetails

Child Node – cost change detail record. Either this node is populated or the detail location node.

suppItemLocDetails

Child Node – cost change detail location record. Either this node or the detail node is populated.

customFlexAttribute

Child Node – custom flex 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 (for update) or DEL (for delete)

supplier

Yes

Yes

Yes

number

Contains the number that identifies the supplier associated with the cost change.

originCountryId

Yes

Yes

Yes

string

The country where the item was manufactured or significantly altered.

item

Yes

Yes

Yes

string

Unique alphanumeric value that identifies 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 or P - Percentage.

costChangeValue

Yes

Yes

No

number

Holds the value of cost change

recalcOrdInd

No

Yes

No

string

This field 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

defaultBracketInd

No

No

No

string

This field 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 defined 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)

supplier

Yes

Yes

Yes

number

Contains the number that identifies the supplier associated with the cost change.

originCountryId

Yes

Yes

Yes

string

The country where the item was manufactured or significantly altered.

item

Yes

Yes

Yes

string

Unique alphanumeric value that identifies the item.

locType

Yes

Yes

Yes

string

Contains the type of the location. Valid values are Store and Warehouse.

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 sccext batch 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.

costChangeType

Yes

Yes

No

string

Describes the type of cost change

costChangeValue

Yes

Yes

No

number

Holds the value of the cost change

recalcOrdInd

No

Yes

No

string

This field 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

defaultBracketInd

No

No

No

string

This field 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 defined as the default bracket.

calculationBasis

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 (for create), 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",
    "approvalDate": "2022-04-18",
    "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 defined by cost type IIPS. Default configured 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 identifies the cost change.

field

string

This will contain the field in error.

item

string

Unique alphanumeric value that identifies the item.

supplier

number

Contains the number that identifies the supplier associated with the cost change.

originCountryId

string

The country where the item was manufactured or significantly 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

COST_SUSP_SUP_HEAD_CFA_EXT

Yes

Yes

No

Yes

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. When a new freight term is created, this service will first validate that all required fields such as terms, description, enabled flag, and 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 dates and enabled flag will be updated.

Service Type

PUT

ReST URL
MerchIntegrations/services/financials/terms/freightTerm/manage
Input Payload Details

Table 5-214 Manage - Object. See list of elements for detail

Element Name Required Data Type Description

freightTerms

Yes

String (30)

Contains a number that uniquely identifies the freight terms.

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 field 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",
  "description": "Freight Term 01",
  "enabledFlag": "Y",
  "startActiveDate": "2001-12-31",
  "endActiveDate": "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 Supplier Evaluation Codes

Functional Area

Foundation - Suppliers

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-215 Codes - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

 

Table 5-216 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 and STATUS.

code

Yes

String (255)

This is the supplier evaluation code which contains valid values for the code type.

locale

No

Collection of Object

 

Table 5-217 Locale - Object. See list of elements for detail

Element Name Required Data Type Description

language

Yes

String (255)

This field contains the Supplier Evaluation language in which the translated text is maintained.

description

Yes

String (255)

This field contains the translated value of the code.

Table 5-218 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 and STATUS.

code

Yes

String (255)

This is the supplier evaluation code which contains valid values for the code type.

errorMessage

Yes

String (2000)

This field contains the error message.

Sample Input Message

{
  "items": [
    {
      "type": "EVALUATION_TYPE",
      "code": "SITE_AUDIT",
      "locale": [
        {
          "language": "en_GB",
          "description": "Site Audit"
        }
      ]
    }
  ]
}
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. The element businessError will be 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"
  ]
}

Manage Supplier Evaluation Transactions

Functional Area

Foundation - Suppliers

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, and so on.

Service Type

PUT

ReST URL
MerchIntegrations/services/foundation/suppliers/evaluation/transactions
Input Payload Details

Table 5-219 Transactions - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

 

Table 5-220 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 field determines the type of transaction. This identifies the message type as Audit, Assessment, Summary, Document or Site Score.

evaluationType

Yes

String (255)

This field contains the code specific 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 configure their own set of values in addition or instead of these

typeBusinessKey

No

String (255)

This field 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 field contains the name of the assessment or audit code.

createdOn

No

date-time

This field contains the timestamp of the event.

dueDate

No

date

This field contains the due date of the latest assessment for the assessment type for this site.

status

No

String (255)

This field contains the status of the supplier evaluation.

due

No

String (5)

For assessments, this field 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 field 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.

completionDate

No

date

For documents, this field contains the date on which the document was last published. For assessments, this field 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 field 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 field 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 field contains the numeric score of the most recent assessment at completed status for this assessment type for this site. For audits, this field 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 field contains the numeric value of the site's latest SE score.

auditOpenIssues

No

Number (10)

This field 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 field 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 field contains the count of total issues/non-conformances of the latest audit/visit based on the audit template for this site.

Table 5-221 TypeBusinessKeyDescription - Object. See list of elements for detail

Element Name Required Data Type Description

language

Yes

String (255)

This field contains the Supplier Evaluation language in which the translated text is maintained.

typeDescription

Yes

String (255)

This field contains the translated value of the typeBusinessKeyDescription.

Table 5-222 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 field determines the type of transaction. This identifies the message type as Audit, Assessment, Summary, Document or Site Score.

evaluationType

Yes

String (255)

This field contains the code specific 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 configure their own set of values in addition or instead of these

typeBusinessKey

No

String (255)

This field contains the code of the assessment type or the audit template.

recordBusinessKey

No

String (255)

This field 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": "en_GB",
          "typeDescription": "Site Audit"
        }
      ],
      "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)

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. The element businessError will be present if the payload passes schema validation but an exception is caught while processing the business logic.

Table 5-223 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 field determines the type of transaction. This identifies the message type as Audit, Assessment, Summary, Document or Site Score.

evaluationType

Yes

String (255)

This field contains the code specific 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 configure their own set of values in addition or instead of these

typeBusinessKey

No

String (255)

This field contains the code of the assessment type or the audit template.

recordBusinessKey

No

String (255)

This field 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": [
    "Error message"
  ]
}

MerchHierarchy Detail Service

This section describes the MerchHierarchy Detail service.

Business Overview

MerchHierarchyDetail service allows user to retrieve full merchandising hierarchy information.

Service Type

Get

ReST URL

/MerchHierarchy/merchHierarchy

Input Parameters

NA

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

Merchandise Hierarchy Publication Services

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 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 of sort_order_seq and node id.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Input Query Parameter for /MerchIntegrations/services/foundation/merchhier/class
Parameter Name Required 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 specific class, value for both dept and class should be provided.

Input Query Parameter for /MerchIntegrations/services/foundation/merchhier/subclass
Parameter Name Required 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 specific subclass, value for dept and class and subclass should be provided.

Input Path Parameter for /MerchIntegrations/services/foundation/merchhier/division/{division}
Parameter Name Required Data Type Description

division

Yes

Number

This field contains the number which uniquely identifies the division of the company

Input Path Parameter for /MerchIntegrations/services/foundation/merchhier/groups/{group}
Parameter Name Required Data Type Description

group

Yes

Number

This field contains the number which uniquely identifies the group.

Input Path Parameter for /MerchIntegrations/services/foundation/merchhier/deps/{dept}
Parameter Name Required Data Type Description

dept

Yes

Number

This field contains the number which uniquely identifies the department.

Input Path Parameter for /MerchIntegrations/services/foundation/merchhier/class/{uniqueClassId}
Parameter Name Required Data Type Description

uniqueClassId

Yes

Number

This field contains the number that uniquely identifies the department/class combination.

Input Path Parameter for /MerchIntegrations/services/foundation/merchhier/subclass/{uniqueSubclassId}
Parameter Name Required Data Type Description

uniqueSubclassId

Yes

Number

This field contains the number that uniquely identifies the department/class/subclass combination.

Output - Division
Name Data Type Description

action

String

Action for division details. Valid Values are INSERT, UPDATE and DELETE.

hierarchylevel

String

This field contains the Merchandising Hierarchy Level.

division

Number

This field contains the number which uniquely identifies the division of the company.

divisionName

String

This field contains the name which, along with the division number, identifies the division of the company.

buyer

Number

This field contains the number of the buyer associated with the division.

merchantId

String

This field contains the number of the merchandiser associated with the division.

totalMarketAmount

Number

This field contains the total market amount that is expected for the division. The field can be used for analytics or reporting.

company

Number

This field contains the number which uniquely identifies the Company.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

cacheTimestamp

String

This field specifies 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 field contains the Merchandising Hierarchy Level.

group

Number

This field contains the number which uniquely identifies the group.

groupName

String

This field contains the description which, along with the group number, identifies the group.

Buyer

Number

This field contains the number of the buyer associated with the division.

merchantId

String

This field contains the number of the merchandiser associated with the division.

division

Number

This field contains the number which uniquely identifies the division of the company.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

cacheTimestamp

String

This field specifies 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 field contains the Merchandising Hierarchy Level.

dept

Number

This field contains the number which uniquely identifies the department.

deptName

String

This field contains the description which identifies the department.

buyer

Number

This field contains the number of the buyer associated with the division.

purchaseType

Number

This field Contains a code which indicates whether items in this department are, by default, owned (normal) merchandise, consignment, or concession.

totalMarketAmount

Number

This field contains the total market amount that is expected for the division. The field can be used for analytics or reporting.

merchantId

String

This field contains the number of the merchandiser associated with the division.

group

Number

This field contains the number which uniquely identifies the group.

budgetMarkup

Number

This field contains the number of the group in which the department exists.

profitCalcType

Number

This field contains a number which indicates whether profit will be calculated by cost or retail, indicating the accounting method to be used for the department.

markupCalcType

String

This field contains the code which determines how markup is calculated in this department.

otbCalcType

String

This field contains the code which determines how markup is calculated in this department.

budgetedIntakePercent

Number

This field 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 field is no longer used by Merchandising and will always be defaulted to Y.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttributes

 

This list holds custom flex attributes for the Department.

cacheTimestamp

String

This field specifies date and time when Merch Hier record was last maintained.

Output - Class
Name Data Type Description

action

String

Action for class details. Valid values are INSERT, UPDATE and DELETE.

hierarchylevel

String

This field contains the Merchandising Hierarchy Level.

class

Number

Contains the number which uniquely identifies the class within the department.

className

String

This field contains the name of the class which, along with the class number, identifies the class.

classVATInd

String

This field is no longer used by Merchandising and will always default to N.

dept

Number

This field contains the number of the department of which the class is a member.

uniqueClassId

Number

This field contains the number that uniquely identifies 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 field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttributes

 

This list holds custom flex attributes for the Department.

cacheTimestamp

String

This field specifies date and time when Merch Hier record was last maintained.

Output - Subclass
Name Data Type Description

action

String

Action for subclass details. Valid values are INSERT, UPDATE and DELETE.

hierarchylevel

String

This field contains the Merchandising Hierarchy Level.

subclass

Number

This field Contains the number which uniquely identifies the subclass within the department and class.

subclassName

String

This field Contains the name of the subclass which, along with the subclass number, uniquely identifies the subclass.

class

Number

Contains the number which uniquely identifies the class within the department.

dept

Number

This field contains the number of the department of which the class is a member.

uniqueSubclassId

Number

This field contains the number that uniquely identifies 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 field contains the number that uniquely identifies 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 field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttributes

 

This list holds custom flex attributes for the Department.

cacheTimestamp

String

This field specifies date and time when Merch Hier record was last maintained.

Output - Custom Flex Attribute
Name Data Type Description

name

String

This field will hold the custom flex attribute name.

value

String

This field will hold the numeric or string value of the custom flex attribute.

valueDate

String

This field will hold the date value of the custom flex attribute.

createDateTime

String

This field will hold the date time when the custom flex attribute was inserted.

updateDateTime

String

This field will hold the date time when the custom flex attribute was last updated.

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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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

Obligations Upload Services

This section describes the Obligations Upload Services.

Function Area

Import export

Business Overview

The primary role of these services is to support requests from trading partners or suppliers for bulk uploads of obligations to send to Merchandising.

Create Obligation

Business Overview

This service creates obligations by calling the SVCPROV_OBLIGATION package and then calling the core obligation package to validate and insert data into 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 'PO' or 'POIT', then component locations can be added. Reallocation to ALC will be done after obligation creation. If an obligation is created in approved status, then an invoice will be created.

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>

RestObligationCompRecRDO

Parameter Name Data Type

compId

String

allocateToAlc

String

allocationType

String

allocationBasisUom

String

amt

BigDecimal

rate

BigDecimal

perCount

BigDecimal

perCountUom

String

obligationCompLocTbl

List<RestObligationCompLocRecRDO>

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<RestObligationSuccessRecRDO>

successObligationCount

BigDecimal

failObligationTbl

List<RestObligationFailRecRDO>

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.

It will insert data into the obligation, obligation_comp and obligation_comp_loc tables, based on obligation levels. It will also insert data to ALC tables. For an approved obligation, it will insert data to INVC 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

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

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 pending obligations by calling the SVCPROV_OBLIGATION package and then calling the core obligation package to validate and insert data into the Merchandising tables.

This service accepts an obligation key, or supplier/invoice, or partner type/partner/invoice combination to identify the existing obligation. Add component details which user wants to create. For obligation levels 'PO' and 'POIT', the user can also add location details. Based on validations, components will also be created. Reallocation to 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

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>

RestObligationCompRecRDO

Parameter Name Data Type

compId

String

allocateToAlc

String

allocationType

String

allocationBasisUom

String

Amt

BigDecimal

Rate

BigDecimal

perCount

BigDecimal

perCountUom

String

obligationCompLocTbl

List<RestObligationCompLocRecRDO>

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<RestObligationSuccessRecRDO>

successObligationCount

BigDecimal

failObligationTbl

List<RestObligationFailRecRDO>

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.

It will insert data into the tables obligation_comp and obligation_comp_loc (only for 'PO' and 'POIT'). It will also insert data to into 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

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 existing pending obligations by calling the SVCPROV_OBLIGATION package and then calling the core obligation package to validate and insert data into the Merchandising tables.

This service accepts an obligation key, or supplier/invoice, or partner type/partner/invoice combination to identify the existing obligation. Add the component ID for which the user wants to create locations. Add valid location details. Reallocation to ALC will be 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

invoiceDate

Timestamp

qty

BigDecimal

qtyUom

String

currency

String

exchangeRate

BigDecimal

checkAuthNo

String

paidAmt

BigDecimal

paidDate

Timestamp

comments

String

obligationCompTbl

List<RestObligationCompRecRDO>

RestObligationCompRecRDO

Parameter Name Data Type

compId

String

allocateToAlc

String

allocationType

String

allocationBasisUom

String

amt

BigDecimal

rate

BigDecimal

perCount

BigDecimal

perCountUom

String

obligationCompLocTbl

List<RestObligationCompLocRecRDO>

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<RestObligationSuccessRecRDO>

successObligationCount

BigDecimal

failObligationTbl

List<RestObligationFailRecRDO>

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 records by calling the SVCPROV_OBLIGATION package and then calling the core obligation package to validate and update data in the Obligation table.

This service accepts an obligation key, or supplier/invoice, or partner type/partner/invoice combination to identify the existing obligation. The user can modify the mandatory fields below when the obligation is in pending status. Reallocation to ALC will be performed for pending obligations. If the user updates the status to approved, then an invoice will be created.

  • 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>

RestObligationCompRecRDO

Parameter Name Data Type

compId

String

allocateToAlc

String

allocationType

String

allocationBasisUom

String

amt

BigDecimal

rate

BigDecimal

perCount

BigDecimal

perCountUom

String

obligationCompLocTbl

List<RestObligationCompLocRecRDO>

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<RestObligationSuccessRecRDO>

successObligationCount

BigDecimal

failObligationTbl

List<RestObligationFailRecRDO>

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, or supplier/invoice, or partner type/partner/invoice combination to identify the existing obligation. The user can modify component level fields. 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>

RestObligationCompRecRDO

Parameter Name Data Type

compId

String

allocateToAlc

String

allocationType

String

allocationBasisUom

String

amt

BigDecimal

rate

BigDecimal

perCount

BigDecimal

perCountUom

String

obligationCompLocTbl

List<RestObligationCompLocRecRDO>

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<RestObligationSuccessRecRDO>

successObligationCount

BigDecimal

failObligationTbl

List<RestObligationFailRecRDO>

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, or supplier/invoice, or partner type/partner/invoice combination to identify the existing obligation. The user can modify component level fields. Reallocation to ALC will be done after the 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

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>

RestObligationCompRecRDO

Parameter Name Data Type

compId

String

allocateToAlc

String

allocationType

String

allocationBasisUom

String

amt

BigDecimal

rate

BigDecimal

perCount

BigDecimal

perCountUom

String

obligationCompLocTbl

List<RestObligationCompLocRecRDO>

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<RestObligationSuccessRecRDO>

successObligationCount

BigDecimal

failObligationTbl

List<RestObligationFailRecRDO>

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

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, or supplier/invoice, or 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

exchangeRate

BigDecimal

checkAuthNo

String

paidAmt

BigDecimal

paidDate

Timestamp

comments

String

obligationCompTbl

List<RestObligationCompRecRDO>

RestObligationCompRecRDO

Parameter Name Data Type

compId

String

allocateToAlc

String

allocationType

String

allocationBasisUom

String

amt

BigDecimal

rate

BigDecimal

perCount

BigDecimal

perCountUom

String

obligationCompLocTbl

List<RestObligationCompLocRecRDO>

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<RestObligationSuccessRecRDO>

successObligationCount

BigDecimal

failObligationTbl

List<RestObligationFailRecRDO>

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 obligation key, or supplier/invoice, or partner type/partner/invoice combination to identify the obligation. Pass the component ID which the user wants to delete. This service will delete the component. 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

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>

RestObligationCompRecRDO

Parameter Name Data Type

compId

String

allocateToAlc

String

allocationType

String

allocationBasisUom

String

amt

BigDecimal

rate

BigDecimal

perCount

BigDecimal

perCountUom

String

obligationCompLocTbl

List<RestObligationCompLocRecRDO>

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 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<RestObligationSuccessRecRDO>

successObligationCount

BigDecimal

failObligationTbl

List<RestObligationFailRecRDO>

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

ALC_COMP_LOC

Yes

No

Yes

Yes

Order Publish Services

Endpoints
MerchIntegrations/services/procurement/order
MerchIntegrations/services/procurement/order/{orderNo}
Functional Area

Purchase Order

Business Overview

This service can be used by external applications to get all or selected orders and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/procurement/order?supplier={supplier}&orderOriginatedInd={orderOriginatedInd}&notBeforeDate={notBeforeDate}&notAfterDate={notAfterDate}&importOrderInd={importOrderInd}&locType={locType}&offsetkey={offsetkey}&limit={limit}&since={since}&before={before}

/MerchIntegrations/services/procurement/order/{orderId}
Input Parameters

Table 5-224 /MerchIntegrations/services/ procurement/order

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

supplier

No

Number

Supplier Number.

orderOriginatedInd

No

Number

Indicates where the order originated. Valid values include:

0 - Current System Generated (used by automatic replenishment)

1 - Past System Generated

2 - Manual

3 - Buyer Worksheet

4 - Consignment Sales Generated PO

5 - Vendor Generated

6 - AIP Generated PO

7 - SIM Generated PO

8 - Allocation Generated PO

9 - Consignment Transfer Generated PO

10 - Consignment Ownership Generated PO

notBeforeDate

No

Number

The first date that delivery of the order will be accepted.

notAfterDate

No

Number

The last date that delivery of the order will be accepted.

importOrderInd

No

Number

Indicates if purchase order is an import order. Valid values are Y – Yes and N – No.

locType

No

String

Order Location Type. Valid values are:

Store (S) only

Warehouse (W) only

Store-Warehouse (SW) that is, both

offsetkey

No

String

Offset Key. Valid Value is an Order Number.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Table 5-225 /MerchIntegrations/services/procurement/order/{orderId}

Parameter Name Required Data Type Description

orderId

Yes

Number

Order Number.

Output
Name Data Type Description

action

String

Action for Order details. Valid Values are INSERT, UPDATE and DELETE.

docType

String

This field indicates the type of document this message is for. Valid value is P for purchase order.

orderNo

Number

This field contains the number to uniquely identify an order within the system.

status

String

This field indicates the status of the order.

orderType

String

This field indicates the type of order.

orderTypeDescription

String

This field contains the order type description.

dept

Number

This field 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

String

This field contains the name of the department.

buyer

Number

This field contains the number associated with the buyer for the order.

buyerName

String

This field contains the name of the authorized buyer.

supplier

Number

This field contains the vendor number who will provide the merchandise specified in the order.

promotion

Number

This field contains the promotion number associated with the order to provide a link between the order dialog and the promotions dialog.

promotionDescription

String

This field contains a description of the promotion. This value comes from Pricing.

qualityControlInd

String

This field determines whether quality control will be required when items for this order are received.

notBeforeDate

String

This field contains the first date that delivery of the order will be accepted.

notAfterDate

String

This field contains the last date that delivery of the order will be accepted.

otbEowDate

String

This field contains the OTB budget bucket the order amount should be placed into.

earliestShipDate

String

This field 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

String

This field 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

String

This field contains the date when the order is closed.

terms

String

This field 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

String

This field contains the alphanumeric representation of Term Name which acts as the Term code in Oracle Financials.

freightTerms

String

This field contains an indicator that references what freight terms are related to the order.

paymentMethod

String

This field indicates how the purchase order will be paid.

paymentMethodDescription

String

This field contains the description of the payment method.

backhaulType

String

This field contains the type of backhaul allowance that will be applied to the order.

backhaulTypeDescription

String

This field contains the description of the backhaul type.

backhaulAllowance

Number

This field contains the backhaul allowance value.

shipMethod

String

This field contains the method used to ship the items on the purchase order from the country of origin to the country of import.

shipMethodDescription

String

This field contains the description for the shipping method.

purchaseType

String

This field indicates what is included in the supplier's cost of the item.

purchaseTypeDescription

String

This field Contains the description for the purchase type.

shipPayMethod

String

This field contains the code indicating the payment terms for freight charges associated with the order.

shipPayMethodDescription

String

This field contains the description of the given shipment payment method.

fobTransactionResponsibility

String

This field contains the code indicating the type of the location that is responsible for the transportation of the order.

fobTransactionResponsibilityCodeDescription

String

This field contains the description of the FOB Trans Res.

fobTransactionResponsibilityDescription

String

This field contains a user entered field describing the code for the location responsible for the transportation of the order.

fobTitlePass

String

This field 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.

fobTitlePassCodeDescription

String

This field contains the description for fob_title_pass_code.

fobTitlePassDescription

String

This contains an entered field describing the code where the title of the merchandise is to be passed. Could be a city name, factory name, or place of origin.

vendorOrderNo

String

This field 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 to a Merchandising order when the order is created on-line.

exchangeRate

Number

This field contains the rate of exchange used for the purchase order between the order and primary currencies.

factory

String

This field contains the factory at which the items on the purchase order are made. This field is only available when the system is running Import functionality.

factoryDescription

String

This field contains the description of the factory.

agent

String

This field contains the agent that is used in the purchase of the items on the purchase order. This field is only available when the system is running Import functionality.

agentDesc

String

This field contains the description of the agent.

dischargePort

String

This field contains the port at which the items on the purchase order will enter the country of import. This field is only available when the system is running Import functionality.

dischargePortDescription

String

This field contains the description of the discharge port.

ladingPort

String

This field contains the port from which the items on the purchase order are shipped. This field is only available when the system is running Import functionality.

ladingPortDescription

String

This field contains the description of the lading port.

freightContractNo

String

This field contains the number of the contract with a shipper that will give specific freight rates. This field is only available when the system is running Import functionality.

poType

String

Contains the value associated with the PO_TYPE for the order. Valid values are in the PO_TYPE table.

poTypeDescription

String

This field contains the description of the PO Type.

preMarkInd

String

This field indicates whether a supplier has agreed to break an order into separate boxes so that the boxes can be sent directly to stores.

currencyCode

String

This field contains the currency code for the order. When creating an order within Merchandising, this field will always default to the currency of the supplier, but it can be overwritten.

contractNo

Number

This field contains the contract number associated with this order.

pickupLocation

String

This field contains the location at which the order will be picked up, if the order is a Pickup order.

pickupNo

String

This field contains the reference number for the Pickup order.

pickupDate

String

This field contains the date when the order can be picked up from the supplier. This field is only required if the Purchase Type of the order is Pickup.

appointmentDatetime

String

This field contains the date and time of the receiving appointment at the warehouse.

comments

String

This field contains the miscellaneous comments attached to the purchase order.

writtenDate

String

This field specifies date the order was created within the system.

orderOriginatedInd

Number

This field specifies date the order was created within the system.

originalApprovalDate

String

This field specifies the date that the order was originally approved.

originalApprovalId

String

This field indicates where the order was approved. It will be the user ID of the person approving the order for all orders manually approved on-line and will contain ‘Repln’ for orders automatically approved in the replenishment process.

ediSentInd

String

This field indicates whether the order has been sent via EDI.

ediOrderInd

String

This field indicates whether the order will be transmitted to the supplier via an Electronic Data Exchange transaction.

importOrderInd

String

This field indicates if the purchase order is an import order.

importCountryId

String

This field specifies identifier of the country into which the items on the order are being imported.

partnerType1

String

This field contains Partner 1 type.

partner1

String

This field contains additional Partner 1.

partnerType2

String

This field contains Partner 2 type.

partner2

String

This field contains additional Partner 2.

partnerType3

String

This field contains Partner 3 type.

partner3

String

This field contains additional Partner 3.

importType

String

This field specifies importer/exporter assigned to the supplier of the purchase order.

importId

Number

This field identifies the importer/exporter assigned to the supplier. This references a warehouse.

clearingZoneId

String

This field contains the clearing zone id.

routingLocationId

String

This field contains routing location for the import order.

deliverySupplier

Number

This field holds the supplier / supplier site from where the goods are delivered.

wfOrderNo

Number

This field contains the franchise order number for which the purchase order was created.

exchangeRateInd

String

This field contains exchange rate on a document.

customerOrderNo

String

This field holds the master customer order number from the Order Management System.

fullfillmentOrderNo

String

This field holds the number from the Order Management System (OMS) related to the fulfillment details. One or more fulfillment orders could relate back to a single customer order in OMS.

customerOrderInd

String

This field holds the master customer order number from the Order Management System.

createDateTime

String

This column holds the record creation date.

updateDateTime

String

This column holds the date when the record was last updated.

customFlexAttribute

 

This list holds custom flex attributes for purchase order.

details

 

This list holds details for purchase order.

cacheTimestamp

String

This field specifies date and time when the order record was last maintained.

Table 5-226 customFlexAttribute

Name Data Type Description

name

String

This field will hold the custom flex attribute name.

value

String

This field will hold the numeric or string value of the custom flex attribute.

valueDate

String

This field will hold the date value of the custom flex attribute.

createDateTime

String

This field will hold the date time when the custom flex attribute was inserted.

updateDateTime

String

This field will hold the date time when the custom flex attribute was last updated.

Table 5-227 details

Name Data Type Description

item

String

This field contains the unique alphanumeric value to identify the item included in the purchase order.

referenceItem

String

This field contains the unique alphanumeric value to identify the reference item.

physicalLocationType

String

This field contains the type of location in the location field.

physicalLocation

Number

This field contains the actual physical location that the item will be ordered to. This field may contain a store or a physical warehouse.

virtualWarehouse

Number

This field contains the location of the order.

physicalStoreType

String

This field indicates the store type of the physical_location store. This is only populated if physical location type is Store.

physicalStockholdingInd

String

Indicates if the physical location store is stockholding or not.

physicalQuantityOrdered

Number

This field indicates the total quantity ordered to the physical location.

unitCost

Number

This field contains the unit cost for the Item/Location on the order, including discounts (deal/bracket/allowance), but not landed cost components. This field is stored in order currency.

originCountryId

String

This field contains the identifier of the country into which the items on the order are being imported.

supplierPackSize

Number

This field contains the supplier pack size for this order/item.

earliestShipDate

String

This field contains the earliest date that the item can be shipped by the supplier.

latestShipDate

String

This field contains the date after which the item can not be shipped by the supplier.

pickupLocation

String

This field contains the location at which the order will be picked up, if the order is a Pickup order.

pickupNo

String

This field not used in in Merchandising.

packingMethod

String

This field indicates whether the packing method of the item in the container is flat or hanging. Valid values are defined under code type PKMT.

roundLevel

String

This column will be used to determine how order quantities will be rounded to Case, Layer and Pallet.

transferOrderLinkId

Number

This field contains a reference number to link the item on the transfer to any purchase orders that have been created to allow the from location (ie warehouse) on the transfer to fulfill the transfer quantity to the to location (ie store) on the transfer.

estimatedInStockDate

String

This field contains the date that the item on the PO is expected to be available to ship from the PO location to another location.

transactionUom

String

This field 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 item's standard unit of measure

itemLineNo

Number

This field indicates the item line number from customer orders.

orderItemCreateDateTime

String

This column holds the record order detail item creation date.

orderItemUpdateDateTime

String

This column holds the date when order detail item was last updated.

orderItemLocCreateDateTime

String

This column holds the record order detail item creation date.

orderItemLocUpdateDateTime

String

This column holds the date when order detail item was last updated.

orderItemCustomFlexAttribute

 

This list holds custom flex attributes for purchase order item details.

orderItemLocationCustomFlexAttribute

 

This list holds custom flex attributes for purchase order item location details.

Table 5-228 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.

hasMore

This is dependent on limit value. If the total rows are more than the limit defined, 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",
      "docType": "P",
      "orderNo": 10001,
      "status": "C",
      "orderType": "N/B",
      "orderTypeDescription": "N/B",
      "dept": null,
      "deptName": null,
      "buyer": null,
      "buyerName": null,
      "supplier": 24241,
      "promotion": null,
      "promotionDescription": null,
      "qualityControlInd": "N",
      "notBeforeDate": "2021-08-02",
      "notAfterDate": "2021-08-05",
      "otbEowDate": "2021-08-07",
      "earliestShipDate": "2021-08-02",
      "latestShipDate": "2021-09-01",
      "closeDate": "2021-10-05",
      "terms": "04",
      "termsCode": "Net 30 Days",
      "freightTerms": "01",
      "paymentMethod": null,
      "paymentMethodDescription": null,
      "backhaulType": null,
      "backhaulTypeDescription": null,
      "backhaulAllowance": null,
      "shipMethod": null,
      "shipMethodDescription": null,
      "purchaseType": null,
      "purchaseTypeDescription": null,
      "shipPayMethod": null,
      "shipPayMethodDescription": null,
      "fobTransactionResponsibility": null,
      "fobTransactionResponsibilityCodeDescription": null,
      "fobTransactionResponsibilityDescription": null,
      "fobTitlePass": null,
      "fobTitlePassCodeDescription": null,
      "fobTitlePassDescription": null,
      "vendorOrderNo": null,
      "exchangeRate": 1,
      "factory": null,
      "factoryDescription": null,
      "agent": null,
      "agentDesc": null,
      "dischargePort": null,
      "dischargePortDescription": null,
      "ladingPort": null,
      "ladingPortDescription": null,
      "freightContractNo": null,
      "poType": null,
      "poTypeDescription": null,
      "preMarkInd": "N",
      "currencyCode": "USD",
      "contractNo": null,
      "pickupLocation": null,
      "pickupNo": null,
      "pickupDate": null,
      "appointmentDatetime": null,
      "comments": null,
      "writtenDate": "2021-04-01",
      "orderOriginatedInd": 2,
      "originalApprovalDate": "2021-04-01",
      "originalApprovalId": "rms_admin",
      "ediSentInd": "N",
      "ediOrderInd": "N",
      "importOrderInd": "N",
      "importCountryId": "US",
      "partnerType1": null,
      "partner1": null,
      "partnerType2": null,
      "partner2": null,
      "partnerType3": null,
      "partner3": null,
      "importType": null,
      "importId": null,
      "clearingZoneId": null,
      "routingLocationId": null,
      "deliverySupplier": null,
      "wfOrderNo": null,
      "exchangeRateInd": "L",
      "customerOrderNo": null,
      "fullfillmentOrderNo": null,
      "customerOrderInd": null,
      "createDateTime": "2021-08-02T13:45:34.000Z",
      "updateDateTime": "2022-03-23T15:25:26.000Z",
      "customFlexAttribute": [
        {
          "name": "COLUMN1",
          "value": "1414",
          "valueDate": null,
          "createDateTime": "2021-08-02T13:45:34.000Z",
          "updateDateTime": "2021-08-02T13:45:34.000Z"
        },
        {
          "name": "COUMN2",
          "value": "Y",
          "valueDate": null,
          "createDateTime": "2021-08-02T13:45:34.000Z",
          "updateDateTime": "2021-08-02T13:45:34.000Z"
        }
      ],
      "details": [
        {
          "item": "100050013",
          "referenceItem": null,
          "physicalLocationType": "S",
          "physicalLocation": 7777,
          "virtualWarehouse": null,
          "physicalStoreType": "C",
          "physicalStockholdingInd": "Y",
          "physicalQuantityOrdered": 0,
          "unitCost": 10,
          "originCountryId": "US",
          "supplierPackSize": 1,
          "earliestShipDate": "2021-08-02",
          "latestShipDate": "2021-09-01",
          "pickupLocation": null,
          "pickupNo": null,
          "packingMethod": "HANG",
          "roundLevel": "C",
          "transferOrderLinkId": null,
          "estimatedInStockDate": "2021-04-01",
          "transactionUom": null,
          "itemLineNo": null,
          "orderItemCreateDateTime": "2021-08-02T13:45:34.000Z",
          "orderItemUpdateDateTime": "2021-08-02T13:45:34.000Z",
          "orderItemLocCreateDateTime": "2021-08-02T13:45:34.000Z",
          "orderItemLocUpdateDateTime": "2022-03-23T15:25:25.000Z",
          "orderItemCustomFlexAttribute": [
            {
              "name": "NEW1",
              "value": "Apparel",
              "valueDate": null,
              "createDateTime": "2021-08-02T13:45:34.000Z",
              "updateDateTime": "2021-08-02T13:45:34.000Z"
            }
          ],
          "orderItemLocationCustomFlexAttribute": null
        }
      ],
      "cacheTimestamp": "2022-03-28T13:02:14.458Z"
    }
],
    "hasMore": true,
    "limit": 0,
    "count": 0,
    "links": [
    {
      "href": "https://rex.retail.us-phoenix-1.ocs.oc-test.com/rgbu-rex-rgbu-stg200-mfcs/MerchIntegrations/services/procurement/order?limit=10000&since=1970-01-01T00:00:00.001Z&before=2022-04-05T10:32:11.454248+00: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

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

Organizational Hierarchy Publish Services

Endpoints
MerchIntegrations/services/foundation/orghier
MerchIntegrations/services/foundation/orghier/{orgLevel} 
MerchIntegrations/services/foundation/orghier/{param1}/{param2}
Functional Area

Organizational Hierarchy

Business Overview

This service can be used by external applications to get all or selected organizational hierarchy levels and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/orghier?since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/foundation/orghier/{orgLevel}?offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/foundation/orghier/{param1}/{param2}
Input Parameters for ​MerchIntegrations/services/foundation/orghier
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 of sort_order_seq and node id.

limit

No

BigDecimal

Pagination limit. Default Value is 10000.

Input Parameters for ​MerchIntegrations/services/foundation/orghier/{orgLevel}
Parameter Name Required 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

BigDecimal

Pagination limit. Default Value is 1000.

Input Parameters for ​MerchIntegrations/services/foundation/orghier/{param1}/{param2}
Parameter Name Required 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.

Output - Diff ID
Name Data Type Description

action

String

Action for Item details. Valid values are INSERT, UPDATE and DELETE.

hierarchyLevel

String

This field contains the Merchandising Hierarchy Level.

hierarchyId

Number

This field contains the number which uniquely identifies Hierarchy Id.

hierarchyName

String

This field contains the description of the hierarchy value.

managerName

String

This field contains the manager’s name.

currencyCode

String

This field contains the currency code for the hierarchy.

parentHierarchyId

String

This field contains the number that identifies the hierarchy level.

parentHierarchyLevel

String

This field contains the parent level of the current organizational hierarchy.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

cacheTimestamp

String

This field specifies date and time org hier record was last maintained.

Table 5-229 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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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",
      "hierarchyLevel": "CHAIN",
      "hierarchyId": 4,
      "hierarchyName": "Chain 1*",
      "managerName": null,
      "currencyCode": null,
      "parentHierarchyId": 1,
      "parentHierarchyLevel": "COMPANY",
      "createDateTime": "2021-08-19T02:32:24.000Z",
      "updateDateTime": "2021-08-19T02:32:24.000Z",
      "cacheTimestamp": "2021-08-19T02:37:00.447Z"
    },
    {
      "action": "INSERT",
      "hierarchyLevel": "AREA",
      "hierarchyId": 6,
      "hierarchyName": "USA*",
      "managerName": null,
      "currencyCode": "USD",
      "parentHierarchyId": 4,
      "parentHierarchyLevel": "CHAIN",
      "createDateTime": "2021-08-19T02:34:27.000Z",
      "updateDateTime": "2021-08-19T02:34:27.000Z",
      "cacheTimestamp": "2021-08-19T02:37:00.447Z"
    },
    {
      "action": "INSERT",
      "hierarchyLevel": "REGION",
      "hierarchyId": 56,
      "hierarchyName": "Singapore",
      "managerName": null,
      "currencyCode": "SGD",
      "parentHierarchyId": 6,
      "parentHierarchyLevel": "AREA",
      "createDateTime": "2021-08-19T02:35:00.000Z",
      "updateDateTime": "2021-08-19T02:35:00.000Z",
      "cacheTimestamp": "2021-08-19T02:37:00.447Z"
    },
    {
      "action": "INSERT",
      "hierarchyLevel": "REGION",
      "hierarchyId": 57,
      "hierarchyName": "Hong Kong",
      "managerName": null,
      "currencyCode": "HKD",
      "parentHierarchyId": 6,
      "parentHierarchyLevel": "AREA",
      "createDateTime": "2021-08-19T02:35:01.000Z",
      "updateDateTime": "2021-08-19T02:35:01.000Z",
      "cacheTimestamp": "2021-08-19T02:37:00.447Z"
    }
  ],
  "hasMore": false,
  "limit": 10000,
  "count": 4,
  "links": [
    {
      "href": "https://rex.retail.us-phoenix-1.ocs.oc-test.com/rgbu-rex-rgbu-dev1-mfcs19-1/MerchIntegrations/services/foundation/orghier?limit=10000&since=2020-01-01T00:00:00.000000000+00:00&before=2025-01-01T00:00:00.000000000+00: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_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

Partner Publish Services

Endpoints
MerchIntegrations/services/foundation/partner
MerchIntegrations/services/foundation/partner/{partnerId}
Functional Area

Foundation – Partners

Business Overview

This service can be used by external applications to get all or selected partners and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/partner?since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/foundation/partner/{partnerId}
Input Parameters for ​​MerchIntegrations/services/foundation/partner
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 of sort_order_seq and node id.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Input Parameters for ​​MerchIntegrations/services/foundation/partner/{partnerId}
Parameter Name Required Data Type Description

partnerId

Yes

String

Partner ID

Output - Partner
Name Data Type Description

action

String

Action for Item details. Valid values are INSERT, UPDATE and DELETE.

partnerType

String

Specifies the type of partner. Valid partner types are held on the code tables under code type PTNR.

partnerId

String

Unique number that identifies the partner within the system.

partnerName

String

Contains the partners description or name.

partnerNameSecondary

String

Secondary name of the partner.

currencyCode

String

Contains a code identifying the currency the partner uses for business transactions.

language

Number

This field contains the partners preferred language.

status

String

Indicates if the partner is currently active

contactName

String

Contains the name of the partners representative contract.

contactPhone

String

Contains the phone number of the partners representative contact.

contactFax

String

Contains the fax number of the partners representative contact.

contactTelex

String

Contains the telex number of the partners representative contact.

contactEmail

String

Contains the e-mail address of the partners representative contact.

manufacturerTaxId

String

The manufacturer's tax identification number. Used for partner type Manufacturer.

principleCountryId

String

The country id to which the partner is assigned.

lineOfCredit

Number

Contains the line of credit the company has at the Bank in the Partners currency. This field is not NULL when the Partner Type is Bank (BK).

outstandingCredit

Number

Contains the total amount of credit that the company has used or has charged against in the Partners currency. This field is not NULL when the Partner Type is Bank (BK).

openCredit

Number

Contains the total amount that the company can still charge against in the Partners currency. This field is not NULL when the Partner Type is Bank (BK).

yearToDateCredit

Number

Contains the total amount of credit the company has used this year to date in the Partners currency. This field is not NULL when the Partner Type is Bank (BK).

yearToDateDrawdowns

Number

Contains the year to date payments the bank has made on behalf of the company in the Partners currency. This field is not NULL when the Partner Type is Bank (BK).

taxId

String

Contains the unique tax identification number of the partner. This will be used for reporting during the Customs Entry process.

terms

String

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

String

Indicates if the expense vendors services (e.g. snowplowing, window washing) must be confirmed as performed before paying an invoice from that expense vendor. Valid values are Y (all service non-merchandise lines on an invoice from this expense vendor must be confirmed before the invoice can be paid) and N (services do not need to be confirmed or partner is not an expense vendor).

invoicePayLocation

String

Indicates where invoices from this expense vendor are paid - at the store or centrally through corporate accounting. Valid values are S (paid at the store) and C (paid centrally). This field will only be populated for expense vendors, and should only be S if using ReSA to accept payment at the store.

invoicecReceiveLocation

String

Indicates where invoices from this expense vendor are received - at the store or centrally through corporate accounting. Valid values are S (received at the store) and C (received centrally). This field should only be populated when using invoice matching.

importCountryId

String

Import country of the Import Authority. This field is not populated for other partner types.

primaryImportAuthInd

String

Indicates if an Import Authority is the primary Import Authority for an import country. This field 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

String

Contains any comments associated with the Partner.

transferEntityId

Number

The Transfer entity with which an external finisher is associated.

vatRegion

Number

Tax region with which a partner is associated. Valid values will be found on the VAT_REGION table. If SYSTEM_OPTIONS.DEFAULT_TAX_TYPE is SVAT or GTS, then each partner will be required to have an associated VAT_REGION. For other default_tax_type, then VAT functionality is not used and PARTNER.VAT_REGION will not be required.

orgUnitId

Number

The org unit id with which partner is associated

autoRcvStockInd

String

This will indicate whether the system will update the stock for the external finisher when the 1st leg of the transfer is shipped. Valid values are Yes or No

primaryAddressType

String

This field specifies type for the address. Valid values are: 01 -Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 -Remittance.

primaryAddressTypeDescription

String

This field specifies address type description.

primaryAddressAdd1

String

This field contains the first line of the address.

primaryAddressAdd2

String

This field contains the second line of the address.

primaryAddressAdd3

String

This field contains the third line of the address.

primaryAddressCity

String

This field contains the name of the city that is associated with the address.

primaryAddressState

String

This field contains abbreviation of the state for the address

primaryAddressStateName

String

This field contains full name of the state for the address.

primaryAddressCountryId

String

This field contains the country where the address exists.

primaryAddressCountryName

String

This field holds the county name for the location.

primaryAddressPost

String

This field contains the zip code for the address.

primaryAddressContactName

String

This field contains the name of the contact for the partner at this address.

primaryAddressContactPhone

String

This field contains the phone number of the contact person at this address.

primaryAddressContactTelex

String

This field contains the telex number of the partner’s representative contact.

primaryAddressContactFax

String

This field contains the fax number of the contact person at this address.

primaryAddressContactEmail

String

This field contains the email address of the partner’s representative contact.

primaryAddressCounty

String

This field holds the county name for the location.

primaryAddressJurisdictionCode

String

Identifies the jurisdiction code for the country-state relationship.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttribute

 

This List holds custom flex attributes for address details.

address

 

This list holds all the addresses of the partner.

cacheTimestamp

String

This field specifies date and time when the partner record was last maintained.

Output - Address
Name Data Type Description

addressKey

Number

This field contains the unique address key.

addressType

String

This field specifies type for the address. Valid values are: 01 -Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 -Remittance.

addressTypeDescription

String

This field specifies address type description.

primaryAddressInd

String

This field indicates whether the address is the primary address for the address type.

add1

String

This field contains the first line of the address.

add2

String

This field contains the second line of the address.

add3

String

This field contains the third line of the address.

city

String

This field contains name of the city that is associated with the address.

state

String

This field contains name of the state that is associated with the address.

stateName

String

This field contains name of the state description that is associated with the address.

countryID

String

This field contains name of the country that is associated with the address.

countryName

String

This field contains name of the country description that is associated with the address.

post

String

This field contains the zip code for the address.

contactName

String

This field contains the name of the contact person at this address.

contactPhone

String

This field contains the phone number of the contact person at this address.

contactTelex

String

This field contains the telex number of the warehouse's representative contact.

contactFax

String

This field contains the fax number of the contact person at this address.

contactEmail

String

This field contains email address of the warehouse's representative contact.

county

String

This field contains the county where the address exists.

jurisdictionCode

String

This field contains the ID associated to the tax jurisdiction of the country-state relationship.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttribute

 

This list holds custom flex attributes for the address.

Output - Custom Flex Attribute
Name Data Type Description

name

String

This field will hold the custom flex attribute name.

value

String

This field will hold the numeric or string value of the custom flex attribute.

valueDate

String

This field will hold the date value of the custom flex attribute.

createDateTime

String

This field will hold the date time when the custom flex attribute was inserted.

updateDateTime

String

This field will hold the date time when the custom flex attribute was last updated.

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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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+00: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

Purchase Orders – Mobile Workflows

Order Number

This section describes the Order Number.

Business Overview

Retrieves the next order number from Merchandising.

Service Type

Get

ReST URL

/PurchaseOrders/order/id

Input Parameters

NA

Output

OrderNoRDO

Parameter Name Data Type

order_no

Long

JSON Structure:
"{
    ""links"": [],
    ""order_no"": 100000047120,
    ""hyperMediaContent"": {
        ""linkRDO"": []
    }
}"
Table Impact

NA

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

NA

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

Search Supplier

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<PoSupItemResultRDO>

supplierSearchItemLocRDO

List<PoSupItemLocResultRDO>

PoSupItemResultRDO

Parameter Name Data Type

item

String

originCountryId

String

leadTime

BigDecimal

PoSupItemLocResultRDO

Parameter Name Data Type

item

String

location

BigDecimal

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

Load Supplier

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<PoSupItemResultRDO>

supplierSearchItemLocRDO

List<PoSupItemLocResultRDO>

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

Search Items

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}&supplier={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

Locations

No

Comma Separated values for selected locations' ID.

NA

PageSize

No

Maximum number of items to retrieve per page.

NA

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>

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_RATES

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

Load 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.

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>

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_RATES

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

Search Locations

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}&orgUnitId={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

Load 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

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
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.

Purchase Order Detail Service

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

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>

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

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>

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

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 can be used by external applications to get all or selected work orders that are associated with purchase orders and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/inventory/woin?since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/inventory/woin/{workOrderId}
Input Parameters for MerchIntegrations/services/inventory/woin
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

orderNo

No

Number

This is the purchase order number.

offsetkey

No

String

Offset Key. Valid Value is combination of sort_order_seq and node id.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Input Parameters for MerchIntegrations/services/inventory/woin/{workOrderId}
Parameter Name Required Data Type Description

workOrderId

Yes

Number

This is the unique identifier for work in process associated with an order.

Output - WO In Head
Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE and DELETE.

workOrderId

Number

This field contains the unique identifier for work in process associated with an order.

orderNo

Number

This field contains the order number associated with the work order.

createDateTime

String

This column holds the record creation date.

details

 

This List holds attributes for details of the Work Order.

cacheTimestamp

String

This field specifies date and time when the work order record was last maintained.

Output - WO In Detail
Name Data Type Description

warehouse

Number

This field holds physical warehouse where the work order will be done.

item

String

This field holds item on which the work order will be done.

locationType

String

This field holds location type of the final destination.

location

Number

This field holds final 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 field 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 field 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 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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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+00: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

MERCHAPI_EXT_WOIN

Yes

Yes

Yes

Yes

V_ MERCHAPI_EXT_WOIN _JSON

Yes

No

No

No

Recent Inventory Transfer Services

This section describes the Recent Inventory Transfer services.

Functional Area

Inventory Movement

Business Overview

The primary role of these services is to approve or reject Merchandising's transfers.

Transfer Location Search

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

NA

LocType

No

Location type: Store or warehouse

S, W

PageSize

No

Maximum number of locations to retrieve per page

NA

PageNumber

No

Result page to retrieve

NA

Output

PagedResultsRDO

Parameter Name Data Type

totalRecordCount

BigDecimal

results

List<RtsfLocSearchResultRDO>

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

Transfer Location Load

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

Transfer Status List

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

Transfer Type List

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

Search Transfer User IDs

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>

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

Transfer Search

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}&startCreateDate={startCreateDate}&endCreateDate={endCreateDate}&startDeliveryDate={startDeliveryDate}&endDeliveryDate={endDeliveryDate}&transferNumber={transferNumber}&locations={locations}&departments={departments}&pageSize={pageSize}&pageNumber={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

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>

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

Get Transfer Detail

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>

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>

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

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

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 be A-Approved or I-Input.

A, I

TransferNumbers

Yes

Comma Separated values for selected locations' ID

Output

NA

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

Recent Purchase Order Services

This section describes the Recent Purchase Order services.

Functional Area

Procurement

Business Overview

The primary role of this service is to approve, reject, or cancel Merchandising's purchase orders.

Cancel Reason Code List

This section describes the Cancel Reason Code List service.

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

Origin Code List

This section describes the Origin Code List service.

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

Purchase Order Status List

This section describes the Purchase Order Status list.

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

Search Purchase Order User ID

This section describes the Search Purchase Order User ID.

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

Purchase Order Search

This section describes the Purchase Order Search service.

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}&endCreateDate={endCreateDate}&orderNumber={orderNumber}&suppliers={suppliers}&originCodes={originCodes}&departments={departments}&pageSize={pageSize}&pageNumber={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

Get Purchase Order Summary

This section describes the Get Purchase Order Summary service.

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>

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_RATES

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

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

Get Purchase Order Items

This section describes the Get Purchase Order Items service.

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={pageSize}&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

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

Get Purchase Order Item Locations

This section describes the Get Purchase Order Item Locations service.

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}&diff1={diff1}&diff2={diff2}&diff3={diff3}&diff4={diff4}&pageSize={pageSize}&pageNumber={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

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

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

Update Purchase Orders Date

This section describes the Update Purchase Orders Date service.

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}&notAfterDate={notAfterDate}&otbEowDate={otbEowDate}&orderNumbers={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<BigDecimal>

failOrdersCount

BigDecimal

failOrdersTable

List<RpoFailRDO>

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

Cancel Purchase Orders

This section describes the Cancel Purchase Orders service.

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<BigDecimal>

failOrdersCount

BigDecimal

failOrdersTable

List<RpoFailRDO>

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

Approve Purchase Orders

This section describes the Approve Purchase Orders service.

Business Overview

This service approves a list of purchase orders.

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<BigDecimal>

failOrdersCount

BigDecimal

failOrdersTable

List<RpoFailRDO>

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

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

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

Reject Purchase Orders

This section describes the Reject Purchase Orders service.

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<BigDecimal>

failOrdersCount

BigDecimal

failOrdersTable

List<RpoFailRDO>

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

Reclass Detail Service

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
Parameter Name Required Description

Item

Yes

Item number

Output

RestReclassRecRDO

Parameter Name Data Type

toClass

BigDecimal

reclassDate

Timestamp

reclassDesc

String

toSubclass

BigDecimal

reclassNo

BigDecimal

toDept

toDept

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

Replenishment Schedule Services

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 Replenishment Schedule

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-230 ReplSchedCreModRDO

Parameter Name Data Type

replAttrId

BigDecimal

schRplDesc

String

scheduledActiveDate

Long

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

Long

deactivateDate

Long

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

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

JSON Structure:

[
 {"replAttrId": null,
  "schRplDesc": null,
  "scheduledActiveDate": null,
  "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": null,
  "deactivateDate": null,
  "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}
]
Output

Table 5-231 ReplStatusRDO

Parameter Name Data Type

statusMsg

String

failReplTable

List<ReplFailRDO>

Table 5-232 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

Modify Replenishment Schedule

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-233 ReplSchedCreModRDO

Parameter Name Data Type

replAttrId

BigDecimal

schRplDesc

String

scheduledActiveDate

Long

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

Long

deactivateDate

Long

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

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

JSON Structure:

[
  {
     "replAttrId": null,
     "schRplDesc": null,
     "scheduledActiveDate": null,
     "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": null,
     "deactivateDate": null,
     "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
   }
]
Output

Table 5-234 ReplStatusRDO

Parameter Name Data Type

statusMsg

String

failReplTable

List<ReplFailRDO>

Table 5-235 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

Delete Replenishment Schedule

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-236 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-237 ReplStatusRDO

Parameter Name Data Type

statusMsg

String

failReplTable

List<ReplFailRDO>

The output will contain the status of the request including validation errors, if any.

Table 5-238 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

Reserve Item Numbers

Functional Area

Items

Business Overview

This service allows external systems such as Oracle Retail Assortment Planning (AP) to reserve item numbers within Merchandising. These requested item numbers are sent back to the calling solution as a response from Merchandising.

Service Type

POST

ReST URL
MerchIntegrations/services/item/itemNumbers/reserve
Input Payload Details

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 Merchandising 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 configurable using Item Service configuration.

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 maximum number of days is configurable using Item Service configuration.

Sample Input Message

{
  "itemNumberType": "ITEM",
  "quantity": 50,
  "daysUntilExpiry": 14
}
Response Code: 200 (Success)

ReserveResponse - Object. See list of elements for detail

Element Name Required Data Type Description

items

No

Collection of Object

This is collection record. Refer to corresponding record details

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 Merchandising.

itemNumberType

Yes

String (6)

Contains the type of item number in the item field.

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 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"
  ]
}

RTV Publish Services

Endpoints
MerchIntegrations/services/inventory/rtv
MerchIntegrations/services/inventory/rtv/{rtvOrderNo}
Functional Area

Inventory – Returns to Vendor

Business Overview

This service can be used by external applications to get all or selected approved RTVs and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/inventory/rtv? since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/inventory/rtv/{rtvOrderNo}
Input Parameters for MerchIntegrations/services/inventory/rtv
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 of sort_order_seq and node id.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Input Parameters for MerchIntegrations/services/inventory/rtv/{rtvOrderNo}
Parameter Name Required Data Type Description

rtvOrderNo

Yes

Number

This number uniquely identifies the return to vendor within the system.

Output - RTV Head
Name Data Type Description

action

String

Action for the RTV record. Valid values are INSERT, UPDATE and DELETE.

rtvOrderNo

Number

The number that uniquely identifies the return to vendor within the system.

supplier

Number

The supplier site to which the merchandise is being returned.

supplierName

String

The supplier site’s name in the system's primary language.

status

String

The status of the return. Valid values include: 10 - Approved and 20 – Cancelled.

location

Number

The store or virtual warehouse number from which the return will occur.

locationType

String

The type of location returning the items. Valid values are store (S) or warehouse (W).

physicalLocation

Number

The store number or the physical warehouse from which the items are being returned.

totalOrderAmount

Number

The total amount of the return in the supplier's currency.

shipToAddress1

String

The first line of the supplier's address for returns.

shipToAddress2

String

The second line of the supplier's address for returns.

shipToAddress3

String

The third line of the supplier's address for returns.

shipToCity

String

The city name of the supplier's address for returns.

state

String

The state code of the supplier's address for returns.

shipToCountry

String

The country ID of the supplier's address for returns.

shipToPostalCode

String

The postal code of the supplier's address for returns.

returnAuthorizationNo

String

The number that the supplier provides when the decision is made that an order may be returned, if required.

returnCourier

String

The courier’s name if the supplier requires that returns be sent by a designated carrier.

freightCharge

Number

The freight cost associated with the vendor return. This field is stored in the supplier's currency.

creationDate

String

The date the vendor return was created.

completedDate

String

The date the vendor return was completed (for updates only).

restockingPercentage

Number

The handling (restocking) percent charged to the retailer for returns, if specified.

restockingCost

Number

The handling (restocking) percent charged to the retailer for returns, if specified.

externalReferenceNo

String

Reference number used in an external system; only applicable if the RTV was initiated in the store or warehouse (for updates only).

comments

String

Comments associated with the return.

notAfterDate

String

The last date that the return can be shipped to the vendor.

massReturnTransferNo

Number

This field holds the unique identifier for the Mass Return Transfer (MRT) if the RTV is created through a MRT.

shipToJurisdictionCode

String

This field Identifies the jurisdiction code for the country-state relationship.

rtvOriginatedInd

String

This identifies the source of a specific return present in the table. It will distinguish the RTVs originating from different sources. Valid values are: MAN - Manual, EXTGEN -Externally Generated, MRT - Mass Return Transfer, CUST - Customer Return, TSF -Transfer, ALLOC - Allocation, OWNCHG - Ownership Change. Default value is MAN.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

Details

 

RTV details

customFlexAttribute

 

Custom flex attributes of the RTV.

cacheTimestamp

String

This field specifies date and time when the RTV record was last maintained.

Output - RTV Details
Name Data Type Description

item

String

Unique identifier for the item.

shipment

Number

The RTV shipment number.

invStatus

String

The inventory status code. Only applicable if the reason field 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.

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 field contains the quantity of this item that was shipped to the supplier on this RTV.

restockPercentage

Number

This field 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 field contains the current weighted average cost for the item at the return location.

updatedByRmsInd

String

This field 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 field will hold the custom flex attribute name.

value

String

This field will hold the numeric or string value of the custom flex attribute.

valueDate

String

This field will hold the date value of the custom flex attribute.

createDateTime

String

This field will hold the date time when the custom flex attribute was inserted.

updateDateTime

String

This field will hold the date time when the custom flex attribute was last updated.

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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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": "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

RUA Publish Services

Endpoint
MerchIntegrations/services/inventory/receiverunitadj
Functional Area

Inventory - Shipments and Receipts

Business Overview

This service can be used by external applications to get all or selected receiver unit adjustments and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/inventory/receiverunitadj? 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

offsetkey

No

String

Offset Key. Valid Value is an order ID.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output
Name Data Type Description

action

String

Action for RUA details. Valid Value is INSERT.

location

Number

This field uniquely identifies the location.

locationType

String

This field determine, type of the location. The location will be a store if Location type is S, a Warehouse if Location type is W

orderNo

Number

This field contains unique identifier for the order, against which a receiver unit adjustment was performed.

asnNo

String

This field holds the advanced shipment notification number associated with the shipment for which a receiver unit adjustment was performed

item

String

This field holds the ID of the item.

containerId

String

This field holds the unique identifier for the carton that contained the item against which the receiver unit adjustment was performed.

unitQuantity

Number

This field holds the quantity of the receiver unit adjustment.

fromDisposition

String

This field contains a value which along with the to disposition value, is used to determine if the inventory is available or unavailable

toDisposition

String

This field contains the value to determine if the inventory is available or unavailable based in the value of INV_STATUS column in the INV_STATUS_CODES table.

cacheTimestamp

String

This field specifies date and time when RUA record was last maintained.

Table 5-239 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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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",
      "location": 1515,
      "locationType": "S",
      "orderNo": 10001,
      "asnNo": "10001",
      "item": "100500002",
      "containerId": "carton10001",
      "unitQuantity": 50,
      "fromDisposition": "ATS",
      "toDisposition": null,
      "cacheTimestamp": "2022-02-03T19:23:17.357Z"
    },
    {
      "action": "INSERT",
      "location": 1515,
      "locationType": "S",
      "orderNo": 10001,
      "asnNo": "10001",
      "item": "100500002",
      "containerId": "carton10001",
      "unitQuantity": 5,
      "fromDisposition": null,
      "toDisposition": "ATS",
      "cacheTimestamp": "2022-02-03T19:23:17.357Z"
    }
  ],
  "hasMore": false,
  "limit": 10000,
  "count": 2,
  "links": [
    {
      "href": "https://<hostname>:<portnumber>/MerchIntegrations/services/inventory/receiverunitadj?limit=10000=1970-01-01T00:00:00.001Z=2022-04-07T06:10:22.454797+00: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

Yes

No

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 Detail Service

This section describes the Shipment Detail Service.

Business Overview

Shipment Detail service allows user 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

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

Stock Count Detail Service

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>

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

Store Day User 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

Store Detail Service

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

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

Store Publish Services

Endpoint
MerchIntegrations/services/foundation/store
MerchIntegrations/services/foundation/store/{storeId}
Functional Area

Organizational Hierarchy - Stores

Business Overview

This service can be used by external applications to get all or selected stores and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/store? 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

offsetkey

No

String

Offset Key. Valid Value is store ID.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output
Name Data Type Description

action

String

Action for store details. Valid Values are INSERT, UPDATE and DELETE.

store

Number

This field uniquely identifies the Store.

storeType

String

This field determine whether a store is a franchise or company store.

storeName

String

This field specifies name of the store which along with the store number, identifies the store.

storeName10

String

This field contains a ten-character abbreviation of the store name.

storeName3

String

This field contains a three-character abbreviation of the store name.

storeClass

String

This field contains the code letter indicating the class of which the store is a member.

storeClassDescription

String

This field contains the description indicating the class of which the store is a member.

managerName

String

This field contains the name of the store manager

openDate

String

This field contains the date on which the store opened.

closeDate

String

This field contains the date on which the store closed.

acquireDate

String

This field contains the date on which the store was acquired.

remodelDate

String

This field contains the date on which the store was last remodeled.

faxNumber

String

This field specifies fax number of the contact person at this location.

phoneNumber

String

This field specifies phone number of the contact person at this location.

email

String

This field contains the email address for the location.

totalSquareFeet

Number

This field contains the total square footage of the store.

sellingSquareFeet

Number

This field contains the total square footage of the stores selling area.

linearDistance

Number

This field contains the total merchandisable space of the location.

stockholdingInd

String

This field indicates whether the store can hold stock.

channelId

Number

This field contains the channel with which the store is associated..

channelName

String

This field contains the channel description with which the store is associated.

storeFormat

Number

This field contains the number indicating the format of the store.

storeFormatName

String

This field contains the description for format of the store.

mallName

String

This field contains the name of the mall in which the store is located.

district

Number

This field contains the number of the district in which the store is a member.

districtName

String

This field contains the name of the district in which the store is a member.

transferZone

Number

This field contains the transfer zone ID in which the store is located.

transferZoneDescription

String

This field contains the transfer zone description in which the store is located.

defaultWarehouse

Number

This field contains the number of the warehouse that is the primary sourcing warehouse for the store. This value will always be a virtual warehouse.

stopOrderdays

Number

This field 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 defined.

startOrderDays

Number

This field contains the number of days before the store open date that the store will begin accepting orders.

currencyCode

String

This field contains the currency code under which the store operates.

Language

String

This field contains the language code to be used for the given store.

integratedPosInd

String

This field indicates whether Sales Audit should expect files from this store for processing.

dunsNumber

String

This field contains the Dun and Bradstreet number to identify the store.

dunsLocation

String

This field contains the Dun and Bradstreet number to identify the location.

pricingStore

Number

This field 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 defined for an item.

timezoneName

String

This field contains the text value of the time zone of the store.

pricingStoreCurrency

String

This field contains the currency code of the location from which pricing records will be copied.

orgUnitId

Number

This field contains the organizational unit ID that this store is associated with.

storeNameSecondary

String

This field contains the secondary name of the store.

vatRegion

Number

This field contains the ID of the tax region the store is associated with.

vatIncludeInd

String

This field contains whether tax will be included in the retail prices for the store.

sisterStore

Number

This field contains store number which will be used to relate the current store to the historical data of an existing store.

trasferEntityId

Number

This field contains the transfer entity the store is associated with.

autoReceiveInd

String

This field contains whether receipts for the store will have receipts made automatically by Merchandising.

remerchandisingInd

String

This field is used to identify stores that are undergoing a significant remerchandising effort

franchiseCustomerId

String

This field indicates which franchise customer this store is associated with.

customerOrderLocationInd

String

This field indicates whether the location is customer order location.

giftWrappingInd

String

This field indicates if the location will support gift wrapping.

customerOrderShippingInd

String

This field indicates if the location will support shipping to a customer for customer orders.

onlineStoreInd

String

This field indicates that the store is an online store.

taxId

Number

his field contains unique tax identification number of Store.

primaryAddressType

String

This field specifies type for the address. Valid values are: 01 -Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 -Remittance.

primaryAddressTypeDescription

String

This field specifies address type description.

primaryAddressAdd1

String

This field contains the first line of the address.

primaryAddressAdd2

String

This field contains the second line of the address.

primaryAddressAdd3

String

This field contains the third line of the address.

primaryAddressCity

String

This field contains name of the city that is associated with the address.

primaryAddressState

String

This field contains state abbreviation for the address.

primaryAddressStateName

String

This field contains state description for the address.

primaryAddressCountryId

String

This field contains the country where the address exists.

primaryAddressCountryName

String

This field contains the country description where the address exists.

primaryAddressPost

String

This field contains the zip code for the address.

primaryAddressContactName

String

This field contains the name of the contact person at this address.

primaryAddressContactPhone

String

This field contains the phone number of the contact person at this address.

primaryAddressContactTelex

String

This field contains the telex number of the contact person at this address.

primaryAddressContactFax

String

This field contains the fax number of the contact person at this address.

primaryAddressContactEmail

String

This field contains the email address of the store location contact person.

primaryAddressOracleVendorSiteId

String

This field contains the Oracle Vendor Site Id.

primaryAddressCounty

String

This field contains the county where the address exists.

primaryAddressJurisdictionCode

String

This field contains the ID associated to the tax jurisdiction of the country-state relationship.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttribute

 

This list holds custom flex attributes for the store.

address

 

This list holds all the store addresses.

storeHours

 

This list holds all the store hours attributes.

cacheTimestamp

String

This field specifies date and time when the store record was last maintained.

customFlexAttribute:

   

name

String

This field will hold the custom flex attribute name.

value

String

This field will hold the numeric or string value of the custom flex attribute.

valueDate

String

This field will hold the date value of the custom flex attribute.

createDateTime

String

This field will hold the date time when the custom flex attribute was inserted.

updateDateTime

String

This field will hold the date time when the custom flex attribute was last updated.

Table 5-240 address

Name Data Type Description

addressKey

Number

This field contains the unique address key.

addressType

String

This field specifies type for the address. Valid values are: 01 -Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 -Remittance.

addressTypeDescription

String

This field specifies address type description.

primaryAddressInd

String

This field indicates whether the address is the primary address for the address type.

add1

String

This field contains the first line of the address.

add2

String

This field contains the second line of the address.

add3

String

This field contains the third line of the address.

city

String

This field contains name of the city that is associated with the address.

state

String

This field contains name of the state that is associated with the address.

stateName

String

This field contains name of the state description that is associated with the address.

countryId

String

This field contains name of the country that is associated with the address.

countryName

String

This field contains name of the country description that is associated with the address.

post

String

This field contains the zip code for the address.

jurisdictionCode

String

This field contains the ID associated to the tax jurisdiction of the country-state relationship.

contactName

String

This field contains the name of the contact person at this address.

contactPhone

String

This field contains the phone number of the contact person at this address.

contactTelex

String

This field contains the telex number of the warehouse's representative contact.

contactFax

String

This field contains the fax number of the contact person at this address.

contactEmail

String

This field contains email address of the warehouse's representative contact.

oracleVendorSiteId

String

This field contains the Oracle Vendor Site Id.

county

String

This field contains the county where the address exists .

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttribute

 

This list holds custom flex attributes for the warehouse's address.

Table 5-241 Store Hours

Name Data Type Description

storeId

Number

This field contains the store number.

dayNo

Number

This field 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

String

This column 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

String

This column 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.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated

Table 5-242 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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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",
      "store": 1000,
      "storeType": "C",
      "storeName": "EIT_Store_Queue",
      "storeName10": "EIT_Store",
      "storeName3": "EIT",
      "storeClass": "A",
      "storeClassDescription": "Class Stores A",
      "managerName": "EIT",
      "openDate": "2021-11-15",
      "closeDate": null,
      "acquireDate": null,
      "remodelDate": null,
      "faxNumber": null,
      "phoneNumber": null,
      "email": null,
      "totalSquareFeet": null,
      "sellingSquareFeet": null,
      "linearDistance": null,
      "stockholdingInd": "Y",
      "channelId": 1,
      "channelName": "EIT_Channel_1",
      "storeFormat": null,
      "storeFormatName": null,
      "mallName": null,
      "district": 1,
      "districtName": "EIT_District",
      "transferZone": 1,
      "transferZoneDescription": "EIT_Transfer_Zone_1",
      "defaultWarehouse": null,
      "stopOrderdays": null,
      "startOrderDays": 2,
      "currencyCode": "USD",
      "language": "AR",
      "integratedPosInd": "Y",
      "dunsNumber": null,
      "dunsLocation": null,
      "pricingStore": 8811,
      "timezoneName": "Africa/Banjul",
      "pricingStoreCurrency": "USD",
      "orgUnitId": 111,
      "storeNameSecondary": null,
      "vatRegion": 1000,
      "vatIncludeInd": "N",
      "sisterStore": null,
      "trasferEntityId": 1111,
      "autoReceiveInd": "D",
      "remerchandisingInd": "N",
      "franchiseCustomerId": null,
      "customerOrderLocationInd": "N",
      "giftWrappingInd": "N",
      "customerOrderShippingInd": "N",
      "onlineStoreInd": "N",
      "taxId": null,
      "primaryAddressType": "01",
      "primaryAddressTypeDescription": "Business",
      "primaryAddressAdd1": "Israel",
      "primaryAddressAdd2": null,
      "primaryAddressAdd3": null,
      "primaryAddressCity": "Israel",
      "primaryAddressState": null,
      "primaryAddressStateName": null,
      "primaryAddressCountryId": "IL",
      "primaryAddressCountryName": "Israel",
      "primaryAddressPost": null,
      "primaryAddressContactName": null,
      "primaryAddressContactPhone": null,
      "primaryAddressContactTelex": null,
      "primaryAddressContactFax": null,
      "primaryAddressContactEmail": null,
      "primaryAddressOracleVendorSiteId": null,
      "primaryAddressCounty": null,
      "primaryAddressJurisdictionCode": null,
      "createDateTime": "2021-11-19T18:14:40.000Z",
      "updateDateTime": "2021-11-19T18:14:40.000Z",
      "customFlexAttribute": null,
      "address": [
        {
          "addressKey": 20002,
          "addressType": "02",
          "addressTypeDescription": "Postal",
          "primaryAddressInd": "Y",
          "add1": "Israel",
          "add2": null,
          "add3": null,
          "city": "Israel",
          "state": null,
          "stateName": null,
          "countryId": "IL",
          "countryName": "Israel",
          "post": null,
          "jurisdictionCode": null,
          "contactName": null,
          "contactPhone": null,
          "contactTelex": null,
          "contactFax": null,
          "contactEmail": null,
          "oracleVendorSiteId": null,
          "county": null,
          "createDateTime": "2021-11-09T16:00:18.000Z",
          "updateDateTime": "2021-11-22T09:18:30.000Z",
          "customFlexAttribute": null
        },
        {
          "addressKey": 20001,
          "addressType": "01",
          "addressTypeDescription": "Business",
          "primaryAddressInd": "Y",
          "add1": "Israel",
          "add2": null,
          "add3": null,
          "city": "Israel",
          "state": null,
          "stateName": null,
          "countryId": "IL",
          "countryName": "Israel",
          "post": null,
          "jurisdictionCode": null,
          "contactName": "EIT",
          "contactPhone": null,
          "contactTelex": null,
          "contactFax": null,
          "contactEmail": null,
          "oracleVendorSiteId": null,
          "county": null,
          "createDateTime": "2021-11-09T16:00:17.000Z",
          "updateDateTime": "2021-11-22T09:18:30.000Z",
          "customFlexAttribute": null
        }
      ],
      "storeHours": null,
      "cacheTimestamp": "2022-02-23T12:41:34.129Z"
    }
  ],
  "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/foundation/store?limit=2&since=1970-01-01T00:00:00.001Z&before=2022-04-07T09:00:28.413938+00:00",
      "rel": "self"
    },
    {
      "href": "https://rex.retail.us-phoenix-1.ocs.oc-test.com/rgbu-rex-rgbu-stg83-mfcs/MerchIntegrations/services/foundation/store?offsetkey=1515&limit=2&since=1970-01-01T00:00:00.001Z&before=2022-04-07T09:00:28.413938+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_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

Supplier Detail Service

This section describes the Supplier Detail service.

Business Overview

Supplier Detail service allows user to retrieve Supplier information for a selected supplier.

Service Type

Get

ReST URL

Supplier/supplierDetail?supplierNumber={suppliernumber}

Input Parameters
Parameter Name Required Description

Supplier

Yes

Supplier number

Output

RestSupplierRecRDO

Parameter Name Data Type

supplier

BigDecimal

sup_name

String

sup_name_secondary

String

supplier_parent

BigDecimal

sup_status

String

currency_code

String

terms

String

freight_terms

String

vat_region

BigDecimal

external_ref_id

String

Supplier_address

List<RestSupplierAddressRecRDO>

RestSupplierAddressRecRDO

Parameter Name Data Type

add_1

String

add_2

String

add_3

String

city

String

state

String

country_id

String

post

String

contact_name

String

contact_phone

String

contact_email

String

JSON Structure:
[
    {
        "supplierAddress": [
            {
                "countryId": null,
                "add2": null,
                "add3": null,
                "city": null,
                "add1": null,
                "state": null,
                "contactEmail": null,
                "contactName": null,
                "contactPhone": null,
                "post": null,
                "links": [],
                "hyperMediaContent": {
                    "linkRDO": []
                }
            },
            {
                "countryId": null,
                "add2": null,
                "add3": null,
                "city": null,
                "add1": null,
                "state": null,
                "contactEmail": null,
                "contactName": null,
                "contactPhone": null,
                "post": null,
                "links": [],
                "hyperMediaContent": {
                    "linkRDO": []
                }
            },
            {
                "countryId": null,
                "add2": null,
                "add3": null,
                "city": null,
                "add1": null,
                "state": null,
                "contactEmail": null,
                "contactName": null,
                "contactPhone": null,
                "post": null,
                "links": [],
                "hyperMediaContent": {
                    "linkRDO": []
                }
            },
            {
                "countryId": null,
                "add2": null,
                "add3": null,
                "city": null,
                "add1": null,
                "state": null,
                "contactEmail": null,
                "contactName": null,
                "contactPhone": null,
                "post": null,
                "links": [],
                "hyperMediaContent": {
                    "linkRDO": []
                }
            },
            {
                "countryId": null,
                "add2": null,
                "add3": null,
                "city": null,
                "add1": null,
                "state": null,
                "contactEmail": null,
                "contactName": null,
                "contactPhone": null,
                "post": null,
                "links": [],
                "hyperMediaContent": {
                    "linkRDO": []
                }
            }
        ],
        "supNameSecondary": null,
        "supplierParent":null,
        "terms": null,
        "supStatus": null,
        "currencyCode": null,
        "supplier": null,
        "supName": null,
        "freightTerms": null,
        "vatRegion": null,
        "externalRefId": null,
        "links": [],
        "hyperMediaContent": {
            "linkRDO": []
        }
    }
]
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

Business Overview

This service can be used by external applications to get all or selected suppliers and its details from Merchandising.

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-243 MerchIntegrations/services/foundation/supplier

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 of sort_order_seq and node ID.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Table 5-244 /MerchIntegrations/services/ foundation/supplier/{supplierId}

Parameter Name Required Data Type Description

supplierId

Yes

String

Supplier ID.

Output
Name Data Type Description

action

String

Action for supplier details. Valid values are INSERT, UPDATE and DELETE.

supplier

Number

This field specifies unique identifying number for a supplier site within the system.

supplierName

String

This field specifies supplier’s site's name.

supplierNameSecondary

String

This field specifies secondary name of the supplier.

supplierStatus

String

This field specifies whether the supplier is currently active.

parentSupplier

String

This field contains the supplier number for the supplier site.

contactName

String

This field contains the name of the supplier's representative contact for this site.

contactPhone

String

This field contains telephone number for the suppliers representative contact.

contactFax

String

This field contains fax number for the supplier’s representative contact.

contactPager

String

This field contains number for the pager of the supplier’s representative contact.

contactTelex

String

This field contains telex number of the partner or supplier’s representative contact.

contactEmail

String

This field contains email address of the partner or supplier’s representative contact.

qualityControlInd

String

This field determines whether orders from this supplier will default as requiring quality control.

qualityControlPercentage

Number

This field specifies percentage of items per receipt that will be marked for quality checking.

qualityControlFrequency

Number

This field specifies frequency in which items per receipt will be marked for quality checking.

vendorCheckingInd

String

This field specifies whether orders from this supplier will default as requiring vendor control.

vendorCheckingPercentage

Number

This field specifies percentage of items per receipt that will be marked for vendor checking.

vendorCheckingFrequency

Number

This field specifies frequency in which items per receipt will be marked for vendor checking.

CurrencyCode

String

This field specifies code identifying the currency the supplier uses for business transactions.

language

String

This field contains the supplier's preferred language.

terms

String

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.

freightTerms

String

This field contains code indicating what freight terms will default when an order is created for the supplier site.

returnAllowedInd

String

This field specifies whether the supplier will accept returns.

returnAuthorizationRequiredInd

String

This field specifies if returns must be accompanied by an authorization number when sent back to the vendor.

minimumReturnValue

Number

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

String

This field specifies name of the courier that should be used for all returns to the supplier site.

handlingPercentage

Number

This field contains the default percent to be multiplied by the return’s total cost to determine the handling cost for the return.

ediOrderInd

String

This field specifies whether purchase orders will be sent to the supplier via EDI.

ediOrderChangeInd

String

This field specifies whether purchase order changes will be sent to the supplier via EDI.

ediOrderConfirmInd

String

This field specifies whether this supplier will send acknowledgment of a purchase orders sent via EDI.

ediAsnInd

String

This field specifies whether this supplier will send Advance Shipment Notifications electronically.

ediSalesReportFrequency

String

This field specifies EDI sales report frequency for this supplier.

ediSupplierAvailabilityInd

String

This field specifies whether the supplier will send availability via EDI.

ediContractInd

String

This field indicates whether the supplier site supports contract ordering sent via EDI.

ediInvoiceInd

String

This field specifies whether invoices, debit memos and credit note requests will be sent to/from the supplier via Electronic Data Interchange.

EdiChannelId

String

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.

costChangeVariancePercentage

Number

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

Number

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.

replenishmentApprovalInd

String

This field indicates whether contract orders created via replenishment should be created in Approved status.

shipMethod

String

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

String

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

String

This field indicates which payment process method is used for the supplier. Valid values are N/A (N) and Evaluated Receipts Settlement (E).

preMarkInd

String

This field indicates whether the supplier site supports pre-marking containers for cross dock order.

autoApproveInvoiceInd

String

This field indicates whether the supplier's invoices can be automatically approved for payment.

debitMemoCode

String

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

String

This field indicates whether a supplier site can charge freight costs.

autoApproveDebitMemoInd

String

This field specifies whether debit memos sent to the supplier can be automatically approved on creation.

invManagementLevel

String

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

String

This field specifies if backorders or partial shipments will be accepted.

vatRegion

Number

This field contains the unique identifying number for the VAT region applicable for this site.

prepayInvoiceInd

String

This field specifies whether all invoices for the supplier can be pre-paid.

servicePerformedRequiredInd

String

This field indicates if the supplier's services must be confirmed as performed before paying an invoice from that supplier site.

invoicePayLocation

String

This field indicates where invoices from this supplier site are received - at the store (S) or centrally through corporate accounting (C).

invoiceGrossNet

String

This field indicates if the supplier site invoice lists items at gross cost (G) or net cost (N).

deliveryPolicy

String

This field contains the default delivery policy of the supplier site. Valid values are held in code type DLVY.

comments

String

This field contains any miscellaneous comments associated with the supplier.

defaultItemLeadTime

Number

This field specifies 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 field holds the Dun and Bradstreet number to identify the supplier.

dunsLocation

String

This field holds the Dun and Bradstreet number to identify the location of the supplier.

bracketCostingInd

String

This field will determine if the supplier site supports bracket costing pricing structures.

vmiOrderStatus

String

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

String

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

String

This field indicates the supplier site order quantity level. Valid values are cases (CA) or eaches (EA).

finalDestinationInd

String

This field indicates whether the supplier site can ship to final destination or not.

externalReferenceId

String

This field holds the ID for the supplier used in the external financial system.

statusUpdateByRms

String

This field indicates that Supplier is inactivated from RMS. Suppliers inactivated in RMS will have this field updated as Y. Otherwise this field will be null.

primaryAddressType

String

This field specifies type for the address. Valid values are: 01 -Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 -Remittance.

primaryAddressTypeDescription

String

This field specifies address type description.

primaryAddressAdd1

String

This field contains the first line of the address.

primaryAddressAdd2

String

This field contains the second line of the address.

primaryAddressAdd3

String

This field contains the third line of the address.

primaryAddressCity

String

This field contains the name of the city that is associated with the address.

primaryAddressState

String

This field contains abbreviation of the state for the address

primaryAddressStateName

String

This field contains full name of the state for the address.

primaryAddressCountryId

String

This field contains the country where the address exists.

primaryAddressJurisdictionCode

String

This field contains the ID associated to the tax jurisdiction of the country-state relationship.

primaryAddressPost

String

This field contains the zip code for the address.

primaryAddressContactName

String

This field contains the name of the contact for the supplier at this address.

primaryAddressContactPhone

String

This field contains the phone number of the contact person at this address.

primaryAddressContactTelex

String

This field contains the telex number of the partner or supplier’s representative contact.

primaryAddressContactFax

String

This field contains the fax number of the contact person at this address.

primaryAddressContactEmail

String

This field contains the email address of the partner or supplier’s representative contact.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttribute

 

This List holds custom flex attributes for address details.

address

 

This list holds all the addresses of the supplier.

supplierOrgUnit

 

This List holds list attributes for supplier/supplier site and Orgunit id. List is populated when populated when either Multiple Set of Books is ON And/or Financial AP is O.

cacheTimestamp

String

This field specifies date and time when the supplier record was last maintained.

Table 5-245 address

Name Data Type Description

addressKey

Number

This field contains the unique address key.

addressType

String

This field specifies type for the address. Valid values are: 01 -Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 -Remittance.

addressTypeDescription

String

This field specifies address type description.

primaryAddressInd

String

This field indicates whether the address is the primary address for the address type.

add1

String

This field contains the first line of the address.

add2

String

This field contains the second line of the address.

add3

String

This field contains the third line of the address.

city

String

This field contains name of the city that is associated with the address.

state

String

This field contains name of the state that is associated with the address.

stateName

String

This field contains name of the state description that is associated with the address.

countryID

String

This field contains name of the country that is associated with the address.

countryName

String

This field contains name of the country description that is associated with the address.

post

String

This field contains the zip code for the address.

contactName

String

This field contains the name of the contact person at this address.

contactPhone

String

This field contains the phone number of the contact person at this address.

contactTelex

String

This field contains the telex number of the warehouse's representative contact.

contactFax

String

This field contains the fax number of the contact person at this address.

contactEmail

String

This field contains email address of the warehouse's representative contact.

county

String

This field contains the county where the address exists.

jurisdictionCode

String

This field contains the ID associated to the tax jurisdiction of the country-state relationship.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttribute

 

This list holds custom flex attributes for the address.

Table 5-246 supplierOrgUnit

Name Data Type Description

orgUnitId

Number

This field holds org unit id.

primaryPaySiteInd

String

This field holds primary payment site indicator.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

Table 5-247 customFlexAttribute

Name Data Type Description

name

String

This field will hold the custom flex attribute name.

value

String

This field will hold the numeric or string value of the custom flex attribute.

valueDate

String

This field will hold the date value of the custom flex attribute.

createDateTime

String

This field will hold the date time when the custom flex attribute was inserted.

updateDateTime

String

This field will hold the date time when the custom flex attribute was last updated.

Table 5-248 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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined, 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": 5247,
      "supplierName": "Ankeny42, IA",
      "supplierNameSecondary": null,
      "supplierStatus": "I",
      "parentSupplier": null,
      "contactName": "UNKNOWN UNKNOWN",
      "contactPhone": "999999999",
      "contactFax": "999999999",
      "contactPager": null,
      "contactTelex": null,
      "contactEmail": null,
      "qualityControlInd": "N",
      "qualityControlPercentage": null,
      "qualityControlFrequency": null,
      "vendorCheckingInd": "N",
      "vendorCheckingPercentage": null,
      "vendorCheckingFrequency": null,
      "currencyCode": "USD",
      "language": 1,
      "terms": "01",
      "freightTerms": "01",
      "returnAllowedInd": "Y",
      "returnAuthorizationRequiredInd": "N",
      "minimumReturnValue": null,
      "returnCourier": null,
      "handlingPercentage": null,
      "ediOrderInd": "N",
      "ediOrderChangeInd": "N",
      "ediOrderConfirmInd": "N",
      "ediAsnInd": "N",
      "ediSalesReportFrequency": "D",
      "ediSupplierAvailabilityInd": "N",
      "ediContractInd": "N",
      "ediInvoiceInd": "N",
      "ediChannelId": null,
      "costChangeVariancePercentage": null,
      "costChangeVarianceAmt": null,
      "replenishmentApprovalInd": "N",
      "shipMethod": null,
      "paymentMethod": null,
      "settlementCode": "N",
      "preMarkInd": "N",
      "autoApproveInvoiceInd": "N",
      "debitMemoCode": "N",
      "freightChargeInd": "N",
      "autoApproveDebitMemoInd": "N",
      "invManagementLevel": "S",
      "backorderInd": "N",
      "vatRegion": null,
      "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": "300000047187123",
      "statusUpdateByRms": null,
      "primaryAddressType": "01",
      "primaryAddressTypeDescription": "Business",
      "primaryAddressAdd1": "1 SE Con BLVD",
      "primaryAddressAdd2": null,
      "primaryAddressAdd3": null,
      "primaryAddressCity": "Ankeny",
      "primaryAddressState": "IA",
      "primaryAddressCountryId": "US",
      "primaryAddressJurisdictionCode": null,
      "primaryAddressPost": "50023",
      "primaryAddressContactName": "UNKNOWN UNKNOWN",
      "primaryAddressContactPhone": "999999999",
      "primaryAddressContactTelex": null,
      "primaryAddressContactFax": "999999999",
      "primaryAddressContactEmail": null,
      "createDateTime": "2021-03-25T15:01:08.000Z",
      "updateDateTime": "2021-03-25T15:26:35.000Z",
      "customFlexAttribute": null,
      "address": [
        {
          "addressType": "01",
          "addressTypeDescription": "Business",
          "sequenceNo": 1,
          "primaryAddressInd": "Y",
          "add1": "1 SE Con BLVD",
          "add2": null,
          "add3": null,
          "city": "Ankeny",
          "state": "IA",
          "countryId": "US",
          "jurisdictionCode": null,
          "post": "50023",
          "contactName": "UNKNOWN UNKNOWN",
          "contactPhone": "999999999",
          "contactTelex": null,
          "contactFax": "999999999",
          "contactEmail": null,
          "createDateTime": "2021-03-25T15:01:08.000Z",
          "updateDateTime": "2021-03-25T15:26:35.000Z",
          "customFlexAttribute": null
        },
        {
          "addressType": "04",
          "addressTypeDescription": "Order",
          "sequenceNo": 1,
          "primaryAddressInd": "Y",
          "add1": "1 SE Con BLVD",
          "add2": null,
          "add3": null,
          "city": "Ankeny",
          "state": "IA",
          "countryId": "US",
          "jurisdictionCode": null,
          "post": "50023",
          "contactName": "UNKNOWN UNKNOWN",
          "contactPhone": "999999999",
          "contactTelex": null,
          "contactFax": "999999999",
          "contactEmail": null,
          "createDateTime": "2021-03-25T15:01:08.000Z",
          "updateDateTime": "2021-03-25T15:26:35.000Z",
          "customFlexAttribute": null
        },
        {
          "addressType": "05",
          "addressTypeDescription": "Invoice",
          "sequenceNo": 1,
          "primaryAddressInd": "Y",
          "add1": "1 SE Con BLVD",
          "add2": null,
          "add3": null,
          "city": "Ankeny",
          "state": "IA",
          "countryId": "US",
          "jurisdictionCode": null,
          "post": "50023",
          "contactName": "UNKNOWN UNKNOWN",
          "contactPhone": "999999999",
          "contactTelex": null,
          "contactFax": "999999999",
          "contactEmail": null,
          "createDateTime": "2021-03-25T15:01:08.000Z",
          "updateDateTime": "2021-03-25T15:26:35.000Z",
          "customFlexAttribute": null
        },
        {
          "addressType": "06",
          "addressTypeDescription": "Remittance",
          "sequenceNo": 1,
          "primaryAddressInd": "Y",
          "add1": "1 SE Con BLVD",
          "add2": null,
          "add3": null,
          "city": "Ankeny",
          "state": "IA",
          "countryId": "US",
          "jurisdictionCode": null,
          "post": "50023",
          "contactName": "UNKNOWN UNKNOWN",
          "contactPhone": "999999999",
          "contactTelex": null,
          "contactFax": "999999999",
          "contactEmail": null,
          "createDateTime": "2021-03-25T15:01:08.000Z",
          "updateDateTime": "2021-03-25T15:26:35.000Z",
          "customFlexAttribute": null
        },
        {
          "addressType": "03",
          "addressTypeDescription": "Returns",
          "sequenceNo": 1,
          "primaryAddressInd": "Y",
          "add1": "1 SE Con BLVD",
          "add2": null,
          "add3": null,
          "city": "Ankeny",
          "state": "IA",
          "countryId": "US",
          "jurisdictionCode": null,
          "post": "50023",
          "contactName": "UNKNOWN UNKNOWN",
          "contactPhone": "999999999",
          "contactTelex": null,
          "contactFax": "999999999",
          "contactEmail": null,
          "createDateTime": "2021-03-25T15:01:08.000Z",
          "updateDateTime": "2021-03-25T15:26:35.000Z",
          "customFlexAttribute": null
        }
      ],
      "supplierOrgUnit": [
        {
          "orgUnitId": 1111111111,
          "primaryPaySiteInd": null,
          "createDateTime": "2021-03-25T15:01:08.000Z",
          "updateDateTime": "2021-03-25T15:26:35.000Z"
        }
      ],
      "cacheTimestamp": "2021-07-23T14:32:53.198Z"
    }
  ],
  "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

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

Tax Rules Services

Functional Area

Foundation

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.

taxCalcType

No

String (6)

Define 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 specified code representing the non-merchandise code.

nonMerchCode

No

String (6)

Contains a unique user specified 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.

gtsRulesConfigTlTbl

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-249 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-250 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 field 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-251 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 finished 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-252 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)

Define 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 specified code representing the non-merchandise code.

nonMerchCode

No

String (6)

Contains a unique user specified 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.

gtsRulesConfigTlTbl

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-253 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-254 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 field 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-255 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 finished 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-256 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)

Define 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 specified code representing the non-merchandise code.

nonMerchCode

No

String (6)

Contains a unique user specified 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.

gtsRulesConfigTlTbl

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-257 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-258 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 field 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-259 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 finished 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-260 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

Tran Data Upload Service

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 Identification

Dept

Yes

Number

Department Id

Class

Yes

Number

Class Id

Subclass

Yes

Number

Subclass Id

LocType

Yes

String

Location Type, Valid values are S-Store, W-Warehouse and E-External Finisher.

Location

Yes

Number

Location ID

TranDate

No

Date

Date of Transaction.

(Format: DD-MON-YYYY). If null, vdate will be populated.

TranCode

Yes

Number

Transaction Type Identification.

AdjCode

No

String

Type of Adjustment. Valid values are A-Actual Landed Cost Adjustment, C-Cost Adjustment, 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 defining 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

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 or N-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,
    "salesType": "string",
    "vatRate": 0,
    "avCost": 0,
    "refPackNo": "string",
    "totalCostExclElc": 0,
    "wacRecalcInd": "string"
     "hyperMediaContent": {}
  }
]
Output

Table 5-261 RestTranDataStatusRec

Parameter Name Data Type

Status Message

String

TranDataErrorTBL

List< RestTranDataFailTbl>

Table 5-262 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

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

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>

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

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 Publish Services

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

offsetkey

No

String

Offset Key. Valid Value is transfer ID.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Output
Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE and DELETE.

transferNo

Number

This field specifies a number that uniquely identifies the transfer within the system.

docType

String

This field Specifies the type of document. This field is defaulted to T for Transfers.

physicalFromLocation

String

This field specifies 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 field specifies the location type of from location of the transfer

fromStoreType

String

This field specifies 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 field specifies 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 field specifies location number of the transfer from location.

physicalToLocation

String

This field specifies 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 field specifies the location type of to location of the transfer.

toStoreType

String

This field specifies 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 field specifies 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 field specifies location number of the transfer to location.

transferType

Number

This field identifies the type or reason for the transfer.

pickNotBeforeDate

String

This field Contains the date on which the transfer should be released from the from location for delivery to the to location.

pickNotAfterDate

Number

This field is calculated as transfer approval date + days from code_detail where code_type = 'DEFT' and code = 'DATE'.

orderType

String

This field specifies order type associated with transfers. 

breakByDistro

String

This field is set to 'Y' if the deliver_type for the transfer's customer is 'S'. Otherwise, set to N

deliveryDate

String

This field specifies 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 field contains the first line of the delivery address of the customer. For other type's of transfer this field would not be populated.

deliverAdd2

String

For customer order transfers, this field contains the second line of the delivery address of the customer. For other types of transfer this field would not be populated.

deliverCity

String

For customer order transfers, this field contains the city portion of the customer. For other types of transfer this field would not be populated.

deliverState

String

For customer order transfers, this field contains the state portion of the customer. For other types of transfer this field would not be populated.

deliverPost

String

For customer order transfers, this field contains the postal code portion of the customer. For other types of transfer this field would not be populated.

deliverCountryId

String

For customer order transfers, this field contains the country portion of the customer. For other types of transfer this field would not be populated.

comments

String

This field specifies any comments associated with the transfer.

details

 

This list holds detail records for the transfers

transferParentNo

Number

This field identifies the transfer at the level above the transfer.

expectedDcDate

String

This field specifies date the inventory is expected to arrive at the DC.

approvalId

String

This field specifies ID of the user who approved the transfer.

approvalDate

String

This field specifies date the transfer was approved.

fromLocationTransferEntity

Number

This field specifies transfer entity of the from location.

toLocationTransferEntity

Number

This field specifies transfer entity of the to location.

invType

String

This field specifies transfer can only contain available or unavailable merchandise, never a combination of both. This field will indicate whether the transfer is for Available inventory or Unavailable inventory.

transferStatus

String

This field specifies Status of the transfer.

notAfterDate

String

This field specifies last day delivery of the transfer will be accepted.

contextType

String

This field can be used to indicate the transfer reason or category, e.g., 'promotion'.

contextValue

String

This field 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 field Specifies when the transfer quantity is needed at the location.

deliverySlotDescription

String

This field Specifies delivery slot description.

customerOrderNo

String

or customer order transfers, this field contains the master customer order number from the Order Management System.

fulfillmentOrderNumber

String

Contains the fulfillment order number for the transfer as provided by OMS. One or more fulfillment orders could relate back to a single customer order in OMS.

carrierCode

String

This field indicates the carrier the order is to be shipped with, if specified on the order.

carrierServiceCode

String

This field indicates method that was selected for shipping by the customer placing the order (e.g., Standard Shipping, Overnight, etc.).

consumerDeliveryDate

String

This field specifies desired date the delivery is required by the customer.

consumerDeliveryTime

String

This field specifies desired time the delivery is required by the customer.

deliverFirstName

String

For customer order transfers, this field contains the first name for the delivery address on the order. For other types of transfer this field would not be populated.

deliverPhoneticFirst

String

For customer order transfers, this field contains the phonetic first name for the delivery address on the order. For other types of transfer this field would not be populated.

deliverLastName

String

For customer order transfers, this field contains the phonetic first name for the delivery address on the order. For other types of transfer this field would not be populated.

deliverPhoneticLast

String

For customer order transfers, this field contains the phonetic last name for the delivery address on the order. For other types of transfer this field would not be populated.

deliverPreferredName

String

For customer order transfers, this field contains the preferred name for the delivery address on the order. For other types of transfer this field would not be populated.

deliverCompanyName

String

For customer order transfers, this field contains the company name for the delivery address on the order. For other types of transfer this field would not be populated.

deliverAdd3

String

For customer order transfers, this field contains the third line of the delivery address of the customer. For other types of transfer this field would not be populated.

deliverCounty

String

For customer order transfers, this field contains country of the delivery address of the customer. For other types of transfer this field would not be populated.

deliverPhone

String

For customer order transfers, this field contains delivery phone number. For other types of transfer this field would not be populated.

billFirstName

String

For customer order transfers, this field contains the first name for the billing address on the order. For other types of transfer this field would not be populated.

billPhoneticFirst

String

For customer order transfers, this field contains the phonetic first name for the billing address on the order. For other types of transfer this field would not be populated.

billLastName

String

For customer order transfers, this field contains the last name for the billing address on the order. For other types of transfer this field would not be populated.

billPhoneticLast

String

For customer order transfers, this field contains the phonetic last name for the billing address on the order. For other types of transfer this field would not be populated.

billPreferredName

String

For customer order transfers, this field contains the preferred name for the billing address on the order. For other types of transfer this field would not be populated.

billCompanyName

String

For customer order transfers, this field contains the preferred name for the billing address on the order. For other types of transfer this field would not be populated.

billAdd1

String

For customer order transfers, this field contains the first line of the billing address of the customer. For other types of transfer this field would not be populated.

billAdd2

String

For customer order transfers, this field contains the second line of the billing address of the customer. For other types of transfer this field would not be populated.

billAdd3

String

For customer order transfers, this field contains the third line of the billing address of the customer. For other types of transfer this field would not be populated.

billCounty

String

For customer order transfers, this field contains the county portion of the billing address of the customer. For other types of transfer this field would not be populated.

billCity

String

For customer order transfers, this field contains the city portion of the billing address of the customer. For other types of transfer this field would not be populated.

billCountry

String

For customer order transfers, this field contains the city portion of the billing address of the customer. For other types of transfer this field would not be populated.

billPost

String

For customer order transfers, this field contains the postal code portion of the billing address of the customer. For other types of transfer this field would not be populated.

billState

String

For customer order transfers, this field contains the state portion of the billing address of the customer. For other types of transfer this field would not be populated.

billPhone

String

For customer order transfers, this field contains the billing phone number. For other types of transfer this field would not be populated.

partialDeliveryInd

String

For customer order transfers, this field indicates if the order can be picked and shipped partially or if it should be shipped only when complete.

consumerDirectInd

String

This field 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 flex 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-263 details

Name Data Type Description

item

String

This field specifies unique alphanumeric value that identifies the item.

transferQuantity

Number

This field specifies total quantity of the item reserved at the from location for this transfer.

price

Number

This field specifies unit retail price in the selling unit of measure for the item/location combination.

sellingUom

String

This field specifies selling unit of measure of the item.

expediteFlag

String

This field is determined from transfer's freight code field.

storeOrderMultiple

String

This field specifies multiple in which the item needs to be shipped from a warehouse to the location.

transferOrderLinkNo

Number

This field specifies 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 fulfill the transfer quantity to the to location (i.e. store) on the transfer.

ticketTypeId

String

This field specifies 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 fulfill 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 field specifies inventory status, if one exists, for the transfer detail record. The inventory status field corresponds to the inventory status type found on the INV_STATUS_TYPES table

transactionUom

String

This field specifies 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 field specifies detail item line number for customer order transfers. For other types of transfer this field is not populated.

comments

String

This field specifies 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-264 ticketDetails

Name Data Type Description

componentItem

String

This field specifies Alphanumeric value that identifies the component item within the pack.

componentPrice

Number

This field specifies unit retail price in the selling unit retail of the component item within the pack. 

componentSellingUom

String

This field specifies selling unit of measure for a component item within the pack.

Table 5-265 customFlexAttribute

Name Data Type Description

name

String

This field will hold the custom flex attribute name.

value

String

This field will hold the numeric or string value of the custom flex attribute.

valueDate

String

This field will hold the date value of the custom flex attribute.

createDateTime

String

This field will hold the date time when the custom flex attribute was inserted.

updateDateTime

String

This field will hold the date time when the custom flex attribute was last updated.

Table 5-266 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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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-10T15: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

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 Work Order Publish Services

Endpoints
MerchIntegrations/services/inventory/woout
MerchIntegrations/services/inventory/woout/{workOrderId}
Functional Area

Inventory – Work Orders

Business Overview

This service can be used by external applications to get all or selected work orders that are associated with transfers and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/inventory/woout? since={since}&before={before}&offsetkey={offsetkey}&limit={limit}
/MerchIntegrations/services/inventory/woout/{workOrderId}
Input Parameters for MerchIntegrations/services/inventory/woout
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

transferNo

No

Number

This is the transfer number.

offsetkey

No

String

Offset Key. Valid Value is combination of sort_order_seq and node id.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Input Parameters for MerchIntegrations/services/inventory/woout/{workOrderId}
Parameter Name Required Data Type Description

workOrderId

Yes

Number

This is the unique identifier for work in process associated with an order or transfer.

Output - WO Out Head
Name Data Type Description

action

String

Action for Item details. Valid Values are INSERT, UPDATE and DELETE.

workOrderId

Number

This field contains the unique identifier for work in process associated with an order or transfer.

distroNo

Number

This field contains the first leg transfer number of the 2-legged transfer.

parentDistroNo

Number

This field contains the second leg transfer number of the 2-legged transfer.

finisherLocationId

Number

This field contains destination location for the transfer.

inventoryType

String

This field contains the code to indicate whether the inventory on the transfer is available.

createDateTime

String

This column holds the record creation date.

updateDateTime

String

This column holds the record updated date.

activityDetails

 

This list holds attributes for details of the Work Order Out record.

transformationDetails

 

This list holds attributes for details of Work Order transformation details record.

packingDetails

 

This list holds attributes for details of Work Order packing details record.

cacheTimestamp

String

This field specifies date and time when the work order out record was last maintained.

Output - WO Activity Details
Name Data Type Description

item

String

Unique identifier for the item.

activityId

Number

This field contains a code number indicating the activity that will be performed on the item.

activityUnitCost

Number

This field contains the per unit cost of the finishing activity.

comments

String

This field contains any comments regarding this activity

invStatus

String

This field 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 field contains the original item on the transfer.

toItem

String

This field contains the item which results from the finishing 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 field contains the item resulting from the packing process

packingSetNo

Number

This field contains packing set number from the packing process.

recordType

String

This field determines if the item in the ITEM field is being used to create a pack (F - From) an item or a result of the pack creation process (R - Result).

quantity

Number

his field 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 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.

hasMore

This is dependent on limit value. If the total rows are more than then limit defined 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": [
    {
	"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+00: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

UDA Publish Services

Endpoints
MerchIntegrations/services/foundation/uda
MerchIntegrations/services/foundation/uda/{udaId}
Functional Area

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-267 /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-268 /MerchIntegrations/services/foundation/uda/{udaId}

Parameter Name Required Data Type Description

udaId

Yes

Number

Number identifying the User Defined 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 Defined Attribute.

udaDescription

String

Description of the User Defined Attribute.

displayType

String

This field 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.

dataType

String

This field contains the data type of any valid values for the UDA. Valid values are Number, Alphanumeric and Date.

dataLength

Number

This field contains the data length of any valid values for the UDA.

singleValueInd

String

This field indicates whether or not the UDA should be constrained to having at most one value. Valid values are Y and N.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

udaListOfValues

 

This list holds the UDA list of values.

cacheTimestamp

String

This field specifies date and time when the UDA record was last maintained.

Table 5-269 udaListOfValues

Name Data Type Description

action

String

Action for UDA Value details. Valid Values are INSERT, UPDATE and DELETE.

udaValue

Number

This field contains a unique number identifying the User Defined Attribute value for the UDA. A UDA can have multiple values.

udaValueDescription

String

Description of the User Defined Attribute Values.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

Table 5-270 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.

hasMore

This is dependent on limit value. If the total rows are more than the limit defined, 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,
      "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

Update Allocation

Functional Area

Inventory - Transfers and Allocations

Business Overview

This service allows an external application update allocations within Merchandising. Modifying an existing allocation will first validate the existence of the allocation header for modification. Only the allocation description and release date on the header can be modified.

Service Type

PUT

ReST URL
MerchIntegrations/services/inventory/allocations/update
Input Payload Details

Table 5-271 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-272 Items - Object. See list of elements for detail

Element Name Required Data Type Description

allocationNo

Yes

Number (10)

Contains the unique identifier of the allocation. This should fall within the range of Merchandising IDs already designated for allocations.

allocationDescription

Yes

String (300)

Contains the user defined description of the allocation.

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.

releaseDate

No

date

Contains the earliest date on which the warehouse should ship the allocation.

Sample Input Message

{
  "items": [
    {
      "allocationNo": 102881222,
      "allocationDescription": "Allocation to 1311.",
      "item": "2147483647",
      "fromLocation": 10001,
      "releaseDate": "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 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.

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.

Service Type

PUT

ReST URL
MerchIntegrations/services/inventory/allocation/details/update
Input Payload Details

Table 5-273 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-274 Items - Object. See list of elements for detail

Element Name Required Data Type Description

allocationNo

Yes

Number (10)

Contains the unique identifier 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 identification number for a transfer, another allocation, bill of landing number (BOL), or advanced shipping notice (ASN) number for a purchase order. This field 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-275 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 modified, 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,
      "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 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.

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 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 Create Appointment service description.

Service Type

PUT

ReST URL
MerchIntegrations/services/inventory/appointments/update
Input Payload Details

Table 5-276 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

No

Collection of Object

References a collection of appointments.

Table 5-277 Items - Object. See list of elements for detail

Element Name Required Data Type Description

location

Yes

Number (10)

This field contains the location where the merchandise has been sent.

appointmentNo

Yes

Number (9)

This field 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 - Modified Scheduled, AR - Arrived, AC - Closed.

Sample Input Message

{
  "collectionSize": 1,
  "items": [
    {
      "location": 2,
      "appointmentNo": 200911,
      "action": "SC"
    }
  ]
}
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 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

Update - Object. See list of elements for detail

Element Name Required Data Type Description

items

No

Collection of Object

Collection of items and locations for which weight average cost must be updated.

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 must 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).

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 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 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-278 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 field cannot be modified.

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 predefined on the DEPS table. This value cannot be modified.

customFlexAttribute

No

Collection of Object

References a collection of customer flexible attributes.

Table 5-279 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"
    }
  ]
}
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 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-280 Update - Object. See list of elements for detail

Element Name Required Data Type Description

company

Yes

Number (4)

The unique number which identifies the company for which the system is running. This value cannot be modified.

companyName

Yes

String (120)

The name of the company for which the system is running.

add1

Yes

String (240)

The first 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 predefined on the STATE table.

countryCode

Yes

String (3)

The abbreviation of the country of the company headquarters. This value must be predefined 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"
    }
  ]
}

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 a failure status as part of the response object in the web service call if the credit flag is not updated due to validation errors.

This service supports a collection of records to be submitted. The service either processes all the records or rejects all the records if there are one or more bad records.

Service Type

PUT

ReST URL
MerchIntegrations/services/franchiseManagement/customerCreditStatus/update
Input Payload Details

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.

Items - Object. See list of elements for detail

Element Name Required Data Type Description

customerId

Yes

Number (10)

The unique customer identifier.

customerGroupId

Yes

Number (10)

Customer Group to which the customer belongs to.

creditInd

Yes

String (1)

Determines whether 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 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 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-281 Update - Object. See list of elements for detail

Element Name Required Data Type Description

dept

Yes

Number (4)

The number which uniquely identifies the department. This value cannot be modified.

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 predefined on the BUYER table.

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 predefined on the MERCHANT table.

groupNo

Yes

Number (4)

The number of the group to which the department belongs. This value must be predefined 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. This value 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 value is required if pricing is installed.

budgetedIntakePercent

No

Number (12,4)

The budgeted intake percentage. The percent of the total take that is income. If this field 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 customer flexible attributes.

Table 5-282 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"
    }
  ]
}
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-283 Update - Object. See list of elements for detail

Element Name Required Data Type Description

dept

Yes

Number (4)

The number which uniquely identifies the department. This value cannot be modified.

vat

No

Collection of Object

References a collection of department VAT information.

Table 5-284 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 predefined on the VAT_REGION table.

vatCode

Yes

String (6)

The alphanumeric identifier of the VAT code. This value must be predefined 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"
    }
  ]
}
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-285 Update - Object. See list of elements for detail

Element Name Required Data Type Description

dept

Yes

Number (4)

The number which uniquely identifies the department. This value cannot be modified.

upcharge

No

Collection of Object

References a collection of department upcharges.

Table 5-286 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 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 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-287 Details - Object. See list of elements for detail

Element Name Required Data Type Description

component

Yes

String (10)

This field contains the unique identifier of the Up Charge component.

componentRate

Yes

Number (20,4)

This field contains the rate to be charged against the cost of the Item/To Location combinations within the department.

perCount

No

Number (12,4)

This field contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies.

perCountUom

No

String (4)

This field contains the unit of measure in which the Per Count is specified.

upChargeGroup

Yes

String (6)

This field 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 Administration Fee (A), Freight (F) and Special K Fees (K).

componentCurrency

Yes

String (3)

This field 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 defined 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,
  "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": "Y",
          "transferAllocationDefaultInd": "Y",
          "computationValueBase": null,
          "costBasis": "S",
          "includeInTotalUpChargeInd": "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 Differentiator Groups

Functional Area

Items - Differentiators

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

Update - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

References a collection of differentiator groups.

Items - Object. See list of elements for detail

Element Name Required Data Type Description

diffGroupId

Yes

String (10)

A unique differentiator group identifier.

diffType

Yes

String (6)

A differentiator type predefined in the DIFF_TYPE table. Each differentiator group is composed of one differentiator 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 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 - Differentiators

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-288 Update - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

It's a referenced element. For detailed description, please refer referenced element doc.

Table 5-289 Items - Object. See list of elements for detail

Element Name Required Data Type Description

diffGroupId

Yes

String (10)

A unique differentiator group identifier.

items

No

Collection of Object

Description is not available.

Table 5-290 Items.Items - Object. See list of elements for detail

Element Name Required Data Type Description

diffId

Yes

String (10)

The identifier 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 predefined 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 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.

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 - Differentiators

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-291 Update - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

A referenced element. For detailed description, please refer to the items table.

Table 5-292 Items - Object. See list of elements for detail

Element Name Required Data Type Description

diffId

Yes

String (10)

The unique identifier for the differentiator.

diffType

Yes

String (6)

The identifier of the differentiator type. This value must be predefined in the DIFF_TYPE table.

diffDescription

Yes

String (120)

The description of the differentiator.

industryCode

No

String (10)

The unique reference number that represents all possible combinations of sizes according to the National Retail Federation.

industrySubgroup

No

String (10)

The unique reference number representing 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 (for example, purple is defined 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, and so on).

Sample Input Message

{
  "items": [
    {
      "diffId": "XYZ02",
      "diffType": "C",
      "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 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 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-293 Update - Object. See list of elements for detail

Element Name Required Data Type Description

division

Yes

Number (4)

The unique identifier 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 predefined on the MERCHANT table.

buyer

No

Number (4)

The number of the buyer associated with the division. This value must be predefined on the BUYER table.

totalMarketAmount

No

Number (24,4)

The total market amount that is expected for the division. If this field 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"
    }
  ]
}

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-294 Update - Object. See list of elements for detail

Element Name Required Data Type Description

groupNo

Yes

Number (4)

The number which uniquely identifies the group. This field cannot be modified.

groupName

Yes

String (120)

Description is not available.

division

Yes

Number (4)

The identifier of the division of which the group is a member. This value must be predefined on the DIVISION table.

merchandiser

No

Number (4)

The number of the merchandiser associated to the group. This value must be predefined on the MERCHANT table.

buyer

No

Number (4)

The number of the buyer associated to the group. This value must be predefined 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"
    }
  ]
}

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 can update an existing hierarchy based on 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-295 Update - Object. See list of elements for detail

Element Name Required Data Type Description

hierarchyValue

Yes

Number (10)

The ID of the specified 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 field 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 predefined in 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 identifies the currency under which the hierarchy value operates. This value must be predefined in 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 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 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.

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

Update - Object. See list of elements for detail

Element Name Required Data Type Description

terms

No

String (15)

Unique ID for this payment term.

termsCode

Yes

String (50)

The alpha value which acts as the Term code in Oracle Financials.

termsDesc

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",
  "termsCode": "55HDRUPD",
  "termsDesc": "55 TERMS Description HDR UPD",
  "rank": 13
}
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 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"
    }
  ]
}

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.

Service Type

PUT

ReST URL
MerchIntegrations/services/financials/terms/paymentTerm/detail/update
Input Payload Details

Update - Object. See list of elements for detail

Element Name Required Data Type Description

terms

No

String (15)

Unique ID for this payment term.

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.

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 identifier 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.

fixedDate

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 Yes or No.

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",
  "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)

Sample Response Message

{
  "status": "SUCCESS"
}
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"
    }
  ]
}

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-296 Update - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

 

Table 5-297 Items - Object. See list of elements for detail

Element Name Required Data Type Description

orderNo

Yes

String (12)

The unique identifier for the order.

supplier

No

String (10)

The identifier of the supplier from which the order will be sourced. This cannot be modified 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 modified in worksheet or approved status.

notBeforeDate

No

date

The first date that delivery will be accepted. This can be modified in worksheet or approved status.

notAfterDate

No

date

The last date that delivery will be accepted. This can be modified in worksheet or approved status.

otbEowDate

No

date

The end of week date of the OTB bucket used. This can be modified in worksheet or approved status.

dept

No

Number (4)

The department in which are all the items on the order. This field is required if the system enforces single department ordering. This cannot be modified 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 modified in worksheet or approved status. Valid values are Y and N.

writtenDate

No

date

The date the order was created. If this field is not populated on the message it will default to the time of creation in RMS. It cannot be modified.

origInd

No

String (1)

Indicates where the order originated. Valid values include: 2 - Manual, 6 - AIP generated order, 7 , 8.

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 field 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 (30)

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.

dataPersistTil

No

String (6)

This field indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defined, the default is STG.

masterOrderNo

No

Number (10)

This field indicates the master order number from which child records were created.

ladingPort

No

String (5)

This field indicates the port from which the items on the purchase order are shipped.

dischargePort

No

String (5)

This field indicates the port at which the items on the purchase order will enter the country of import.

factory

No

String (10)

This field indicates the factory at which the items on the purchase order are made.

agent

No

String (10)

This field indicates the agent that is used in the purchase of the items on the purchase order.

shipMethod

No

String (6)

This field 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 field indicates Partner 1 Type.

partner1

No

String (10)

This field indicates the Additional Partner 1.

partnerType2

No

String (6)

This field indicates Partner 2 Type.

partner2

No

String (10)

This field indicates the Additional Partner 2.

partnerType3

No

String (6)

This field indicates Partner 3 Type.

partner3

No

String (10)

This field indicates the Additional Partner 3.

purchaseType

No

String (6)

This field 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 field indicates how the purchase order will be paid. Valid options are LC (Letter of Credit), WT (Wire Transfer) and OA (Open Account).

titlePass

No

String (2)

Indicator used to determine where the title for goods is passed from the vendor to the purchaser. Examples include city, factory, or origin.

titlePassDescription

No

String (250)

This field describes the code where the title of the merchandise is to be passed. Could be a city name, factory name, or place of origin.

purchaseOrderType

No

String (4)

This field 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.

buyer

No

Number (4)

Contains the number associated with the buyer for the order.

location

No

Number (10)

This field 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 field contains the type of location in the location field. 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.

qcInd

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 field 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 field 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 - Defined by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller.

fobTransRes

No

String (2)

Contains the code indicating the type of the location that is responsible for the transportation of the order.

fobTransResDesc

No

String (250)

User entered field describing the code for the location responsible for the transportation of the order.

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 specific freight rates. This field 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 field is only required if the Purchase Type of the order is Pickup.

appDatetime

No

date

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 identifies 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.

routingLocId

No

String (5)

This is the default routing location for the import order. FK on OUTLOC. OUTLOC_ID.

reApproveInd

No

String (1)

This field 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 customer flexible attributes at the order header level.

Table 5-298 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",
      "includeOnOrderInd": "Y",
      "writtenDate": "2001-12-31",
      "origInd": "2",
      "ediPoInd": "Y",
      "preMarkInd": "Y",
      "approvedBy": null,
      "commentDesc": "Create Order",
      "dataPersistTil": "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",
      "titlePass": "CC",
      "titlePassDescription": "US",
      "purchaseOrderType": "4000",
      "orderType": "N/B",
      "buyer": 1000,
      "location": null,
      "locationType": null,
      "promotion": 41,
      "qcInd": "Y",
      "freightTerms": "03",
      "backhaulType": null,
      "backhaulAllowance": null,
      "shipPayMethod": "PO",
      "fobTransRes": "CA",
      "fobTransResDesc": "US",
      "vendorOrderNo": "9987001",
      "freightContractNo": "111",
      "pickupLocation": null,
      "pickupNo": null,
      "pickupDate": null,
      "appDatetime": "2001-12-31",
      "importType": "W",
      "importId": 10001,
      "clearingZoneId": null,
      "routingLocId": null,
      "reApproveInd": null,
      "earliestShipDate": "2001-12-31",
      "latestShipDate": "2001-12-31",
      "customFlexAttribute": [
        {
          "name": "EXPDATE",
          "value": null,
          "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. The element businessError will be 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"
  ]
}

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. 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

Table 5-299 Update - Object. See list of elements for detail

Element Name Required Data Type Description

items

Yes

Collection of Object

 

Table 5-300 Items - Object. See list of elements for detail

Element Name Required Data Type Description

orderNo

Yes

Number (12)

The unique identifier for the order.

approvedBy

No

String (30)

Indicates where the order was approved. It will be the user ID of the person approving the order.

dataLoadingDestination

No

String (6)

This field indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defined, 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-301 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 field 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 field cannot be modified.

unitCost

No

Number (20,4)

The cost of the item from the supplier in the order's currency. This can be modified 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 specified 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 field. If the item field is not populated this field is required. A ref item/location may be added to the order in worksheet or approved status.

originCountry

No

String (3)

The identifier of the country from which the item is being sourced. This field cannot be modified.

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.

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 field contains the quantity that was left to be ordered when the line item was cancelled.

cancelCode

No

String (1)

This field contains the reason that the line item was cancelled. This field 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 customer flexible attributes for the order/location.

Table 5-302 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-303 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 field 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 customer flexible attributes for ordsku.

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 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.

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 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-304 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

No

Collection of Object

References a collection of order expenses.

Table 5-305 Items - Object. See list of elements for detail

Element Name Required Data Type Description

orderNo

Yes

Number (12)

The unique identifier for the order.

supplier

No

Number (10)

The identifier of the supplier from which the order will be sourced. This cannot be modified 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 field can be modified 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 modified in worksheet or approved status.

notBeforeDate

No

date

The first date that delivery will be accepted. This can be modified in worksheet or approved status.

notAfterDate

No

date

The last date that delivery will be accepted. This can be modified in worksheet or approved status.

otbEowDate

No

date

The end of week date of the OTB bucket used. This can be modified in worksheet or approved status.

dept

No

Number (4)

The department in which are all the items on the order. This field is required if the system enforces single department ordering. This cannot be modified 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 modified in worksheet or approved status. Valid values are Y and N.

writtenDate

No

date

The date the order was created. If this field is not populated on the message it will default to the time of creation in RMS. It cannot be modified.

origin

No

String (1)

Indicates where the order originated. Valid values include: 2 - Manual, 6 - Inventory Planning generated order, 7 , 8.

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 field 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 (30)

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 field indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defined, the default is STG.

masterOrderNo

No

Number (10)

This field indicates the master order number from which child records were created.

ladingPort

No

String (5)

This field indicates the port from which the items on the purchase order are shipped.

dischargePort

No

String (5)

This field indicates the port at which the items on the purchase order will enter the country of import.

factory

No

String (10)

This field indicates the factory at which the items on the purchase order are made.

agent

No

String (10)

This field indicates the agent that is used in the purchase of the items on the purchase order.

shipMethod

No

String (6)

This field 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 field indicates Partner 1 Type.

partner1

No

String (10)

This field indicates the Additional Partner 1.

partnerType2

No

String (6)

This field indicates Partner 2 Type.

partner2

No

String (10)

This field indicates the Additional Partner 2.

partnerType3

No

String (6)

This field indicates Partner 3 Type.

partner3

No

String (10)

This field indicates the Additional Partner 3.

importCountry

No

String (3)

The identifier of the country into which the items on the order are being imported.

purchaseType

No

String (6)

This field 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 field indicates how the purchase order will be paid. Valid options are LC (Letter of Credit), WT (Wire Transfer) and OA (Open Account).

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 field 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.

buyer

No

Number (4)

Contains the number associated with the buyer for the order.

location

No

Number (10)

This field 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 field contains the type of location in the location field. 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 field 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 field 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 - Defined by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller.

transportationResponsibilityType

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 specific freight rates. This field 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 field 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 identifies 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 field 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 customer flexible attributes at the order header level.

expenses

No

Collection of Object

References the expense associated with a particular item/location of the purchase order.

Table 5-306 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-307 Expenses - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

This field contains alphanumeric value that uniquely identifies the item.

packItem

No

String (25)

This field contains alphanumeric value that uniquely identifies the pack.

location

Yes

Number (10)

This field contains the location that item will be ordered to. This field may contain a store or a warehouse.

locationType

Yes

String (1)

This field contains the type of location in the location field. Valid values are: S - Store W - Warehouse.

component

Yes

String (10)

This field contains a user specified code representing a specific expense found on the ELC_COMP table.

computationValueBase

No

String (10)

This field contains contains a code representing the base value for calculating the expense.

calculationBasis

No

String (1)

This field 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 field is EXCB.

componentRate

Yes

Number (20,4)

This field contains the rate to be charged against the calculation base of the component (either value or specific).

componentCurrency

Yes

String (3)

This field 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 field contains the exchange rate of the individual expense.

perCount

No

Number (12,4)

This field contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defined as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10.

perCountUom

No

String (4)

This field contains the unit of measure in which the Per Count is specified. When creating an expense that is defined 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 field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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 flag is used to indicate if the value of the cost component should be included in total duty.

nominationFlag3

Yes

String (1)

This field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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 flag is used to indicate if the value of the cost component should be included in total expenses.

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"
        }
      ],
      "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-308 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

No

Collection of Object

References a collection of order HTS records.

Table 5-309 Items - Object. See list of elements for detail

Element Name Required Data Type Description

orderNo

Yes

Number (12)

The unique identifier for the order.

supplier

No

Number (10)

The identifier of the supplier from which the order will be sourced. This cannot be modified 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 field can be modified 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 modified in worksheet or approved status.

notBeforeDate

No

date

The first date that delivery will be accepted. This can be modified in worksheet or approved status.

notAfterDate

No

date

The last date that delivery will be accepted. This can be modified in worksheet or approved status.

otbEowDate

No

date

The end of week date of the OTB bucket used. This can be modified in worksheet or approved status.

dept

No

Number (4)

The department in which are all the items on the order. This field is required if the system enforces single department ordering. This cannot be modified 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 modified in worksheet or approved status. Valid values are Y and N.

writtenDate

No

date

The date the order was created. If this field is not populated on the message it will default to the time of creation in RMS. It cannot be modified.

origin

No

String (1)

Indicates where the order originated. Valid values include: 2 - Manual, 6 - Inventory Planning generated order, 7 , 8.

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 field 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 (30)

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 field indicates if the order will be created in RMS or the staging tables. Valid values are RMS or STG. If not defined, the default is STG.

masterOrderNo

No

Number (10)

This field indicates the master order number from which child records were created.

ladingPort

No

String (5)

This field indicates the port from which the items on the purchase order are shipped.

dischargePort

No

String (5)

This field indicates the port at which the items on the purchase order will enter the country of import.

factory

No

String (10)

This field indicates the factory at which the items on the purchase order are made.

agent

No

String (10)

This field indicates the agent that is used in the purchase of the items on the purchase order.

shipMethod

No

String (6)

This field 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 field indicates Partner 1 Type.

partner1

No

String (10)

This field indicates the Additional Partner 1.

partnerType2

No

String (6)

This field indicates Partner 2 Type.

partner2

No

String (10)

This field indicates the Additional Partner 2.

partnerType3

No

String (6)

This field indicates Partner 3 Type.

partner3

No

String (10)

This field indicates the Additional Partner 3.

importCountry

No

String (3)

The identifier of the country into which the items on the order are being imported.

purchaseType

No

String (6)

This field 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 field indicates how the purchase order will be paid. Valid options are LC (Letter of Credit), WT (Wire Transfer) and OA (Open Account).

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 field 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.

buyer

No

Number (4)

Contains the number associated with the buyer for the order.

location

No

Number (10)

This field 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 field contains the type of location in the location field. 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 field 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 field 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 - Defined by Buyer and Seller, MX - Mixed, PC - Prepaid but Charged to Customer, PO - Prepaid Only, PP - Prepaid by Seller.

transportationResponsibilityType

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 specific freight rates. This field 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 field 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 identifies 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 field 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 customer flexible attributes at the order header level.

hts

No

Collection of Object

References the HTS code associated with a particular item of the purchase order.

Table 5-310 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-311 Hts - Object. See list of elements for detail

Element Name Required Data Type Description

item

Yes

String (25)

This field contains an unique alphanumeric value that identifies the item.

packItem

No

String (25)

This field contains alphanumeric value that uniquely identifies the pack.

hts

Yes

String (25)

This field contains an identifier for the Harmonized Tariff Schedule code.

status

Yes

String (1)

This field contains a flag to indicate the status of the Purchase Order/Item/HTS relationship. Valid values are (W)orksheet and (A)pproved.

originCountry

Yes

String (3)

This field 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 field 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-312 Assessments - Object. See list of elements for detail

Element Name Required Data Type Description

component

Yes

String (10)

This field contains a user specified code representing the specific assessment component found on the ELC_COMP table.

computationValueBase

No

String (10)

This field contains contains a code representing the base value for calculating the assessment.

componentRate

Yes

Number (20,4)

This field contains the rate to be charged against the calculation base. This field will hold a percentage value if the Calculation Basis of the Component is Value or a monetary amount in the currency defined for the assessment (usually the import countrys currency) if the Calculation Basis is Specific.

perCount

No

Number (12,4)

This field contains a count indicating the amount of the Per Count Unit of Measure to which the rate applies. When creating an expense that is defined as $. 20 for every 10 kilograms of an item ordered, the Per Count would be 10.

perCountUom

No

String (4)

This field contains the unit of measure in which the Per Count is specified. When creating an expense that is defined 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 field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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 flag is used to indicate if the value of the cost component should be included in total duty.

nominationFlag3

Yes

String (1)

This field contains a flag that is used to indicate if the value of the cost component should be included in the calculation of another. Nomination flags are used to calculate the value of a Computation Value Base (CVB) which has the corresponding nomination flag 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 flag is used to indicate if the value of the cost component should be included in total expenses.

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 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-313 Update - Object. See list of elements for detail

Element Name Required Data Type Description

subclass

Yes

Number (4)

The unique number which identifies the subclass. This value cannot be modified.

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 predefined on the CLASS table. This value cannot be modified.

dept

Yes

Number (4)

The number of the department which contains the subclass. This value must be predefined on the DEPS table. This value cannot be modified.

intercompanyTransferPriceBasis

No

String (6)

This specifies 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) for subclasses under departments with cost-based profit calculation type. Valid value is 'R'(Retail Based) for subclasses under departments with retail-based profit calculation type. If not defined, the value will default to 'W' and 'R' respectively.

customFlexAttribute

No

Collection of Object

References a collection of customer flexible attributes.

Table 5-314 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": "S",
  "customFlexAttribute": [
    {
      "name": "REVIEW_DATE",
      "value": null,
      "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 Suppliers

Functional Area

Foundation - Suppliers

Business Overview

This service is used to modify existing parent suppliers, supplier sites, 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 will be 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, you must provide both supplier parent and supplier site information. 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 will be overwritten by the information contained in the address section of the service request. Addresses with address types 04 - Order and 06 - Remittance, however will be deleted from the system if these addresses are not included in the request.

Service Type

PUT

ReST URL
MerchIntegrations/services/foundation/suppliers/update
Input Payload Details

Table 5-315 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-316 Items - Object. See list of elements for detail

Element Name Required Data Type Description

supplierReferenceNo

No

String (32)

This holds the ID for the supplier used in the external financial system. It is populated by the integration that brings suppliers from external financial systems into Merchandising. This ID and the supplier site ID can be used to join to information about the supplier in the external system.

supplier

Yes

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 field as null for a system generated supplier ID.

attributes

Yes

Record

This contains supplier parent information.

supplierSites

No

Collection of Object

References a collection of supplier sites.

Table 5-317 Attributes - Object. See list of elements for detail

Element Name Required Data Type Description

supplierName

Yes

String (240)

This field contains the supplier name.

supplierNameSecondary

No

String (240)

This type can hold secondary name for the supplier with a max length of 240 characters.

contactName

No

String (120)

This field contains the name of the supplier representative contact for this site.

contactPhone

No

String (20)

This field contains a telephone number for the supplier's representative contact.

contactFax

No

String (20)

This field contains a fax number for the supplier's representative contact.

contactPager

No

String (20)

This field contains a pager number for the supplier's representative contact.

supplierStatus

Yes

String (1)

This field contains the status of the supplier. 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 field contains the percentage of items per receipt that will be marked for quality checking.

qualityControlFrequency

No

String (2)

This field contains the frequency for which items per receipt will be marked for quality checking.

vendorCheckingPercentage

No

Number (12,4)

This field contains percentage of items per receipt that will be marked for vendor checking.

vendorCheckingFrequency

No

Number (2)

This field contains the frequency for which items per receipt that will be marked for vendor checking.

currencyCode

Yes

String (3)

This field contains code identifying the currency the supplier site uses for business transactions.

language

Yes

Number (6)

This field contains the supplierss preferred language. This field is provided for custom purchase orders in a specified language.

terms

Yes

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.

freightTerms

Yes

String (30)

This field contains code indicating what freight terms will default when an order is created for the supplier site.

minReturnValue

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 contains the name of the courier that should be used for 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.

ediChannel

No

Number (4)

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. This field 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 flow. 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).

costChangeVariancePercentage

No

Number (12,4)

This field 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 field 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 field 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 field indicates the default method for how purchase orders for this site will be paid. Valid options are 'LC' - Letter of Credit, 'WT' - Wire Transfer and 'OA' - Open Account

contactTelex

No

String (20)

This field contains the telex number of the partner or suppliers representative contact.

contactEmail

No

String (100)

This field contains the email address of the partner or suppliers representative contact.

vatRegion

No

Number (4)

This field contains the unique identifying number for the VAT region applicable for this 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).

comments

No

String (2000)

This field contains any miscellaneous comments associated with the supplier.

defaultItemLeadTime

No

Number (4)

This field 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.

customFlexAttribute

No

Collection of Object

References a collection of customer flexible attributes.

dealUploadStatus

No

String (6)

Indicates the status in which the deal needs to be uploaded into the system by upload batch process. The valid values are 'W'orksheet, 'S'ubmitted, 'A'pproved.

taxId

No

String (20)

This field contains the unique tax identification number of the supplier site.

Table 5-318 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-319 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 used in the external financial system. It is populated by the integration that brings suppliers from external financial systems into Merchandising. This ID and the supplier site 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 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 field 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-320 OrgUnit - Object. See list of elements for detail

Element Name Required Data Type Description

orgUnitId

Yes

Number (15)

This field contains org_unit_id.

primaryPaySite

No

String (1)

This field contains the primary pay site indicator.

Table 5-321 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-322 Address.Address - Object. See list of elements for detail

Element Name Required Data Type Description

addressType

Yes

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 flagged as mandatory and are not included when the supplier 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 first 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 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

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 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.

customFlexAttribute

No

Collection of Object

References a collection of customer flexible attributes.

Sample Input Message

{
  "items": [
    {
      "supplierReferenceNo": "1",
      "supplier": 3026,
      "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,
        "terms": "108",
        "freightTerms": "03",
        "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",
        "customFlexAttribute": [
          {
            "name": "REVIEW_DATE",
            "value": null,
            "valueDate": "2001-12-31"
          }
        ],
        "dealUploadStatus": "W",
        "taxId": null
      },
      "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,
            "terms": "108",
            "freightTerms": "03",
            "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",
            "customFlexAttribute": [
              {
                "name": "REVIEW_DATE",
                "value": null,
                "valueDate": "2001-12-31"
              }
            ],
            "dealUploadStatus": "W",
            "taxId": null
          },
          "orgUnit": [
            {
              "orgUnitId": 1111111111,
              "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"
                  }
                ]
              }
            }
          ]
        }
      ]
    }
  ]
}
Response Code: 200 (Success)

Sample Response Message

{
  "items": [
    {
      "supplierReferenceNo": "1",
      "supplier": 3026,
      "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,
        "terms": "108",
        "freightTerms": "03",
        "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,
        "dunsNo": "108890",
        "dunsLocation": "1055",
        "customFlexAttribute": [
          {
            "name": "START_DATE",
            "value": null,
            "valueDate": "2001-12-31"
          }
        ],
        "dealUploadStatus": "W",
        "taxId": null
      },
      "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,
            "terms": "108",
            "freightTerms": "03",
            "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,
            "dunsNo": "108890",
            "dunsLocation": "1055",
            "customFlexAttribute": [
              {
                "name": "START_DATE",
                "value": null,
                "valueDate": "2001-12-31"
              }
            ],
            "dealUploadStatus": "W",
            "taxId": null
          },
          "orgUnit": [
            {
              "orgUnitId": 1111111111,
              "primaryPaySite": "Y"
            }
          ],
          "addresses": [
            {
              "addressReferenceKey": "2",
              "addressKey": 114772,
              "address": {
                "addressType": "01",
                "primaryAddressInd": "Y",
                "add1": "200 Ryan Way",
                "add2": "Suite 100",
                "add3": null,
                "city": "Somerville",
                "state": "MA",
                "countryId": "US",
                "post": "55555-1234",
                "contactName": "Laura Johnson",
                "contactPhone": "617-897-0900",
                "contactFax": "617-897-0902",
                "contactEmail": "l_johnson@primehardware.com",
                "jurisdictionCode": null,
                "customFlexAttribute": [
                  {
                    "name": "START_DATE",
                    "value": null,
                    "valueDate": "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 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.

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"
  ]
}

VAT Detail Service

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

Warehouse Detail Service

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

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

Warehouse Publish Services

Endpoints
MerchIntegrations/services/foundation/warehouse
MerchIntegrations/services/foundation/warehouse/{whId}
Functional Area

Organizational Hierarchy - Warehouses

Business Overview

This service can be used by external applications to get all or selected warehouses and its details from Merchandising.

Service Type

GET

ReST URL
/MerchIntegrations/services/foundation/warehouse?since={since}&before={before}&offsetkey={offsetkey}&limit={limit}

MerchIntegrations/services/foundation/warehouse/{whId}
Input Parameters

Table 5-323 /MerchIntegrations/services/ foundation/warehouse

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 Warehouse Number.

limit

No

BigDecimal

Pagination limit. Default Value is 1000.

Table 5-324 /MerchIntegrations/services/ foundation/warehouse/{whId}

Parameter Name Required Data Type Description

whId

Yes

Number

Warehouse ID.

Output
Name Data Type Description

action

String

Action for Warehouse details. Valid Values are INSERT, UPDATE and DELETE.

warehouse

Number

This field uniquely identifies the warehouse. This could be either a physical or virtual warehouse.

warehouseName

String

This field contains the warehouse name. This is published for both physical and virtual warehouse.

whNameSecondary

String

This field contains secondary name of the warehouse.

email

String

This field holds the email address for the location. This is published for only the physical warehouse.

stockholdingInd

String

This field indicates if the warehouse is a stock holding location. It will be N for a physical warehouse and Y for a virtual warehouse.

channelId

Number

This field contains channel for which the virtual warehouse has been assigned. This is published for the virtual warehouse.

channelDescription

String

This field contains description of channel for which the virtual warehouse has been assigned.

currencyCode

String

This field contains code for the currency that the warehouse uses. This is published for the physical and virtual warehouse.

physicalWarehouse

Number

This field contains number of the physical warehouse corresponding to this virtual warehouse. For physical warehouses, this field will be null.

primaryVirtualWarehouse

Number

This field holds the virtual warehouse that will used as the basis for all transactions for which only a physical warehouse and not a virtual warehouse has not been specified.

dunsNo

String

This field holds the Dun and Bradstreet number to identify the physical warehouse. This is published for the physical warehouse.

dunsLocation

String

This field holds the Dun and Bradstreet number to identify the physical warehouse. This is published for the physical warehouse.

breakPackInd

String

This field indicates whether the physical warehouse can distribute less than the supplier case quantity. Valid values are Y or N. This is published for both physical and virtual warehouse.

redistributionWarehouseInd

String

This field contains re-distribution warehouse is used to flag 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 order quantities redistributed to actual receiving locations close to expected receipt. Valid values are yes (Y) and no (N). This is published for both physical and virtual warehouse

deliveryPolicy

String

This field delivery policy of the physical 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 warehouse.

pricingLocation

Number

This field contains location for which pricing information was copied for this virtual warehouse. This Is published for virtual warehouse.

pricingLocationCurrency

String

This field contains currency code of the pricing location. This is published for virtual warehouse

orgUnitId

Number

This field holds the org unit ID of the virtual warehouse. This is published for virtual warehouse.

vatRegion

Number

This field holds the VAT region where the physical warehouse belongs. This Is published for physical and virtual warehouse.

orgHierarchyType

Number

This field contains the organization type that will be used for reporting purposes for the physical warehouse. The type comes from the organizational hierarchy.

orgHierarchyValue

Number

This field contains the code associated with the specific organizational hierarchy type. Valid values include the company number, chain number, area number, etc.

restrictedInd

String

This field indicates whether the inventory for this virtual warehouse is restricted, meaning it is impacted last an inbound type of transaction occurring at the physical warehouse level.

protectedInd

String

This field 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

String

This field determines if a virtual warehouse should be forecasted.

transferEntityId

String

This field indicates the transfer entity with which this virtual warehouse is associated.

finisherInd

String

This field indicates whether a virtual warehouse is an internal finisher or not.

inboundHandlingDays

Number

This field indicated the number of days that the physical warehouse requires to receive any item and get it to the shelf so that it is ready to pick.

virtualWarehouseType

String

This field contains virtual warehouse type.

orgEntityType

String

This field will specify if the virtual warehouse is a legal entity (Importer, Exporter) or a regular warehouse.

customerOrderLocationInd

String

This field indicates if the virtual warehouse can source or fulfill customer orders.

defaultWarehouse

Number

This field contains the default sourcing warehouse linked to the virtual warehouse.

giftWrappingInd

String

This field indicates whether the warehouse supports gift wrapping.

customerOrderShippingInd

String

This field indicates whether the virtual warehouse supports shipping customer orders.

investmentBuyInd

String

This field indicates investment buy is configured for this warehouse.

investmentBuyWarehouseLink

Number

This field contains the warehouse linked to the investment buy.

replenishableInd

String

This field determines if a warehouse is replenishable.

replenishmentSourceOrder

Number

This field contains the order from which the inventory is sourced from the linked warehouses.

replenishableWarehouseLink

Number

This field 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

String

This field contains unique tax identification number of the physical warehouse.

primaryAddressType

String

This field specifies type for the address. Valid values are: 01 -Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 -Remittance.

primaryAddressTypeDescription

String

This field specifies address type description.

primaryAddressAdd1

String

This field contains the first line of the address.

primaryAddressAdd2

String

This field contains the second line of the address.

primaryAddressAdd3

String

This field contains the third line of the address.

primaryAddressCity

String

This field contains name of the city that is associated with the address.

primaryAddressState

String

This field contains state abbreviation for the address.

primaryAddressStateName

String

This field contains state description for the address.

primaryAddressCountryId

String

This field contains the country where the address exists.

primaryAddressCountryName

String

This field contains the country description where the address exists.

primaryAddressPost

String

This field contains the zip code for the address.

primaryAddressContactName

String

This field contains the name of the contact person at this address.

primaryAddressContactPhone

String

This field contains the phone number of the contact person at this address.

primaryAddressContactTelex

String

This field contains the telex number of the contact person at this address.

primaryAddressContactFax

String

This field contains the fax number of the contact person at this address.

primaryAddressContactEmail

String

This field contains the email address of the warehouse location contact person.

primaryAddressCounty

String

This field contains the county where the address exists.

primaryAddrJurisdictionCode

String

This field contains the ID associated to the tax jurisdiction of the country-state relationship.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttribute

 

This list holds custom flex attributes for the warehouse.

address

 

This list holds all the warehouse addresses.

cacheTimestamp

String

This field specifies date and time when the warehouse record was last maintained.

Table 5-325 customFlexAttribute

Name Data Type Description

name

String

This field will hold the custom flex attribute name.

value

String

This field will hold the numeric or string value of the custom flex attribute.

valueDate

String

This field will hold the date value of the custom flex attribute.

createDateTime

String

This field will hold the date time when the custom flex attribute was inserted.

updateDateTime

String

This field will hold the date time when the custom flex attribute was last updated.

Table 5-326 address

Name Data Type Description

addressKey

Number

This field contains the unique address key.

addressType

String

This field specifies type for the address. Valid values are: 01 -Business, 02 - Postal, 03 - Returns, 04 - Order, 05 - Invoice, 06 -Remittance.

addressTypeDescription

String

This field specifies address type description.

primaryAddressInd

String

This field indicates whether the address is the primary address for the address type.

add1

String

This field contains the first line of the address.

add2

String

This field contains the second line of the address.

add3

String

This field contains the third line of the address.

city

String

This field contains name of the city that is associated with the address.

state

String

This field contains name of the state that is associated with the address.

stateName

String

This field contains name of the state description that is associated with the address.

countryId

String

This field contains name of the country that is associated with the address.

countryName

String

This field contains name of the country description that is associated with the address.

post

String

This field contains the zip code for the address.

contactName

String

This field contains the name of the contact person at this address.

contactPhone

String

This field contains the phone number of the contact person at this address.

contactTelex

String

This field contains the telex number of the warehouse's representative contact.

contactFax

String

This field contains the fax number of the contact person at this address.

contactEmail

String

This field contains email address of the warehouse's representative contact.

county

String

This field contains the county where the address exists .

jurisdictionCode

String

This field contains the ID associated to the tax jurisdiction of the country-state relationship.

createDateTime

String

This field holds the record creation date.

updateDateTime

String

This field holds the date when the record was last updated.

customFlexAttribute

 

This list holds custom flex attributes for the warehouse's address.

Table 5-327 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.

hasMore

This is dependent on limit value. If the total rows are more than the limit defined, 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",
     "warehouse": 1,
     "warehouseName": "Test100",
     "whNameSecondary": "Test100",
     "email": "someone@gmail.com",
     "stockholdingInd": "N",
     "channelId": null,
     "channelDescription": null,
     "currencyCode": "USD",
     "physicalWarehouse": 1,
     "primaryVirtualWarehouse": 13,
     "dunsNo": "10",
     "dunsLocation": "10",
     "breakPackInd": "Y",
     "redistributionWarehouseInd": "Y",
     "deliveryPolicy": "NEXT",
     "pricingLocation": null,
     "pricingLocationCurrency": null,
     "orgUnitId": null,
     "vatRegion": 1000,
     "orgHierarchyType": 20,
     "orgHierarchyValue": 5,
     "restrictedInd": "N",
     "protectedInd": "N",
     "forecastWarehouseInd": "N",
     "transferEntityId": null,
     "finisherInd": "N",
     "inboundHandlingDays": 0,
     "virtualWarehouseType": null,
     "orgEntityType": "R",
     "customerOrderLocationInd": null,
     "defaultWarehouse": null,
     "giftWrappingInd": "N",
     "customerOrderShippingInd": "N",
     "investmentBuyInd": "N",
     "investmentBuyWarehouseLink": null,
     "replenishableInd": "N",
     "replenishmentSourceOrder": null,
     "replenishableWarehouseLink": null,
     "taxId": "3333",
     "primaryAddressType": "01",
     "primaryAddressTypeDescription": "Business",
     "primaryAddressAdd1": "wh1 business address",
     "primaryAddressAdd2": null,
     "primaryAddressAdd3": null,
     "primaryAddressCity": "MN",
     "primaryAddressState": null,
     "primaryAddressStateName": null,
     "primaryAddressCountryId": "US",
     "primaryAddressCountryName": "United States of America",
     "primaryAddressPost": null,
     "primaryAddressContactName": null,
     "primaryAddressContactPhone": null,
     "primaryAddressContactTelex": null,
     "primaryAddressContactFax": null,
     "primaryAddressContactEmail": null,
     "primaryAddressCounty": null,
     "primaryAddrJurisdictionCode": null,
     "createDateTime": "2021-06-21T07:25:03.000Z",
     "updateDateTime": "2021-11-20T05:52:14.000Z",
     "customFlexAttribute": [
      {
        "name": "ZONE",
        "value": "CZE",
        "valueDate": null,
        "createDateTime": "2021-06-21T17:27:29.000Z",
        "updateDateTime": "2021-06-21T17:27:29.000Z"
      }
     ],
     "address": [
      {
        "addressKey": 50252,
        "addressType": "01",
        "addressTypeDescription": "Business",
        "primaryAddressInd": "Y",
        "add1": "wh1 business address",
        "add2": null,
        "add3": null,
        "city": "MN",
        "state": null,
        "stateName": null,
        "countryId": "US",
        "countryName": "United States of America",
        "post": null,
        "contactName": null,
        "contactPhone": null,
        "contactTelex": null,
        "contactFax": null,
        "contactEmail": null,
        "county": null,
        "jurisdictionCode": null,
        "createDateTime": "2021-06-21T07:27:55.000Z",
        "updateDateTime": "2021-06-29T08:19:30.000Z",
        "customFlexAttribute": [
         {
          "name": "PROVINCIAL",
          "value": "Y",
          "valueDate": null,
          "createDateTime": "2021-06-21T17:30:43.000Z",
          "updateDateTime": "2021-06-21T17:30:43.000Z"
         }
        ]
      },
      {
        "addressKey": 50254,
        "addressType": "02",
        "addressTypeDescription": "Postal",
        "primaryAddressInd": "Y",
        "add1": "wh1 postal address 2",
        "add2": null,
        "add3": null,
        "city": "OH",
        "state": "OH",
        "stateName": "Ohio",
        "countryId": "US",
        "countryName": "United States of America",
        "post": null,
        "contactName": "MM",
        "contactPhone": "79898098",
        "contactTelex": "098098",
        "contactFax": "979898u",
        "contactEmail": "mm@gmail.com",
        "county": null,
        "jurisdictionCode": null,
        "createDateTime": "2021-06-21T07:28:19.000Z",
        "updateDateTime": "2021-06-23T08:05:34.000Z",
        "customFlexAttribute": null
      }
     ],
     "cacheTimestamp": "2022-07-02T00:35:21.715Z"
    }
  ],
  "hasMore": true,
  "limit": 1,
  "count": 1,
  "links": [
    {
     "href": "http://<hostname>:<port>/MerchIntegrations/services/foundation/warehouse?limit=1&since=1970-01-01T00:00:00.001Z&before=2022-07-18T23:51:50.875441+00:00",
     "rel": "self"
    },
    {
     "href": "http://<hostname>:<port>/MerchIntegrations/services/foundation/warehouse?offsetkey=1&limit=1&since=1970-01-01T00:00:00.001Z&before=2022-07-18T23:51:50.875441+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

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

Fiscal Document Generation Services

This section describes the Fiscal Document Generation Services.

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 field contains the identification name of system that is requesting a fiscal document. This name is provided by system that is requesting.

 

docType

Yes

String

This field contains the type of the document. Valid values are codes from CODE_DETAIL with a CODE_TYPE of FDTY.

INV, WBL.

extReqId

No

String

This field contains the external request ID. This is the internal number from system that is requesting a fiscal document.

For example: asn_nbr ID from shipments.

 

issueDate

Yes

OffsetDateTime

This field contains the issue date of document in the format YYYY-MM-DDThh:mm:ssTZD (for example, 1997-07-16T19:20:30+01:00) equivalent to ISO 8601.

 

transactionType

Yes

String

This field contains the code type of the transaction. Valid values are codes from CODE_DETAIL with a CODE_TYPE of GTRT.

ITMTAX, PO

TSF, DEAL, RTV, POSSAL, SALES, TAXINF, FO, FR

currencyCode

Yes

String

This field contains the currency code for the fiscal document. It is based on currency code defined in shipment location that is going to ship goods.

 

entities

Yes

List<RestFdgEtt>

Collection of entities.

 

details

Yes

List<RestFdgDtl>

Collection of item details.

 

comments

No

List<RestFdgText>

Collection of comments.

 

references

No

List<RestFdgRef>

Collection of references.

 

RestFdgEtt

The fiscalDocument/entities node has the following parameters:

Parameter Name Required Data Type Description Valid values

entityType

Yes

String

This field contains the entity type.

Valid values are codes from CODE_DETAIL with a CODE_TYPE of FDED.

SHIPP, DEST, VENDOR, CR, LOC

entityInternalType

No

String

This field contains the Merchandising entity type.

Valid values are codes from CODE_DETAIL with a CODE_TYPE of FDET.

WH, ST, SUPP, PTNR, CUST

entityInternalPtnrType

No

String

This field contains the Merchandising partner type.

Valid values are codes from CODE_DETAIL with a CODE_TYPE of PTNR.

AG, AP, BK, BR, CN, CO, E, EC, ES, EV, FA, FF, IA, IM, S1, S2, S3

entityCode

No

String

This field contains the entity's Merchandising internal code. For example, ID of store or warehouse.

 

name

No

String

This field contains the name responsible for transportation. This field is uses only when there is no entity code defined for transportation. It's used by SIM shipments because there is no transportation entity.

 

carrierVehicleRn

No

String

This field contains the vehicle registration number responsible for transportation.

 

carrierVehicleState

No

String

This field contains the state of the country where vehicle, responsible for transportation, is registered.

 

carrierDriverName

No

String

This field contains the driver name responsible for transportation.

 

carrierDriverLn

No

String

This field 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 field contains the unique code ID that identifies the item.

 

uom

Yes

String

This field contains the unit of measure used in item in the fiscal document.

 

qty

Yes

BigDecimal

This field contains the quantity of item in this fiscal document.

 

references

No

List<RestFdgRef>

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 field 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 fiscal document, as shipment number, contract number, order, id, and so on.

Valid values: CODE_DETAILFDRT.

FDOC, ORDER, SHIPN, FULLF, ALLOC, DISTRO,

BOLN, TSFNO,

RTVNO, CONO

,

RTVAUT, CTRC

refCode

Yes

String

This field contains the reference code/value of reference type at item level.

 

RestFdgText

The fiscalDocument/comments node has the following parameters:

Parameter Name Required Data Type Description Valid values

text

Yes

String

This field contains additional comments at item level. It is used to provide any additional information or legal message important to fiscal 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 field 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.

 

JSON Input Structure:

"{
   "fiscalDocument": {
   "requestSystem": "SIOCS",
   "docType": "WBL",
   "extReqId": "10001",
   "transactionType": "TSF",
   "issueDate": "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 field contains the unique identifier of the document request.

requestSystem

String

This column contains the unique identifier 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 field contains the external request ID. This is the internal number from system that is requesting a fiscal document. Example: asn_nbr ID from shipments.

docPrintUrl

String

This column contains the url to access the fiscal document issued by government. It can be a url from third-party repository responsible to communicate with governement or other url.

additionalproperties

List<RestFdgExt>

Collection of additional properties.

errors

List<RestFdgError>

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 field contains the error code.

errorDesc

String

This field 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

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 field contains the identification name of system that is requesting a fiscal document. This name is provided by system that is requesting.

 

docType

Yes

String

This field contains the type of the document.

Valid values are codes from CODE_DETAIL with a CODE_TYPE of FDTY.

INV, WBL

extReqId

No

String

This field contains the external request ID. This is the internal number from system that is requesting a fiscal document. For example, asn_nbr ID from shipments

 

issueDate

Yes

OffsetDateTime

This field contains the issue date of document in the format YYYY-MM-DDThh:mm:ssTZD (for example, 1997-07-16T19:20:30+01:00) equivalent to ISO 8601.

 

transactionType

Yes

String

This field contains the code type of the transaction.

Valid values are codes from CODE_DETAIL with a CODE_TYPE of GTRT.

ITMTAX, PO, TSF, DEAL, RTV, POSSAL, SALES, TAXINF, FO, FR

currencyCode

Yes

String

This field contains the currency code for the fiscal document. It is based on currency code defined in shipment location that is going to ship goods.

 

deduceTax

Yes

String

This field 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 fill taxes information.

Y or N

entities

Yes

List<RestFdgEtt>

Collection of entities.

 

details

Yes

List<RestFdgDtl>

Collection of item details.

 

comments

No

List<RestFdgText>

Collection of comments.

 

references

No

List<RestFdgRef>

Collection of references.

 

RestFdgEtt:

The fiscalDocument/entities node has the following parameters:

Parameter Name Required Data Type Description Valid values

entityType

Yes

String

This field contains the entity type.

Valid values are codes from CODE_DETAIL with a CODE_TYPE of FDED.

SHIPP, DEST, VENDOR, CR, LOC

entityInternalType

No

String

This field contains the Merchandising entity type.

Valid values are codes from CODE_DETAIL with a CODE_TYPE of FDET.

WH, ST, SUPP, PTNR, CUST

entityInternalPtnrType

No

String

This field contains the Merchandising partner type.

Valid values are codes from CODE_DETAIL with a CODE_TYPE of PTNR.

AG, AP, BK, BR, CN, CO, E, EC, ES, EV, FA, FF, IA, IM, S1, S2, S3

entityCode

No

String

This field contains the entity's Merchandising internal code. For example, ID of store or warehouse

 

name

No

String

This field contains the name responsible for transportation. This field is uses only when there is no entity code defined for transportation. It's used by SIM shipments because there is no transportation entity.

 

carrierVehicleRn

No

String

This field contains the vehicle registration number responsible for transportation.

 

carrierVehicleState

No

String

This field contains the state of the country where vehicle, responsible for transportation, is registered.

 

carrierDriverName

No

String

This field contains the driver name responsible for transportation.

 

carrierDriverLn

No

String

This field 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 field contains the unique code ID that identifies the item.

 

totalAmt

Yes

BigDecimal

This field contains the total value of this item in the fiscal document.

 

unitAmt

Yes

BigDecimal

This field contains the item unit cost of this item in the document.

 

uom

Yes

String

This field contains the unit of measure used in item in the fiscal document.

 

qty

Yes

BigDecimal

This field contains the quantity of item in this fiscal document.

 

totalTaxAmt

No

BigDecimal

This field contains the total value of item in this fiscal document.

 

totalAmtInclTax

No

BigDecimal

This field contains the total value including all taxes value of item in this fiscal document.

 

taxes

No

List<RestFdgTax>

Collection of item taxes.

 

references

No

List<RestFdgRef>

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 field contains the tax type at item level.

U (for tax per value) or P (for tax per percentage).

taxCode

Yes

String

This field contains the tax identification code that should be applied at item level.

 

taxAmt

Yes

BigDecimal

This field contains the tax value at item level, when tax type is set as per value.

 

taxCodeDesc

Yes

String

This field contains the tax code description at item level. This field 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 field 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 fiscal document, as shipment number, contract number, order, ID, and so on.

Valid values: CODE_DETAILFDRT.

FDOC, ORDER, SHIPN, FULLF, ALLOC, DISTRO, BOLN, TSFNO, RTVNO, CONO, RTVAUT,CTRC

refCode

Yes

String

This field 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 field contains the charge indicator at item allowance charges level.

Y (represents a charge). N (represents an allowance).

nonMerchCode

Yes

String

This field 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 field contains the non-merchandise value at item allowance changes level.

 

taxes

No

List<RestFdgTax>

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 field contains the tax type at item allowance charge taxes level.

U (for tax per value) or P (for tax per percentage).

taxCode

Yes

String

This field contains the tax identification code that should be applied at item allowance charges taxes level.

 

taxAmt

Yes

BigDecimal

This field contains the tax value at item allowance charges taxes level, when tax is set up as per value.

 

taxCodeDesc

Yes

String

This field contains the tax code description at item allowance charges taxes level. This field can be used to indicate extra code or detailed information about tax code.

 

comments

No

List<RestFdgText>

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 field contains additional comments at item level. It is used to provide any additional information or legal message important to fiscal 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 field 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 field 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 fiscal document, as shipment number, contract number, order, ID, and so on. Valid values: CODE_DETAILFDRT.

FDOC, ORDER, SHIPN, FULLF, ALLOC, DISTRO, BOLN, TSFNO, RTVNO, CONO, RTVAUT, CTRC

refCode

Yes

String

This field 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 field contains the unique identifier of the document request.

requestSystem

String

This column contains the unique identifier 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 field contains the external request ID. This is the internal number from system that is requesting a fiscal document. Example: asn_nbr ID from shipments.

docPrintUrl

String

This column contains the url to access the fiscal document issued by government. It can be a url from third-party repository responsible to communicate with governement or other url.

additionalproperties

List<RestFdgExt>

Collection of additional properties.

errors

List<RestFdgError>

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 field contains the error code.

errorDesc

String

This field 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

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>&entityInternalType=<string>&entityCode=<string>&country=<string>
Input Parameters
Parameter Name Required Data Type Description Valid values

requestId

Yes

String

This column contains the unique identifier of the document request.

 

requestSystem

No

String

This column contains the unique identifier of the requester.

 

entityType

No

String

This field contains the entity type.

Valid values are codes from CODE_DETAIL with a CODE_TYPE of FDED.

SHIPP, DEST, VENDOR, CR, LOC

entityInternalType

No

String

This field contains the Merchandising entity type.

Valid values are codes from CODE_DETAIL with a CODE_TYPE of FDET.

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 fiscal document REQUEST ID generated by FDG. This ID can be used to identify the fiscal document(s) being processed.

requestSystem

String

Name of the system that performed the request for a fiscal document.

requestAction

String

Action code to be passed along with the request for a fiscal document process.

docNo

String

Official fiscal document number. This number is given to approved documents.

docType

String

Valid values: INV (Invoice), WBL (eWaybill), NFe (Nota Fiscal Eletronica).

status

String

Internal FDG status of the fiscal 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 fiscal document report.

additionalproperties

List<RestFdgExt>

Collection of additional properties.

errors

List<RestFdgError>

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 field contains the error code.

errorDesc

String

This field 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>&internalCode=<string>&integrationSystemName=<string>&integrationSystemId=<string>
Input Parameters
Parameter Name Required Data Type Description Valid values

docId

No

String

Internal fiscal document ID generated by FDG. This ID is unique to each fiscal document created.

 

docType

No

String

This field contains the type of the document.

Valid values are codes from CODE_DETAIL with a CODE_TYPE of FDTY.

INV, WBL

entityType

No

String

This field contains the entity type.

Valid values are codes from CODE_DETAIL with a CODE_TYPE of FDED.

SHIPP, DEST, VENDOR, CR, LOC

internalType

No

String

Filter criteria to fetch documents based on specific entity types in Merchandising irrespective of their role in the fiscal documents.

WH, ST, SUPP, PTRN, CUST

internalCode

No

String

Filter criteria to fetch documents based on a specific entity code. This field contains the entity's Merchandising internal code and must sent in conjunction with entityInternatType tag. For example, ID of store or warehouse

 

integrationSystemName

Yes

String

Name of the integration system that will process this document.

 

integrationSystemId

Yes

String

Unique identifier to be used by the integration system.

 
Output
Parameter Name Data Type Description

requestId

String

Internal fiscal document REQUEST ID generated by FDG. This ID can be used to identify the fiscal document(s) being processed.

requestSystem

String

Name of the system that performed the request for a fiscal document.

requestAction

String

Action code to be passed along with the request for a fiscal document process.

docId

BigDecimal

Internal fiscal document ID generated by FDG. This ID is unique to each fiscal document created.

docNo

String

Official fiscal document number. This number is given to approved documents.

status

String

Internal FDG status of the fiscal document.

docType

String

Valid values: INV (Invoice), WBL (eWaybill), NFe (Nota Fiscal Eletronica).

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

Identification of the transaction associated with the fiscal document.

issueDate

OffsetDateTime

Issue date of the fiscal document. Date defined at the time the document is submitted for approval.

dueDate

date

Payment date of fiscal document or invoice.

docLang

String

Language of fiscal document. It is based on language defined in source location.

printerId

String

Printer ID that is designated to print fiscal document.

docPrintUrl

String

URL of the fiscal document report.

currencyCode

String

Currency code for the fiscal document. It is based on currency code defined in source location.

totalTaxAmt

BigDecimal

Total TAX amount of the fiscal document. This field is the sum of totalTaxAmt of all items of the document. Rounding applied based on system option.

totalNonMerchTaxAmt

BigDecimal

Total TAX amount of allowances/charges of the fiscal document. Rounding applied based on system option.

totalAmtInclTax

BigDecimal

Total value of fiscal document including taxes. This field is the sum of totalAmtInclTax of all items of the document. Rounding applied based on system option.

totalAmtExclTax

BigDecimal

Total value of fiscal document excluding taxes. This field has the totalAmtInclTax minus totalTaxAmt. Rounding applied based on system option.

totalAllowance

BigDecimal

Total value of all allowances in fiscal document. This field is the sum of totalAllowance of all items of the document. Rounding applied based on system option.

totalCharge

BigDecimal

Total value of all charges in fiscal document. This field is the sum of totalCharge of all items of the document. Rounding applied based on system option.

totalRounding

BigDecimal

The rounding amount (positive or negative) added to produce the line extension totalAmt. This field is the sum of totalRounding of all items of the 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 fiscal document request.

createBy

String

User ID that created the record.

createDatetime

date

Record creation date.

lastUpdateBy

String

User ID that did last update of fiscal document.

lastUpdateDatetime

date

Date of last update of fiscal document.

entities

List<RestFdgEtt>

Collection of entities.

details

List<RestFdgDtl>

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.

carrierDriverName

String

Carrier driver´s name.

carrierDriverLn

String

Carrier driver´s license number.

address

RestFdgEttAddr

Collection of address details.

identification

List<RestFdgExt>

Collection of Entity Identification 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.

email

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<RestFdgExt>

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<RestFdgRef>

Collection of references.

totaltaxes

List<RestFdgTax>

Collection of taxes.

errors

List<RestFdgError>

Collection of errors.

allowanceCharges

List<RestFdgNonMerch>

Collection of allowance charges.

additionalproperties

List<RestFdgExt>

Collection of additional properties.

comments

List<RestFdgText>

Collection of comments.

RestFdgDtl

Parameter Name Data Type Description

lineNo

long

Sequential number of the item in fiscal document. This number is a sequence starts with number one. Any gap is not allowed.

Item

String

Unique code ID that identifies 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 applied based on system option.

unitAmt

BigDecimal

Item unit amount. No rounding applied.

uom

String

Unit of measure used in item in the fiscal document.

qty

BigDecimal

Quantity of item in the fiscal document.

totalTaxAmt

BigDecimal

Total amount of taxes applied to the item. This field is sum of all taxAmt at tax level for this item. Rounding applied based on system option.

totalAmtInclTax

BigDecimal

Total amount for item inclusive of taxes. Calculation formula is totalAmt + totalTaxAmt. Rounding applied based on system option.

totalRounding

BigDecimal

The rounding amount (positive or negative) added to produce the line extension totalAmt. Calculation formula ((unitAmt*qty) - totalAllowance + totalCharge)-totalAmt.

totalAllowance

BigDecimal

Total amount of all allowances at item level. This field is sum of all allowances at allowanceCharges level for this item. Rounding applied based on system option.

totalCharge

BigDecimal

Total amount of all charges at item level. This field is sum of all charges at allowanceCharges level for this item. Rounding applied based on system option.

packInd

String

Pack indicator. Valid values: Y (this item is a pack) or N (this item is not a pack).

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<RestFdgTax>

Collection of item taxes.

references

List<RestFdgRef>

Collection of item references

allowanceCharges

List<RestFdgNonMerch>

Collection of item allowance charges.

packdetails

List<RestFdgDtlPack>

Collection of item pack details.

additionalproperties

List<RestFdgExt>

Collection of item additional properties.

comments

List<RestFdgText>

Collection of item comments.

RestFdgTax

Parameter Name Data Type Description

taxType

String

Tax type.

taxCode

String

Tax identification 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.

unitTaxAmt

BigDecimal

Tax amount per unit for the tax code.

taxBasis

BigDecimal

Tax basis amount used to calculate tax value based on taxRate field. Rounding applied based on system option.

taxCodeDesc

String

Tax code description. This field can be used to indicate extra code or detailed information about tax code.

additionalproperties

List<RestFdgExt>

Collection of taxes addition properties.

comments

List<RestFdgText>

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 fiscal 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 field 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 fiscal document, as shipment number, contract number, order, ID, and so on.

Valid values are pre-defined in the Merchandising system.

refCode

String

Reference code/value of reference type.

RestFdgNonMerch

Parameter Name Data Type Description

chargeInd

String

Charge indicator.

nonMerchCode

String

Non-merchandise code that identifies 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<RestFdgTax>

Collection of taxes for non-merchandise.

additionalproperties

List<RestFdgExt>

Collection of additional properties for non-merchandise.

comments

List<RestFdgText>

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 for totalTaxes.

taxCode

String

Tax identification code.

taxRate

BigDecimal

Not applicable for totalTaxes.

taxAmt

BigDecimal

Sum of taxAmt for all items for the tax code. Rounding applied based on system option

unitTaxAmt

BigDecimal

Not applicable for totalTaxes.

taxBasis

BigDecimal

Sum of taxBasis for all items for the tax code. Rounding applied based on system option.

taxCodeDesc

String

Tax code description. This field 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

integrationSystemName

Yes

String

Name of the integration system that will process this document.

 

integrationSystemId

Yes

String

Unique identifier to be used by the integration system.

 

requestAction

No

String

Action code returned for a given document in the nextDocumentDetail response.

A (approve) or C (cancel).

docId

Yes

String

Document ID returned for a given document in nextDocumentDetail response.

 

docNo

Yes

String

Document number returned for a given document in nextDocumentDetail response.

 

operationStatus

Yes

String

Status of the processing executed by third party for the given document. Success means that request was executed properly, and fail means that request was not completed. In this case it is expected the error or errors to be informed.

S (Success) or F (Fail).

extDocNo

No

String

External document number when applicable. This field should be populated with the approved fiscal document number when it is generated by Government.

 

docPrintUrl

No

String

URL to access or download the fiscal document printable version (PDF).

 

additionalproperties

No

List<RestFdgExt>

Collection of additional properties.

 

errors

No

List<RestFdgError>

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, NUMBER or DATE

description

No

String

Description of additional property data.

 

RestFdgError:

Parameter Name Required Data Type Description Valid values

errorCode

Yes

String

Error code defined by 3rd party.

 

errorDesc

Yes

String

Error description defined by 3rd party. This description must have enough detail so the problem can be identified.

 

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<RestFdgError>

Collection of errors.

RestFdgError

Parameter Name Data Type Description

errorCode

String

This field contains the error code.

errorDesc

String

This field 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

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 field 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).

additionalproperties

No

List<RestFdgExt>

Collection of additional properties.

 

comments

No

List<RestFdgText>

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, NUMBER or DATE

description

No

String

Description of additional property data.

 

RestFdgText:

Parameter Name Required Data Type Description Valid values

text

Yes

String

This field contains additional comments at item level. It is used to provide any additional information or legal message important to fiscal 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 field 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.

 

JSON Input Structure:

"{
   "docId": "12345",
   "requestAction": "C",
   "additionalproperties": [
    {
      "key": "EXTID1",
      "value": "ExtensionValue",
      "type": "VARCHAR2"
    }],
   "comments": 
      [{
	  "text": "additional text"
	}]
}"
Output
Parameter Name Data Type Description

processStatus

String

This column contains the status of the document

errors

List<RestFdgError>

Collection of errors.

RestFdgError

Parameter Name Data Type Description

errorCode

String

This field contains the error code.

errorDesc

String

This field 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=<string>
Input Parameters
Parameter Name Required Data Type Description Valid values

docId

No

String

Internal fiscal document ID generated by FDG. This ID is unique to each fiscal document created.

 

entityType

No

String

Filter criteria to fetch documents for specific entity types in a fiscal document.

SHIPP, DEST, CR, VENDOR, INV, LOC

entityInternalType

No

String

Filter criteria to fetch documents based on specific entity types in Merchandising irrespective of their role in the fiscal documents.

WH, ST, SUPP, PTNR, CUST

entityCode

No

String

Filter criteria to fetch documents based on a specific entity code. This field contains the entity's Merchandising internal code and must sent in conjunction with entityInternatType tag. For example, ID of store or warehouse.

 
Output
Parameter Name Data Type Description

requestId

String

Internal fiscal document REQUEST ID generated by FDG. This ID can be used to identify the fiscal document(s) being processed.

requestSystem

String

Name of the system that performed the request for a fiscal document.

requestAction

String

Action code to be passed along with the request for a fiscal document process.

docId

BigDecimal

Internal fiscal document ID generated by FDG. This ID is unique to each fiscal document created.

docNo

String

Official fiscal document number. This number is given to approved documents.

status

String

Internal FDG status of the fiscal document.

docType

String

Valid values: INV (Invoice), WBL (eWaybill), NFe (Nota Fiscal Eletronica).

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

Identification of the transaction associated with the fiscal document.

issueDate

OffsetDateTime

Issue date of the fiscal document. Date defined at the time the document is submitted for approval.

dueDate

date

Payment date of fiscal document or invoice.

docLang

String

Language of fiscal document. It is based on language defined in source location.

printerId

String

Printer ID that is designated to print fiscal document.

docPrintUrl

String

URL of the fiscal document report.

currencyCode

String

Currency code for the fiscal document. It is based on currency code defined in source location.

totalTaxAmt

BigDecimal

Total TAX amount of the fiscal document. This field is the sum of totalTaxAmt of all items of the document. Rounding applied based on system option.

totalNonMerchTaxAmt

BigDecimal

Total TAX amount of allowances/charges of the fiscal document. Rounding applied based on system option.

totalAmtInclTax

BigDecimal

Total value of fiscal document including taxes. This field is the sum of totalAmtInclTax of all items of the document. Rounding applied based on system option.

totalAmtExclTax

BigDecimal

Total value of fiscal document excluding taxes. This field has the totalAmtInclTax minus totalTaxAmt. Rounding applied based on system option.

totalAllowance

BigDecimal

Total value of all allowances in fiscal document. This field is the sum of totalAllowance of all items of the document. Rounding applied based on system option.

totalCharge

BigDecimal

Total value of all charges in fiscal document. This field is the sum of totalCharge of all items of the document. Rounding applied based on system option.

totalRounding

BigDecimal

The rounding amount (positive or negative) added to produce the line extension totalAmt. This field is the sum of totalRounding of all items of the 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 fiscal document request.

createBy

String

User ID that created the record.

createDatetime

date

Record creation date.

lastUpdateBy

String

User ID that did last update of fiscal document.

lastUpdateDatetime

date

Date of last update of fiscal document.

entities

List<RestFdgEtt>

Collection of entities.

details

List<RestFdgDtl>

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.

carrierDriverName

String

Carrier driver´s name.

carrierDriverLn

String

Carrier driver´s license number.

address

RestFdgEttAddr

Collection of address details.

identification

List<RestFdgExt>

Collection of Entity Identification 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.

email

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<RestFdgExt>

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<RestFdgRef>

Collection of references.

totaltaxes

List<RestFdgTax>

Collection of taxes.

errors

List<RestFdgError>

Collection of errors.

allowanceCharges

List<RestFdgNonMerch>

Collection of allowance charges.

additionalproperties

List<RestFdgExt>

Collection of additional properties.

comments

List<RestFdgText>

Collection of comments.

RestFdgDtl

Parameter Name Data Type Description

lineNo

long

Sequential number of the item in fiscal document. This number is a sequence starts with number one. Any gap is not allowed.

Item

String

Unique code ID that identifies 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 applied based on system option.

unitAmt

BigDecimal

Item unit amount. No rounding applied.

uom

String

Unit of measure used in item in the fiscal document.

qty

BigDecimal

Quantity of item in the fiscal document.

totalTaxAmt

BigDecimal

Total amount of taxes applied to the item. This field is sum of all taxAmt at tax level for this item. Rounding applied based on system option.

totalAmtInclTax

BigDecimal

Total amount for item inclusive of taxes. Calculation formula is totalAmt + totalTaxAmt. Rounding applied based on system option.

totalRounding

BigDecimal

The rounding amount (positive or negative) added to produce the line extension totalAmt. Calculation formula ((unitAmt*qty) - totalAllowance + totalCharge)-totalAmt.

totalAllowance

BigDecimal

Total amount of all allowances at item level. This field is sum of all allowances at allowanceCharges level for this item. Rounding applied based on system option.

totalCharge

BigDecimal

Total amount of all charges at item level. This field is sum of all charges at allowanceCharges level for this item. Rounding applied based on system option.

packInd

String

Pack indicator. Valid values: Y (this item is a pack) or N (this item is not a pack).

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<RestFdgTax>

Collection of item taxes.

references

List<RestFdgRef>

Collection of item references

allowanceCharges

List<RestFdgNonMerch>

Collection of item allowance charges.

packdetails

List<RestFdgDtlPack>

Collection of item pack details.

additionalproperties

List<RestFdgExt>

Collection of item additional properties.

comments

List<RestFdgText>

Collection of item comments.

RestFdgTax

Parameter Name Data Type Description

taxType

String

Tax type.

taxCode

String

Tax identification 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.

unitTaxAmt

BigDecimal

Tax amount per unit for the tax code.

taxBasis

BigDecimal

Tax basis amount used to calculate tax value based on taxRate field. Rounding applied based on system option.

taxCodeDesc

String

Tax code description. This field can be used to indicate extra code or detailed information about tax code.

additionalproperties

List<RestFdgExt>

Collection of taxes addition properties.

comments

List<RestFdgText>

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 fiscal 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 field 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 fiscal document, as shipment number, contract number, order, ID, and so on.

Valid values are pre-defined in Merchandising System.

refCode

String

Reference code/value of reference type.

RestFdgNonMerch

Parameter Name Data Type Description

chargeInd

String

Charge indicator.

nonMerchCode

String

Non-merchandise code that identifies 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<RestFdgTax>

Collection of taxes for non-merchandise.

additionalproperties

List<RestFdgExt>

Collection of additional properties for non-merchandise.

comments

List<RestFdgText>

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 for totalTaxes.

taxCode

String

Tax identification code.

taxRate

BigDecimal

Not applicable for totalTaxes.

taxAmt

BigDecimal

Sum of taxAmt for all items for the tax code. Rounding applied based on system option

unitTaxAmt

BigDecimal

Not applicable for totalTaxes.

taxBasis

BigDecimal

Sum of taxBasis for all items for the tax code. Rounding applied based on system option.

taxCodeDesc

String

Tax code description. This field 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 ReSTful Web Services

Summary of Open Store Days

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

ReSTURL

/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

Summary of Errors

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

Summary of Over/Short Amount

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

Summary of Over/Short Count

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 Store Days

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}&sortDirection={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, and OSSUMS

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 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 recordType is DATE

NA

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 Store Aggregations

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 ID or Name

ALL, OLDER

Stores

No

Comma-separated values for stores

NA

SortAttrib

No

Sort Attribute

STORENAME, AUDITOR, OSVALUE, ERRORCNT, DATASTATUS, OPENDAYS, OSDAYS and OSSUMS

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

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 and 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-328 SvcprovSalesServiceRecRDO

Parameter Name Data Type 

 recType 

String

 fileCreateDate

String (Format :YYYYMMDDHHMMSS)

 businessDate

String(Format: YYYYMMDD)

 store

Number

 referenceNbr

String

 rtlogOrgSys

String

 transactionHeadTbl

List<SvcprovSalesTheadRecRDO>

 salesFtailTbl

List<SvcprovSalesCounterRecRDO>

Table 5-329 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

refNo26

String

refNo27

String

tranProcessSys

String

refNo28

String

refNo29

String

refNo30 

String

refNo31

String

transactionHeadAttributeTbl

List<SvcprovSalesAttrRecRDO>

transactionCustomerTbl

List< SvcprovSalesTcustRecRDO>

customerAttributeTbl

 List< SvcprovSalesAttrRecRDO>

transactionItemTbl

List< SvcprovSalesTitemRecRDO>

transactionTaxTbl

List< SvcprovSalesTtaxRecRDO>

transactionPaymentTbl

 List< SvcprovSalesTpymtRecRDO>

transactionTenderTbl 

List<SvcprovSalesTtendRecRDO>

transactionTrailerTbl

List<SvcprovSalesCounterRecRDO>

Table 5-330 SvcprovSalesAttrRecRDO

Parameter Name Data Type 

 recType 

String

 attributeType

String

 attributeValue

String

Table 5-331 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

 email

String

 birthdate

String (Format: YYYYMMDD)

Table 5-332 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

 custOrdDate

String(Format: YYYYMMDDHHMMSS)

fulfillmentOrdNo

String

noInventoryReturn

String

 salesType

String

 returnWh

Number

returnDeposition

String

originalStore

Number

originalTransactionNo

Number

 fulfillmentLocType

String

 fulfillmentLoc

Number

postingStore

String

transactionItemAttributeTbl

List<SvcprovSalesAttrRecRDO>

transactionItemDiscountTbl

List<SvcprovSalesIdiscRecRDO>

 transactionItemTaxTbl 

List<SvcprovSalesIgtaxRecRDO>

Table 5-333 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<SvcprovSalesAttrRecRDO>

Table 5-334 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<SvcprovSalesAttrRecRDO>

Table 5-335 SvcprovSalesTtaxRecRDO

Parameter Name Data Type 

 recType 

String

 taxCode

String

 taxAmount

BigDecimal

refNo17

String

 refNo18

String

 refNo19

String

 refNo20

String

transactionTaxAttributeTbl

List<SvcprovSalesAttrRecRDO>

Table 5-336 SvcprovSalesTpymtRecRDO

Parameter Name Data Type 

 recType 

String

 paymentAmount

BigDecimal

Table 5-337 SvcprovSalesTtendRecRDO

Parameter Name Data Type 

 recType 

String

 tendTypeGroup

String

tendTypeId

Number

 tenderAmount

BigDecimal

 ccNo

String

 ccAuthNo

String

 ccAuthSource

String

 ccCardholderVerification

String

 ccExpirationDate

String(Format: YYYYMMDD)

 ccEntryMode

String

 ccTerminalId

String

 ccSpecialCondition

String

 ccToken

String

 voucherNo

String

 couponNbr

String

 couponRefNo

String

 chequeAccNo

String

chequeNo

Number

 identificationMethod

String

 identificationId

String

 originalCurrency

String

 originalCurrencyAmount

BigDecimal

 refNbr9

String

 refNbr10

String

 refNbr11

String

 refNbr12

String

transactionTenderAttributeTbl

List<SvcprovSalesAttrRecRDO>

Table 5-338 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
                  }
                ]
              }
            ]
          }
        ],
        "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-339 SVCPROV_SALES_STATUS_REC

Parameter Name Data Type

statusMsg

String

salesErrTbl

List<SVCPROV_SALES_FAIL_REC >

Table 5-340 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

Store Search

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, and OSSUMS

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

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

Get Store Day Date Indicator

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

Data Privacy Access Service

This section describes the Data Privacy Access service for Sales Audit.

Business Overview

This query service provides access to data stored in Sales Audit that contain personally identifiable information.

Service Type

GET

ReSTURL

https://<host:port>/RetailAppsDataPrivServicesRESTApp/rest/privatedata/getPersonalInfo?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 Sales Audit are:

  • EMPLOYEE

  • CUSTOMER

Entity Type

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'.

Entity ID

The ID of the entity being queried. For example, the employee ID.

Full Name

The full name to be searched for the selected entity.

Phone

The phone number to be searched for the selected entity.

Email

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 EMPLOYEE, all instances where the employee, name, phone, and email match the data sent will be returned. If any of these parameters are not sent (e.g. employee), then it will not be used as part of the search. The following data is included in the response:

Parameter Description

Entity Name

Valid values are

  • EMPLOYEE

  • CUSTOMER

Entity Type

If the entity name is CUSTOMER, the value here indicates the type of customer being queried. Valid values for this input 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.

Fax

The fax number associated with the entity.

Telex

The telex number associated with the entity.

Pager

The pager number associated with the entity.

Email

The email address associated with the entity.

Sample Response
{
    "Personal Information": {
        "list": [],
            "Get Personal Information": {
                "list": [            
                   [
                        {
                            "ENTITY_NAME": "EMPLOYEE",
                            "ENTITY_TYPE": "null",
                            "ENTITY_ID": "1414",
                            "FULL_NAME": "Harry Adams",
                            "PHONE": "2349989",
                            "FAX": "null",
                            "TELEX": "null",
                            "PAGER": "null",
                            "EMAIL": "hadams@email.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 jsonFormat

  • 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

Data Privacy Forget Service

This section describes the Data Privacy Forget service for Sales Audit.

Business Overview

This service supports updating personal information stored in 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

ReSTURL

https://<host:port>/RetailAppsDataPrivServicesRESTApp/rest/privatedata/updatePersonalInfo?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

Entity Name

(required)

The group type for which data is to be updated. The available group types for Sales Audit are:

  • EMPLOYEE

  • CUSTOMER

Entity Type

Required if the entity name is CUSTOMER. The value here should indicate the type of customer. Valid values for this input can be found on the Codes table where code type is 'CIDT'.

Entity ID

(required)

The ID of the entity to be updated. For example, the employee ID.

Full Name

The value to update the full name with. If a null value is passed to this parameter that is a required field in the table, the field will be updated to 'XXXXX'.

Phone

The value to update the phone number with. If a null value is passed to this parameter that is a required field in the table, the field will be updated to 'XXXXX'.

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.

Email

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 jsonFormat

  • 500 - Internal Server Errors - for all other types of errors (for example, configuration errors, SQL errors, and so on).

Success Payloads

N/A