Administration
The following services are included in this functional area:
Data Privacy
The following services are included in this functional area:
Data Privacy Download Service
Get Personally Identifiable Information
This section describes the Data Privacy Access service for Merchandising and Sales Audit.
Business Overview
This query service provides access to data stored in Merchandising and Sales Audit that contains personally identifiable information.
ReST URL
https://rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace>/RetailAppsDataPrivServicesRESTApp/rest/privatedata/<entityName>?customer_id={entityName}::{entityType}::{entityId}::{fullName}:: {phone}::{email}
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:
The available group types for Sales Audit are:
Note: The supported entity names can also be retrieved by accessing the below URL either in the browser or through a REST client like Postman, cURL and so on:
Sample Response:
In the above response, |
Entity Type |
In case of Merchandising, this parameter
is used if the entity name is
In case of Sales Audit, this parameter is used if the entity name is |
Entity ID |
The ID of the entity being queried. For example, the supplier ID (in Merchandising) or employee ID (in Sales Audit). |
Full Name |
The full name to be searched for the selected entity. |
Phone |
The phone number to be searched for the selected entity. |
|
The email to be searched for the selected entity. |
Default Response
The response will return all instances of the data being searched that occur in the requested entity. For example, if the
entity requested was BUYER
, all instances where the buyer, name, and phone match the data sent will be returned.
If any of these parameters are not sent (for example, email), then it will not be used as part of the search. The following
data is included in the response:
Parameter | Description |
---|---|
Entity Name |
For Merchandising:
For Sales Audit:
|
Entity Type |
In the case of Merchandising, if the entity name is
For other entity types, this will be null. In the case of Sales Audit, if the entity name is |
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. |
|
The email address associated with the entity. |
Sample Response
{
"Buyer Information": {
"list": [],
"Get Buyer Information": {
"list": [
[
{
"ENTITY_NAME": "BUYER",
"ENTITY_TYPE": "null",
"ENTITY_ID": "1002",
"FULL_NAME": "Matt Wilsman",
"PHONE": "6125251034",
"FAX": "6125259800",
"TELEX": "null",
"PAGER": "null",
"EMAIL": "test.abd.com"
}
]
]
}
}
}
}
Response Codes and Error Messages
-
200 - Success
-
400 - Bad Request - for the following situations:
-
Customer ID does not match the required format.
-
Invalid input type
-
Missing customer ID
-
Invalid JSON Format
-
-
500 - Internal Server Errors - for all other types of errors (for example, configuration errors, SQL errors, and so on).
Success Payloads
-
When
Accept=application/json
, this API will return data in JSON format -
When
Accept=application/xml
, this API will return data formatted as an HTML page
The below table gives a sample of URLs for invoking the GET service for the different entity names.
Note:
-
The entity ID should be replaced with the appropriate valid ID based on the customer environment.
-
The sample response formats shown here are with using a REST client like PostMan and with the Header
Accept
value set toapplication/json
Entity Name | Reference URL | Sample Response |
---|---|---|
BUYER |
|
|
MERCHANT |
https:// rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace /RetailAppsDataPrivServicesRESTApp/rest/privatedata/MERCHANT?customer_id=MERCHANT::2114:::: |
|
STORE |
|
|
WAREHOUSE |
|
|
SUPPLIER |
|
|
PARTNER |
|
|
OUTLOC |
|
|
ORDER_CUSTOMER |
|
|
EMPLOYEE |
|
|
CUSTOMER |
|
|
Data Privacy Upload Service
Delete Personally Identifiable Information
This section describes the Data Privacy Forget service for Merchandising and Sales Audit.
Business Overview
This service supports updating personal information stored in Merchandising and Sales Audit. When the service is invoked with mask strings as inputs, it overwrites the fields with mask strings, which effectively removes the personal information from the system.
ReST URL
https://<host:port>/RetailAppsDataPrivServicesRESTApp/rest/privatedata/<updateEntityName>?customer_id={entityName}::{entityType}::{entityId}::{fullName}:: {phone}::{fax}::{telex}::{pager}::{email}::{addr1}::{addr2}::{addr3}::{county}::{city}::{state}::{countryId}::{postalCode}
Query Parameters
-
customer_id (required): The customer ID string containing the parameters to be used in updating data. The format of this string is as follows:
-
{entityName}::{entityType}::{entityId}::{fullName}::{phone}::{fax}::{telex}::{pager}::{email}::{addr1}::{addr2}::{addr3}::{county}::{city}::{state}::{countryId}::{postalCode}
-
Path Parameters
Parameter | Description |
---|---|
Update Entity Name |
The update group type for which data is to be updated. The available group types for Merchandising are:
The available group types for Sales Audit are:
Note: To view the supported forget PII data types, the below URL can be invoked with a GET request
|
Entity Name (required) |
The group type for which data is to be updated. The available group types for Merchandising are:
The available group types for Sales Audit are:
|
Entity Type |
In case of Merchandising, this parameter is used if the entity name is
In case of Sales Audit, this parameter is used if the entity name is |
Entity ID (required) |
The ID of the entity to be updated. For example, the supplier ID (in Merchandising) or employee ID (in Sales Audit). |
Full Name |
The value to update the full name with. If the value is null and this is a required field in the entity, |
Phone |
The value to update the phone number with. If the value is null and this is a required field in the entity, |
Fax |
The value to update the fax number with. |
Telex |
The value to update the telex number with. |
Pager |
The value to update the pager number with. |
|
The value to update the email address with. |
Addr1 |
The value to update the address 1 with. |
Addr2 |
The value to update the address 2 with. |
Addr3 |
The value to update the address 3 with. |
County |
The value to update the county with. |
City |
The value to update the city with. |
State |
The value to update the state with. |
Country |
The value to update the country with. |
Postal Code |
The value to update the postal code with. |
Default Response
This service only returns a response code to signify if the request is successful or not. If no record is updated, the service returns an error.
Response Codes and Error Messages
-
200 - Success
-
400 - Bad Request - for the following situations:
-
Customer ID does not match the required format
-
Invalid input type
-
Missing customer ID
-
Invalid JSON Format
-
-
500 - Internal Server Errors - for all other types of errors (for example, configuration errors, SQL errors, and so on).
Success Payloads
N/A
The below section depicts the sample URL for Delete API for PII (Personally Identifiable Information) for the various entity names.
Entity Name | Reference URL |
---|---|
BUYER |
https:// rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace/RetailAppsDataPrivServicesRESTApp/rest/privatedata/updateBuyerInformation?customer_id=BUYER::3933:::::: |
SUPPLIER |
https:// rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace/RetailAppsDataPrivServicesRESTApp/rest/privatedata/updateSupplierInformation?customer_id=SUPPLIER::2001:::::: |
MERCHANT |
https:// rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace /RetailAppsDataPrivServicesRESTApp/rest/privatedata/updateMerchantInformation?customer_id=MERCHANT::2114:::: |
STORE |
https:// rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace/RetailAppsDataPrivServicesRESTApp/rest/privatedata/updateStoreInformation?customer_id=STORE::7143876752:::::: |
WAREHOUSE |
https:// rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace /RetailAppsDataPrivServicesRESTApp/rest/privatedata/updateWarehouseInformation?customer_id=WAREHOUSE::9993:: |
PARTNER |
https:// rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace /RetailAppsDataPrivServicesRESTApp/rest/privatedata/updatePartnerInformation?customer_id=PARTNER::::464694358:::::: |
OUTLOC |
https:// rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace /RetailAppsDataPrivServicesRESTApp/rest/privatedata/updateOutLocInformation?customer_id=OUTLOC::::97285:::::: |
CUSTOMER |
https:// rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace/RetailAppsDataPrivServicesRESTApp/rest/privatedata/CUSTOMER?customer_id=CUSTOMER::CUSTID::1234567:::::: |
ORDER_CUSTOMER |
https:// rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace /RetailAppsDataPrivServicesRESTApp/rest/privatedata/updateOrderCustomerInformation?customer_id=ORDER_CUSTOMER::90003:::: |
EMPLOYEE |
https:// rex.retail.<Region Name>.ocs.oraclecloud.com/<Customer Subnamespace /RetailAppsDataPrivServicesRESTApp/rest/privatedata/updateEmployeeInformation?customer_id=EMPLOYEE::SAMMYSMITH:::::: |
Security Pre-requisites/Considerations for accessing Data Privacy ReST Services
The preferred access method for these services is through Oauth2–based security. For OAuth credential configuration, see the section titled OAuth for REST Service Authentication in this document.
In the rare event of using basic Auth for accessing these services, ensure the user accessing these services has the necessary IDCS groups associated as listed below:
-
For Production environments,
-
DATAPRIV_ADMINISTRATOR_REST_API_ROLE
-
DATA_PRIVACY_ADMINISTRATOR_JOB
-
-
For Non-Prod environments,
-
DATAPRIV_ADMINISTRATOR_REST_API_ROLE_PREPROD
-
DATA_PRIVACY_ADMINISTRATOR_JOB_PREPROD
-
Operations
The following services are included in this functional area:
Background Job Configuration Upload Service
The following services are included in this functional area:
Get Batch Run Status Services
Business Overview
This service returns the current running status of the nightly batch. During the nightly batch window, certain REST services may be unavailable either for the entire duration or for a portion of the night, especially when inventory or costing batch flows are in progress. This API enables clients to monitor the status of batch processes, allowing them to optimize their service calls by pausing or resuming dependent REST services accordingly.
Output
Name | Data Type | Description |
---|---|---|
batchRunningInd |
String |
This field indicates
whether Nightly batch jobs are running. It is set to |
inventoryBatchRunningInd |
String |
This field
indicates whether inventory batch jobs are running. Valid values are |
costingBatchRunningInd |
String |
This field indicates
whether costing batch jobs are running. Valid values are |
Sample Response Message
{
"batchRunningInd": "N",
"inventoryBatchRunningInd": "N",
"costingBatchRunningInd": "N"
}
Update Background Job Configuration
This section describes the Background Process Configuration.
Business Overview
This service is used to update the configuration for each background jobs in Merchandising.
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. |
BI Publisher Report URL Download Service
The following services are included in this functional area:
Get BI Publisher Report URL
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.
Input Payload Details
Table 5-2 Get - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
reportReferenceKey |
Yes |
String (32) |
Holds the unique reference trace ID that is used to match to the report URL. |
Sample Input Message
{
"reportReferenceKey": "String"
}
Response Code: 200 (Success)
Table 5-3 GetResponse - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
reportReferenceKey |
Yes |
String (32) |
Holds the unique reference trace ID that is used to match to the report URL. |
reportUrl |
Yes |
String (256) |
Contains the report URL with parameters for 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" will be present when input payload or input parameters are not as per the schema definition of this service. The element "businessError" will be present if the payload passes schema validation but exception is caught while processing business logic.
Sample Error Message
{
"status": "ERROR",
"message": "Error found in validation of input payload",
"validationErrors": [
{
"error": "must be one of Y, N",
"field": "createRecord.arg0.approveInd",
"inputValue": "X"
}
],
"businessError": [
"Error message"
]
}
Calendar Download Service
The following services are included in this functional area:
Get 4-5-4 Calendar
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
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"
}]
Codes and Descriptions Download Service
The following services are included in this functional area:
Get Codes and Descriptions
Business Overview
Code Detail service allows user to retrieve code details for a selected code and code type.
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": []
}
}
Get Codes and Descriptions for All or Provided Code Type
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.
ReST URL
/MerchIntegrations/services/administration/operations/codes? offsetkey={offsetkey}&limit={limit}&codeType=[codeType]
Input Payload Details
Table 5-4 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-5 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. |
Collection |
Code details |
Table 5-6 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-7 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"
}
]
}
External Reference Service
The following services are included in this functional area:
Manage External Cross Reference Identifier
Business Overview
This is a helper service to bulk update the external reference ID column of a few
selected tables that can be used during a migration activity, like financial integration
migration. This only supports the following entities: Supplier, Partner, Payment Terms,
Freight Terms, Organization Unit, and Language. This service allows the client to
publish the Merchandising internal entity ID and its corresponding external reference ID
and this service will update the external_ref_id
column in the table.
This service does basic validation that the Merchandising entity ID is valid and exists
in the corresponding table. For the external reference ID field, there is no validation
and it expects the caller to pass in the correct value. If the external reference ID is
left blank in the request, it will be nulled out in the table.
Input Payload Details
Table 5-8 Manage - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
items | Yes | Collection of Object | References a collection of mapping of merchandising identifier to external reference id. |
Table 5-9 Items - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
entityType | Yes | String (20) | This holds the type of entities for which the external reference id will be maintained. The valid values are 'SUPPLIER', 'PARTNER', 'PAYMENT_TERMS', 'FREIGHT_TERMS', 'ORG_UNIT', 'LANGUAGE'. |
entityId | Yes | String (50) | Based on the entity type, this should hold the value of an existing merchandising identifier in the corresponding table for the entity. If this identifier is not present in the entity table, it will result in error. While this field takes a generic String input, this will be validated based on the identifier in the specific entity table. Example for SUPPLIER, this attribute should be numeric and up to 10 digit long. |
externalReferenceId | No | String (50) | The external Reference id that should be attached to the merchandising identifier in the column external_ref_id. There is no validation for this attribute, and it will save as is. If this field is null, it will be saved as null. |
Table 5-10 ManageError - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
entityType | Yes | String (20) | This holds the entity type that was provided in the input. |
entityId | Yes | String (50) | This holds the merchandising entity identifier provided in the input. |
externalReferenceId | No | String (50) | This holds the external reference id provided in the input. |
message | Yes | String (2000) | This holds a concatenated list of error message if there were business validation error against this record. |
Sample Input Message
{
"items": [
{
"entityType": "PAYMENT_TERMS",
"entityId": "22",
"externalReferenceId": "15 Net (terms date + 15)"
}
]
}
Response Code: 400 (Error)
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-11 ManageError - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
entityType | Yes | String (20) | This holds the entity type that was provided in the input. |
entityId | Yes | String (50) | This holds the merchandising entity identifier provided in the input. |
externalReferenceId | No | String (50) | This holds the external reference id provided in the input. |
message | Yes | String (2000) | This holds a concatenated list of error message if there were business validation error against this 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": [
{
"entityType": "SUPPLIER",
"entityId": "1001",
"externalReferenceId": "15 Net (terms date + 15)",
"message": "Payment Terms identifier does not exist in Merchandising. Input entity identifier: 22;"
}
]
}
POM End of Week Signal Download Service
The following services are included in this functional area:
Get POM End of Week Signal Detail
Business Overview
This service is used to determine whether the Vdate is an End of Week Date or Not.
If Vdate is at EOW, it returns 'Y', else 'N'.
Service Status Download Service
Get ReST Service Status
Business Overview
This service allows the querying of the status of ReST web service call using an X-Correlation-ID. The correlation id that was included in the request HTTP header can be used as the input, or if one was not passed one in the original request, the one from the response HTTP header can be used as the input. This service will return all the entries in service_metrics table against that correlation ID. The response support pagination and if there are multiple pages of response, use the next link to call subsequent pages. This service additionally checks the input correlation ID against the request_id field to handle the scenario where the x_correlation_id is null in the service_metrics table because it was not included in request HTTP header.
An additional query parameter of includePayload, supports a value of yes ('Y') or no ('N') can be used to retrieve the request and response payload for that request. In the case of a service error (response code of 300 or greater) the response payload will be included irrespective of includePayload parameter.
Service Metrics
- Merchandising ReST Service framework keeps a log of every service call in the service_metrics table. When the service request is received at the application server, it makes an entry to service_metrics table using a unique request ID and the time of the call. Once the service request has been processed and the response is ready to be served back, the application server updates the service metrics table to capture the run time and response code.
- The application server optionally saves the payload in service_payload table. The payloads are only captured for POST, PUT or DELETE service calls. The payload for GET service calls are captured if service call had an error (response code is 300 or greater) or while running in debugging mode.
- The service metrics and payload entry are held for short period and get purged after configurable (default 3 months) purge window.
X-Correlation-ID
- Merchandising ReST Service framework supports a custom HTTP Header named as X-Correlation-ID and it is recommended to include this in every ReST web service call for traceability purpose.
- The request X-Correlation-ID is copied and is returned in the Response HTTP Header X-Correlation-ID field. This is also captured in the service_metrics table against that request.
- In the case where, X-Correlation-ID was not included in the request header, the internally generated unique request ID is populated in the Response HTTP Header X-Correlation-ID field. The response X-Correlation-ID should be logged if one is not passed in the request.
- It is recommended that a unique X-Correlation-ID is always passed as part of every request (including retry) to trace each unique call. The validation for unique value is not enforced.
- A log of X-Correlation-IDs should be maintained for traceability purpose and troubleshooting exceptions.
Input Parameters
Parameter Name | Required | Data Type | Description |
---|---|---|---|
limit | No | Number (6) | Pagination limit. Default Value is 1000 |
offsetkey | No | String | Offset Key. Valid Value is RequestId |
xCorrelationId | Yes | String (36) | X-Correlation-ID to search for required service call. This is a required parameter. |
includePayload | No | String (1) | Indicate if request and response payload should be included in the response. Valid value is ‘Y’ or ‘N’. Defaults to ‘N’ if not provided |
include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexAttribute) |
Response Code: 200 (Success)
Element Name | Required | Data Type | Description |
---|---|---|---|
items | No | Collection of Object | References a collection of rest service call details |
Table 5-12 Items - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
requestId | Yes | String (36) | This field contains unique Request id. |
xCorrelationId | Yes | String (36) | This field contains the X-Correlation_ID in the response http header. If the client passed a X-Correlation_ID in the request HTTP Header, the same is returned or else a generated uuid (captured in request_id) is returned back |
Method | Yes | String(10) | Contains the HTTP Method like GET, PUT, POST, DELETE. |
Path | Yes | String(255) | Contains the Rest Service path. |
responseCode | No | String(10) | This field contains the HTTP Code for the response. This will hold a value after the server processed the request and responded back. Example 200, 400, 500 |
requestTimestamp | Yes | Timestamp | This field hold the timestamp in UTC when the request was received by the server. |
responseTimestamp | No | Timestamp | This field hold the timestamp in UTC when the request processing completes and server is ready to transmit the response back. |
durationMillisecond | No | Number(12,0) | This field contains the millisecond to process the request. This is populated after server completes the request. |
requestSizeByte | No | Number(12,0) | This field contains the bytes in request payload. |
responseSizeByte | No | Number(12,0) | his field contains the bytes in the response payload. This is populated after server completes the request. |
clientName | Yes | String(255) | This field contains the oAuth Client name used to make the request |
serviceUrl | Yes | String(2000) | This field the complete path for the service call |
requestPayload | No | CLOB | This field contains the request payload if query parameter of includePayload is set to Y. |
responsePayload | No | CLOB | This field contains the response payload if query parameter of includePayload is set to Y or there was an exception in the request and the response code is 300 or greater. |
Sample Response Message
{
"items": [
{
"requestId": "6ccc5287-a078-4aae-b697-9ade58d70bd1",
"xCorrelationId": "034b9672-4818-40b4-916d-210a21e0de84",
"method": "POST",
"path": "/MerchIntegrations/services/foundation/item",
"responseCode": "200",
"requestTimestamp": "2024-05-12T04:20:31.996Z",
"responseTimestamp": "2024-05-12T04:20:31.996Z",
"durationMillisecond": 450,
"requestSizeByte": 720,
"responseSizeByte": 18240,
"clientName": "xocs_client",
"serviceUrl": "https://<server>/MerchIntegrations/services/administration/operations/restService/status?xCorrelationId=36c6b984-8e16-4efb-b73f-5984357c1d72",
"requestPayload": "{}",
"responsePayload": "{}"
}
],
"hasMore": true,
"limit": 1000,
"count": 1,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?limit=1000",
"rel": "self"
}
]
}
Virtual Date Download Service
The following services are included in this functional area:
Get Current Virtual Date in Date Format
Business Overview
Deprecated in v23.1.401.0: Scheduled for Removal in 2 Years. Use RmsReSTServices/services/private/Common/vDate
This service retrieves the Merchandising virtual business date (vdate).
Webhook Configuration Download Service
Get Webhook Configuration and Status
Business Overview
This service retrieves the configured Webhook Listeners and any unused credential names. The response contains three types of information:
- Webhook Configurations: Provides details about the current webhook configuration, including the listener URL and interval seconds. This information is retrieved from the webhook_config table.
- Current Status: Indicates the current status of the webhook, including the since timestamp to be used in the next call and an estimate of when the next heartbeat or polling process will be triggered. If the most recent heartbeat encountered a failure, the error message will be included. This information is retrieved from the webhook_status table.
- Metrics Summary for today and yesterday: Included only if the query parameter includeMetrics is set to Y. The metrics summary is at day level and is limited to the current day (starting from midnight GMT) and yesterday (GMT timezone) and provides total counts of webhook calls and heartbeats triggered on the day, along with the number of successful calls. It additionally contains detailed activity log message of the last webhook and heartbeat processes executed for the day to assist with troubleshooting if webhook publish is unsuccessful. This data is retrieved from the webhook_metrics table. Note: The number of rows in this table can grow very large over time and fetching the metrics summary will be a performance-intensive operation and service may take additional time compared to a call with includeMetrics = N.
Input Parameters
Parameter Name | Required | Data Type | Description |
---|---|---|---|
limit | No | Number (6) | Pagination limit. Default Value is 1000 |
offsetkey | No | String | Offset Key. Valid Value is combination of credential name and service |
service | No | String (100) | Service Name to retrieve details for a particular service |
includeMetrics | No | String (1) | A value of Y will result in the service fetching metrics summary for today and yesterday along with the log of most recent call. Valid value Y or N. |
include | No | String | Fields to include - comma separated (Example items.name,items.address.city) |
exclude | No | String | Fields to exclude - comma separated (Example items.address.contactFax,items.customFlexAttribute) |
Response Code: 200 (Success)
Element Name | Required | Data Type | Description |
---|---|---|---|
items | No | Collection of Object | References a collection of webhook listener details. |
Table 5-15 Items - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
credentialName | Yes | String (100) | This field contains the Credential name. |
credentialType | Yes | String (30) | This field contains the Credential type. |
service | No | String (100) | This field contains the service name. |
listenerUrl | No | String (255) | This field contains the listener URL. |
enabled | No | String (1) | This field indicates if the service is enabled. Default is 'Y'. Valid values is 'Y' or 'N'. |
intervalSeconds | No | Number (6,0) | This field contains the frequency in seconds webhook will poll for new events. Default is 900 seconds. |
includePayload | No | String (1) | This field indicates if data should be included in the webhook call. Default is 'N'. Valid values is 'Y' or 'N'. |
pageLimit | No | Number (6,0) | This field contains the number of records within a payload during pagination and is used to control the message size. Default is 1000. |
HeartbeatIntervalHours | No | Number(2,0) | This field frequency in hours on which heartbeat will be pinged to listener. Default is 6 hours. |
sinceTimestamp | No | Date-Time | This field hold the configured since-timestamp for this API. |
status | No | Object | This node hold the summary view for the webhook activity since midnight (UTC) today. This will be populated based on query parameter |
metrics | No | Object List | This node hold the summary view for the webhook activity since midnight (UTC) today. This will be only populated if query parameter includeMetrics is Y. This node hold the summary view of webhook activities at day level since midnight (UTC) yesterday and can hold upto two entries - one for today and one for yesterday. The record for today or yesterday is populated only if some webhook or heartbeat activity happened for the day. |
Table 5-16 status - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
nextPollTime | No | Date-Time | This field holds the timestamp when the next internal polling to check for delta change is due. |
nextPollSinceTimestamp | No | Date-Time | This field holds the since-timestamp that will be used in the next internal poll. This field is updated after every successful publish and holds the pointer of the last successful publish. |
nextPollOffsetKey | No | String | This field holds a value only when multi-page publish is in progress. During a multi-page publish, this helps to identify the key of the last record of the last page published. After the last page is published, it is reset to blank. |
nextHeartbeatTime | No | Date-Time | This field holds the timestamp when the heartbeat is due. One the heartbeat is due, before any subsequent webhook publish, an heartbeat will be fired. |
heartbeatError | No | String | This field will hold the error message if the previous heartbeat was a failure. |
Table 5-17 metrics - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
Date | No | Date-Time | This field holds either today or yesterday date for which the subsequent metrics information is applicable. |
count | No | Number | This field contains the number of calls (excluding heartbeat) made to the listener for the date |
countSuccess | No | Number | This field contains the number of successful calls (excluding heartbeat) made to the listener for the date |
lastPublishTime | No | Date-Time | This field holds the timestamp when the webhook engine initiated the last publish for the date. |
lastPublishActivityLog | No | String | This field holds the log messages when the webhook engine initiated the last publish call for the date. |
countHeartbeat | No | Number | This field contains the number of heartbeat calls made to the listener for the date |
countSuccessHeartbeat | No | Number | This field contains the number of successful heartbeat calls made to the listener for the date |
lastHeartbeatTime | No | Date-Time | This field holds the timestamp when the webhook engine initiated the last heartbeat call for the date. |
lastHeartbeatActivityLog | No | String | This field holds the log messages when the webhook engine initiated the last heartbeat call for the date. |
Sample Response Message
{
"items": [
{
"credentialName": "APP1",
"credentialType": "OAUTH",
"service": "foundation/item",
"listenerUrl": "https://apigateway.myretailer.com/webhook/mfcs/item",
"enabled": "N",
"intervalSeconds": 900,
"includePayload": "N",
"pageLimit": 1000,
"heartbeatIntervalHours": 6,
"sinceTimestamp": "1970-01-01T00:00:00.000Z",
"status": {
"nextPollTime": "2025-01-01T10:00:00.000Z",
"nextPollSinceTimestamp": "2025-01-01T04:27:47.801Z",
"nextPollOffsetKey": "",
"nextHeartbeatTime": "2025-01-01T12:25:00.000Z",
"heartbeatError": ""
},
"metrics": [{
"date": "2025-01-01T00:00:00.000Z ",
"count": 7,
"countSuccess": 6,
"lastPublishTime": "2025-01-01T03:27:47.801Z",
"lastPublishActivityLog": "<Timestamp>: Calling url for payload...",
"countHeartbeat": 3,
"countSuccessHeartbeat": 3,
"lastHeartbeatTime": "2025-01-01T06:25:00.000Z",
"lastHeartbeatActivityLog": "<Timestamp>: Calling url for heartbeat..."
}]
}
],
"hasMore": true,
"limit": 1000,
"count": 1,
"links": [
{
"href": "https://<server>:<port>/Application/services/resources?limit=1000",
"rel": "self"
}
]
}
Webhook Configuration Upload Service
Manage Webhook Credential
Business Overview
This service maintains credentials for the Webhooks listener and allows for setting up new credentials, along with updating or deleting existing credentials. Credentials must be set up in advance of webhook listener setup. A credential cannot be deleted if it is attached to a listener.
The credentials are securely stored in OCI S3. The supported credentials are Basic Auth, oAuth2 (Client Credentials) and
API key (Request Parameter - X-API-Key
). Based on the type of credential, the corresponding field should
be provided. In case of oAuth, the URL to retrieve the oAuth token should be allowlisted and should have a publicly trusted
SSL/TLS certificate.
Input Payload Details
Table 5-18 Manage - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
credentialName |
Yes |
String (100) |
Unique Credential name for storing credential details for webhook listener endpoint. |
credentialType |
No |
String (30) |
Type of credential supported by listener. Valid options are OAUTH, BASICAUTH or APIKEY |
username |
No |
String (100) |
Contains the username for basic auth credential |
password |
No |
String (100) |
Contains the password for basic auth credential |
apikey |
No |
String (2000) |
Contains apikey. API Key will be passed in Request Parameter X-API-Key |
oauthClientId |
No |
String (255) |
Contains the client id for Oauth - Client Credential authentication |
oauthClientSecret |
No |
String (255) |
Contains the client secret for Oauth - Client Credential authentication |
oauthTokenUrl |
No |
String (255) |
Contains the oAuth Token URL for Oauth - Client Credential authentication |
oauthScope |
No |
String (255) |
Contains the scope for Oauth - Client Credential authentication. Scope is optional. |
heartbeatIntervalHours |
No |
Number (2) |
Controls the frequency in which heartbeat will be published to the listener URL |
deleteInd |
No |
String (1) |
Pass a value of Y to delete the credential. To delete a credential, none of the listener should be using this credential. Supported values as Y or N. The default if left blank is N. |
Sample Input Message
{
"credentialName": "APP_DEV1",
"credentialType": "OAUTH",
"username": "",
"password": "",
"apikey": "",
"oauthClientId": "oracle_mfcs_client_dev1",
"oauthClientSecret": "6c2c0acb-88a1-4067-865b-5eb75b2989c3",
"oauthTokenUrl": "https://iam-6c2c0acb.iamprovider.com:443/oauth2/v1/token",
"oauthScope": "mfcs-webhook-dev1",
"deleteInd": ""
}
Response Code: 200 (Success)
Sample Response Message
{
"status": "SUCCESS",
"message": "Create record was successful"
}
Response Code: 400 (Error)
In case of error, the following standard error response will be returned. The element validationErrors
is present when the input payload or input parameters do not match the schema definition for this service.
Sample Error Message
{
"status": "ERROR",
"message": "Error found in validation of input payload",
"validationErrors": [
{
"error": "must be one of Y, N",
"field": "createRecord.arg0.approveInd",
"inputValue": "X"
}
]
}
Manage Webhooks
Business Overview
This service is used to register and manage webhook listeners. To register a listener, the credential for the listener should be set up first using the Manage Webhook Credential service.
Webhook Overview
The listener URL should be an allowlisted https ReST endpoint supporting THE POST method and having publicly trusted SSL/TLS
certificate. a Webhook can be configured for THE Publish API and THE name of the service should match with the value in THE merchapi_name
column from the merchapi_config
table. Once a webhook is successfully registered,
it is added to the server threadpool after a short interval and, thereafter, runs based on the configured interval.
Three types of publish are available:
-
HEARTBEAT - The frequency (in hours) of this can be defined using the field
heartbeatIntervalHours
. A ping call is made to the listener endpoint to validate the connectivity, credential, and to ensure that the webhook server is up and running. If the heartbeat call fails, the webhook call with the event or payload is put on hold until the heartbeat connectivity is established. Once the heartbeat connectivity is established, the event or payload publish starts. -
EVENT - A webhook call of type Event indicates to the listener that there are one or more functional data packets that have been created or updated since the last webhook call, and the listener should poll the Publish API to publish the change. A webhook of type Event is the default webhook configuration and should be the preferred configuration to keep the data traffic through the webhook to a minimum. If the field
includePayload
is left blank or is set toN
, this indicates that the webhook is configured for event publishing. -
PAYLOAD - A webhook of type Payload includes the data as part of the webhook publish. The data is published in JSON format and is enclosed in the attribute named
payload
. To enable payload publish, set the value ofincludePayload
toY
. The payload supports pagination to keep the individual message size in control. Use the fieldpageLimit
to define the number of records included in the call. IfpageLimit
is not defined, it is set to 1000. For a payload publish, the server posts each subsequent page immediately upon receiving the success response from the client for the previous page.
The processing of a webhook is asynchronous. Using a background micro batch engine, the webhook server checks for new events
in merchapi json
tables for changes. The frequency at which the server polls the merchapi json
table is configured using the field intervalSeconds
. Every <interval> seconds, the server polls the
table to check for new entries and, if there are updates, it makes a webhook call to the listener URL to publish the event
or payload depending on the webhook configuration. If there are no new entries, it does not make an empty webhook call.
To keep track of the records that have been published, and have the subsequent webhook publish only include the newer records
since the last call, the timestamp of the webhook pool is persisted by the server and is named the since timestamp
. When the webhook is registered for the first time, the since timestamp
is defaulted to Unix time zero
(1970) unless a since timestamp
was provided as part of the registration. The server polls the json
table to check for newer entries having timestamp greater than since timestamp.
-
For a webhook of type Event, the
since timestamp
is included in the publish to inform the listener that there are records having a timestamp greater than thesince timestamp
and they should poll the Publish API using a query parameter ofsince timestamp
. -
For a webhook of type Payload, the server internally calls the Publish API with the
since timestamp
and usingbefore
as the current server time and the configured pagination limit. The server redirects the response from the Publish API to the webhook listener. Depending on the number of records and the pagination size, more than one call can be made to the listener URL. Once the last page is published, the server replaces thesince timestamp
with the server time when the first poll is performed. Subsequent polling uses the new since timestamp to check for newer entries. -
If there are no new entries, the value of
since timestamp
is not changed and this value can be seen as a the timestamp when the last publish of type Event or Payload was made.
The since timestamp
is available as part of webhook configuration and this can be updated for existing
webhooks. This can be useful to request a full download or to replay all changes since, for example, last week for data corruption
scenarios.
Enable/Disable The flag Enabled
takes a value of Y
or
N
, and can be used to activate or deactivate a webhook. If the
webhook is disabled, it pauses all polls and even heartbeat calls to the listener. Once
the webhook is enabled, it starts polling using the since timestamp
of
the last publish.
Query Parameter This optional field enables Dynamic Payload Filtering, allowing
clients to fetch selective fields or exclude fields based on the listener application's
needs. Several webhook-supported APIs accept a query parameter of
include
or exclude
, with values representing JSON
field names using dot notation (for example,
include=items.item,items.status,itemDescription
). When provided,
this query parameter is appended to the internal service call URL when fetching the
payload. The only supported query parameters through webhooks are
include
and exclude
, and it is recommended to test
the query parameter values before configuring them in a webhook.
Update Webhook Configuration
To update the configuration of a webhook listener, include the fields that need to be updated and their values will be replaced. The fields left blank will not be changed. A configuration change can have an impact on the current publish process (multi-page payload publish).
-
Listener URL change will be applied immediately. A change of listener causes a heartbeat to be fired and, once the heartbeat is successful, subsequent calls are published to the new URL. If the change happened in between pagination publishes, the remaining pages are published to the new URL. A listener change is a major change and, if the intention for the new listener URL is to get the entire dataset or to start with a particular date and time, adjust the
since timestamp
accordingly to get the complete/required payload. -
A change of credential takes effect immediately. A change of credential causes a heartbeat check to be fired before the next event or payload publish.
-
Since Timestamp change is applied immediately. This will terminate any in-progress pagination call and publish will restart with the new since timestamp.
-
Page limit change takes effect immediately for the subsequent page publish. In case of an in-progress pagination publish, the remaining pages publish happens with the new page limit.
-
Interval second change takes effect a few minutes after the webhook engine syncs up with update configuration.
-
Disable webhook - This takes effect immediately and may pause a pagination call in between. The remaining pagination pages are published when the webhook is enabled. Enabling of the webhook takes few minutes for the server engine to include this webhook in its thread pool.
-
A change of heartbeat interval hour takes effect after the next heartbeat is fired.
-
IncludePayload - This change takes effect immediately and stops any pagination call. It uses the currently active since timestamp to check for changes, unless the
since timestamp
was also updated as part of the update request. - Query Parameter change will take into effect immediately for the subsequent page publish. To remove a previously set query parameter, provide blank spaces.
Input Payload Details
Table 5-19 Manage - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
collectionSize |
Yes |
Number (4) |
Number of items in the collection. |
items |
Yes |
Collection of Object |
References a collection of webhook listeners |
Table 5-20 Items - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
service |
Yes |
String (100) |
Service name for which webhook listener has to be configured. The service name should match with merchapi_name in merchapi_config table. On the api's having the json_table column populated are eligible for webhook. |
credentialName |
No |
String (100) |
Registered credential name that was setup using the Manage Webhook Credential service. For update, this can be left blank. |
listenerUrl |
No |
String (255) |
A whitelisted listener endpoint which is running a post service to consume the webhook call and returns 200 for success. |
includePayload |
No |
String (1) |
Indicates if the webhook publish will contain the data or just the event. Takes a value of Y or N. A value of blank is defaulted to N during initail registration. In case of update of already registered webhook, leave it blank to keep the value unchanged. |
intervalSeconds |
No |
Number (6) |
Defines the polling seconds for the webhook server to poll to json table for new events. This value is in seconds. |
pageLimit |
No |
Number (6) |
If the webhook is registered to include payload, this defines the maximum number of records in one publish call. If the number of records to be published are greater than page limit, additional pagination call will be made to publish the entire data set. Default value is 1000. |
sinceTimestamp |
No |
date-time |
Allows the listener to define if the publish should include events that happens after a particular time. This also allows for replaying already published daata/event by setting this to a earlier time. |
enabled |
No |
String (1) |
Takes a value of Y (default if null) or N. If the webhook is disabled, it will pause polling and publish of webhook (inlcuding heartbeat) |
heartbeatIntervalHours |
No |
Number (2) |
Controls the frequency in which heartbeat will be published to the listener URL |
deleteInd |
No |
String (1) |
Use this to delete an existing listener by setting the value as Y. the default if left blank is N. |
queryParameter | No | String (2000) | This field can be used to apply API-supported query parameter of
include or exclude when an internal service is
invoked to fetch a payload. It is highly recommended to test the query parameter by
calling the GET APIs to avoid unexpected errors at runtime. To remove an earlier
provided query paramter value, submit the value with an empty space.
|
Table 5-21 ManageError - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
service |
Yes |
String (100) |
Service name for which the registration failed |
errorMessage |
Yes |
String (2000) |
Error message |
Sample Input Message
{
"collectionSize": 1,
"items": [
{
"service": "foundation/item",
"credentialName": "APP_DEV1",
"listenerUrl": "https://apigateway.myretailer.com/webhook/mfcs/item",
"includePayload": null,
"intervalSeconds": 900,
"pageLimit": 1000,
"sinceTimestamp": "2001-12-31T23:59:59.123Z",
"enabled": null,
"heartbeatIntervalHours": 6,
"deleteInd": null,
"queryParameter": "include\u003ditems.item,items.status"
}
]
}
Response Code: 400 (Error)
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-22 ManageError - Object. See list of elements for detail
Element Name | Required | Data Type | Description |
---|---|---|---|
service |
Yes |
String (100) |
Service name for which the registration failed |
errorMessage |
Yes |
String (2000) |
Error message |
Sample Error Message
{
"status": "ERROR",
"message": "Error found in validation of input payload",
"validationErrors": [
{
"error": "must be one of Y, N",
"field": "createRecord.arg0.approveInd",
"inputValue": "X"
}
],
"businessError": [
{
"service": "foundation/items/manage",
"errorMessage": "Invalid API"
}
]
}
System Options
The following services are included in this functional area:
System Options Download Service
The following services are included in this functional area:
Get Functional System Options
Output
Table 5-23 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"": []
}
Get Inventory Movement System Options
Output
Table 5-24 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": []
}
}
Get Procurement System Options
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": []
}
}