Point of Sale Integration | Contents | SCVs | Search | Glossary | Reports | Solutions | XML | Index | Generic Inventory Transaction Upload |
Point of Sale Integration Overview
Purpose: The point of sale integration allows you to send data from Order Management System to your point of sale system, such as CWStore, and receive data from your point of sale system into Order Management System.
In this chapter:
• Point of Sale Download Processing
- When are Download Triggers Created?
- Identifying Download Triggers
- Outbound Interface Trigger Rules
- Outbound Interface Trigger Monitor
- Outbound Interface Message Builder
- Generic Download Message Formatting
• Point of Sale Upload Processing
- Inventory Transaction Upload
• Point of Sale Bi-Directional Processing
- Customer Inquiry (Search) Integration
- Customer History Integration
- Inventory Inquiry Integration
• Point of Sale Integration Setup
Point of Sale Download Processing
Overview: Order Management System allows you to capture the following information to download to a point of sale system:
• item/SKUs; see Generic Item Download API
• vendors; see Generic Vendor Download API
• invoices; see Generic Invoice Download API
• inventory: see Generic Inventory Download API
• customers: see Generic Customer Download API
Information flow: This flowchart explains how information is downloaded from Order Management System to a point of sale system.
Jobs in the Working with Integration Layer Processes (IJCT) menu option control what information is downloaded to another system:
• Item Outbound job: generates an item download XML message for each trigger in the IL Outbound table with a File code of SKU.
• Vendor Outbound job: generates a vendor download XML message for each trigger in the IL Outbound table with a File code of VND.
• Invoice Outbound job: generates an invoice download XML message for each trigger in the IL Outbound table with a File code of IHD.
• Inventory Outbound job: generates an inventory download XML message for each trigger in the IL Outbound table with a File code of ITW.
• Customer Download job: generates a customer download XML message for each trigger in the IL Outbound table with a File code of CST.
When are Download Triggers Created?
System control values control the type of data downloaded to a point of sale system.
• If the system control value is selected, certain actions in Order Management System triggers the system to create triggers in the IL Outbound Trigger table. The IL Outbound Trigger table acts as a “to do” list for the data that requires download.
• If the system control value is unselected, the system does not create triggers in the IL Outbound Trigger table.
You can also create triggers for existing data in your company using the Generating Outbound Interface Triggers (GOIT) menu option.
System Control Value |
Description |
Select this field to create item download triggers in the IL Outbound Trigger table to download to the point of sale system. |
|
Select this field to create vendor download triggers in the IL Outbound Trigger table to download to the point of sale system. |
|
Select this field to create invoice download triggers in the IL Outbound Trigger table to download to the point of sale system. |
|
Select this field to create inventory download triggers in the IL Outbound Trigger table to download to the point of sale system. |
|
Select this field to create customer download triggers in the IL Outbound Trigger table to download to the point of sale system. |
Each trigger in the IL Outbound Trigger table has a:
• File code: indicating the type of information to download and which IL process job processes the trigger.
• Key: indicating the specific record to download.
• Capture type: indicating the type of activity performed against the record:
- A = the record was created.
- C = the record was maintained. Note: The system removes any duplicate change triggers; see Trigger Cleanup.
- D = the record was deleted. Note: The system processes delete triggers immediately; see Processing Delete Triggers.
You can review point of sale download triggers in the Working with Outbound Interface Transactions (WOIT) menu option.
File code |
Created when |
Refers to table(s) |
Key |
IL Process job |
SKU |
An item/SKU is added, updated or deleted; see Item Outbound Trigger Activities |
Item SKU |
11122222222222233333333333333 where: 111 is the company code 222222222222 is the item number 33333333333333 is the SKU code |
Item Outbound |
IHD |
An invoice is created or updated; see Invoice Outbound Trigger Activities |
Invoice Header Order Header |
111222222233333333 where: 111 is the company code 2222222 is the order number 33333333 is the invoice number |
Invoice Outbound |
VND |
A vendor is added, updated or deleted; see Vendor Outbound Trigger Activities |
Vendor |
1112222222 where: 111 is the company code 2222222 is the vendor code |
Vendor Outbound |
ITW |
Item/SKU available quantity changes; see Creating Inventory Download Triggers Interactively Due to Changes in Availability |
Item SKU Warehouse Item Warehouse Item UPC |
11122222222222233333333333333 where: 111 is the company code 222222222222 is the item number 33333333333333 is the SKU code |
Inventory Outbound |
CST |
You create, change, or delete a customer; see Customer Outbound Trigger Activities |
Customer Sold To tables Customer Ship To tables Customer Bill To tables |
1112222222 where: 111 is the company code 2222222 is the customer code |
Customer Download Outbound |
Outbound Interface Trigger Rules
Outbound interface trigger rules define the criteria a record must meet in order for the system to create an IL outbound trigger. For each IL Process outbound job, you can define trigger rules for certain tables. For example, you can define trigger rules for the Item table and SKU table for the Item Outbound job. If you define more than one criterion, the record must meet all of the criteria defined in order to generate a trigger.
See Defining Outbound Interface Trigger Rules for more information on setting up trigger rules for each IL Process job.
For IL Process job: |
you can create trigger rules for: |
Example: |
Item Outbound |
Item table SKU table |
You can specify to only create item download triggers for company 555, items that are SKU’ed and whose SKUs are located in warehouse 20. To do this: • in the Item table trigger rules, enter EQ and 555 next to the Company trigger field and EQ and ’Y’ next to the Allow SKU’s trigger field. • In the SKU table trigger rules, enter EQ and 20 next to the Warehouse trigger field. |
Invoice Outbound |
Invoice Header table Order Header table |
You can specify to only create invoice download triggers for debit invoices and not credit invoices. To do this, enter EQ and I (invoice) next to the Invoice type trigger field. |
Vendor Outbound |
Vendor table |
You can specify to only create vendor download triggers for companies 27 and 555 and vendor 202. To do this, enter LIST and 27 555 next to the Company trigger field and EQ and 202 next to the Vendor # trigger field. |
Inventory Outbound |
Item SKU Warehouse Item Warehouse Item UPC |
You can specify not to create inventory download triggers for non-inventory items. To do this, enter NE and ’Y’ next to the Non-inventory trigger field. |
Customer Download Outbound |
Company Customer class Inactive? Country |
You can specify not to create customer download triggers for inactive customers. To do this, enter NE and ’Y’ next to the Inactive? trigger field. |
Outbound Interface Trigger Monitor
When active, each IL Outbound job monitors the IL Outbound Trigger table for unprocessed triggers at defined intervals, based on the Outbound delay time.
Each IL Outbound job:
• looks for triggers with the appropriate File code and a Status of ready (R).
- the Item Outbound job looks for File code SKU.
- the Invoice Outbound job looks for File code IHD.
- the Vendor Outbound job looks for File code VND.
- the Inventory Outbound job looks for File code ITW.
- the Customer Download Outbound job looks for File code CST.
• sends each trigger to the IL Outbound message builder to generate an XML message.
Before processing triggers in the IL Outbound table, the system looks for duplicate unprocessed download triggers with the same Capture type for the same File code and Key. If duplicate triggers exist, the system removes the duplicates, leaving only the most recent trigger for the Capture type, File code and Key.
Example: The following change triggers exist in the IL Outbound table.
File |
Status |
Key |
Results |
SKU |
unprocessed |
555AB105004 RED GRLS SMLL |
The system deletes 2 of these triggers, leaving only one trigger to process. |
SKU |
unprocessed |
555AB105004 RED GRLS SMLL |
|
SKU |
unprocessed |
555AB105004 RED GRLS SMLL |
Note: If both an add and change trigger exist for the same File code and Key, the system generates a download message for both triggers.
The system processes triggers in the IL Outbound Trigger table with a delete (D) Capture type immediately, regardless if the IL Outbound job is active or inactive.
Note: Since you cannot delete an invoice, the system never creates a delete download trigger for an invoice.
If one or more unprocessed triggers exist in the IL Outbound Trigger table for the same File code and Key, the system:
• if one of the matching triggers is an add (A) Capture type: does not create the delete trigger and removes any other matching triggers (add and change). Since the point of sale system never received the add trigger, you do not want to send a delete trigger or any other triggers.
Note: However, if an Original processed date and time exist for the add trigger (indicating the trigger was previously downloaded and then reset to reprocess again), the system generates a download message for the delete trigger and removes any other matching triggers (add and change). Since the point of sale system previously received the add trigger, you want to send a delete notification to the system.
• if the matching trigger is a change (C) Capture type: generates a download message for the delete trigger and removes any other matching change triggers. Since the point of sale system is receiving a delete trigger, you do not need to send any change triggers.
Outbound Interface Message Builder
For each trigger, the IL Outbound message builder:
• determines what information requires download. The system uses the Key field for the trigger to determine which records require download.
- The Key field for item download triggers consists of company + item number + SKU code. The SKU code is included only if the item is a SKU’ed item. For example the Key 555AB100112 BLUE GRLS SMLL indicates the item and SKU information is located in company 555 for item number AB100112 and SKU code BLUE GRLS SMLL.
- The Key field for invoice download triggers consists of company + order number + invoice number. For example the Key 55500049680000583 indicates the invoice information is located in company 555 for order number 4968 and invoice number 583.
- The Key field for vendor download triggers consists of company + vendor number. For example the Key 5550002006 indicates the vendor information is located in company 555 for vendor number 2006.
- The Key field for inventory download triggers consists of company + item number + SKU code. The SKU code is included only if the item is a SKU’ed item. See the description of the item download trigger key above.
• determines which elements to include in the download message, based on XML inclusion rules. You can define XML inclusion rules for each IL Outbound job at the Outbound Interface XML Inclusion Screen. XML inclusion defines which elements to include in a download message.
- If the element is included, that element and its parents are included in the generated download XML message.
- If the element is excluded, that element and its children are excluded from the generated download message.
• sends the generated download message to the queues defined for the Outbound job that are active.
For more information:
• item download: Item Outbound XML Inclusion
• vendor download: Vendor Outbound XML Inclusion
• invoice download: Invoice Outbound XML Inclusion
• inventory download: Inventory Download XML Inclusion
• customer download: Customer Outbound XML Inclusion
Once the Outbound message builder determines which elements to include in the download XML message, the IL Outbound job sends each download XML message to the appropriate queues whose Enabled field is selected. If the queue is not enabled, the system does not send the download message to that queue.
You can define outbound queues for each IL Outbound job at the Work with Integration Layer Process Queues Screen.
For example, you can define a separate queue to send the download message to your:
• retail store
• warehouse management system
Generic Download Message Formatting
For each download message:
• numeric fields are not zero-filled, for example 000001 displays as 1.
• blank spaces are removed from the beginning and end of alphanumeric fields.
• decimal places for numeric fields are implied.
• empty elements are not included; for example, if an item/SKU does not have a vendor item defined, the system does not send the VendorItem element or its children (VITPriceBreak, VITAdditionalCharge, VITNote, and VITUserField) in the item download message.
• empty attributes are not included; for example, if the Kit type field for an item/SKU is blank, the system does not send the Kit_type attribute in the item download message.
For more information:
• Item Download XML Message (CWItemOut)
• Vendor Download XML Message (CWVendorOut)
• Invoice Download XML Message (CWInvoiceOut)
• Inventory Download XML Message (CWInventoryDownload)
• Customer Download XML Message (CWCustomerDownload)
Point of Sale Upload Processing
The following uploads allow you to bring information into Order Management System from another system.
Overview: Use the generic order interface to send orders into Order Management System. You can use this interface for any type of order, including retail point of sale transactions, orders received through a remote call center, and orders taken at a web storefront.
Options: Your options through the generic order interface include:
• response: generating a detailed response, a simple response, or no response
• separate payment message: sending the payment information separately or in the same message as the rest of the order information
• batching: batched or non-batched orders
• deposit and refund suppression: suppressing the order from deposit processing and refund generation
• returns: entering a return by specifying a negative order quantity
• customer updates: updating an existing sold-to, or creates a new sold-to, bill-to, or permanent ship-to customer
For more information: See Generic Order Interface (Order API).
Overview: You can use the Generic Inventory Transaction Upload to synchronize inventory levels in Order Management System with another system. For example, you can upload counts in retail stores, as maintained in CWStore. To do so, you can identify each store as a warehouse in Order Management System. The inventory counts of each store are then available for review through a menu option such as Using Inventory Inquiry (DINI) or Inquiring into Item Availability (DIAV).
You can use the upload for any type of inventory transaction that is also available in Working with Inventory Transactions (WITI); for example, you can upload transfers, adjustments, returns to vendor, and resets of on-hand quantity. System transactions such as shipments or purchase order receipts are not allowed. The upload performs the same edits and validations as in batch or interactive inventory transactions.
For more information: See Generic Inventory Transaction Upload.
Other inventory integrations: In addition to the inventory transaction upload, you can use the:
• Generic Inventory Download API to download current inventory information, such as availability and warehouses where an item/SKU is stored, to an external system, such as Oracle Retail Order Broker. You can schedule the download periodically, such as once a day; the system also creates trigger records based on changes to availability levels.
• Generic Inventory Inquiry API to respond to requests for inventory information from an external system. Through this API, the system responds to requests “behind the scenes,” and the activity is not visible on any screen.
• integration with Oracle Retail Order Broker to share item and inventory information with multiple systems and to submit orders to another system for fulfillment. See the Oracle Retail Order Broker Integration Overview for background.
Point of Sale Bi-Directional Processing
The following process allows you to receive a request from an external system, such as CWStore or Oracle Retail Order Broker, and generate a response.
Customer Inquiry (Search) Integration
Purpose: Use the generic customer inquiry integration to enable an external system to find a customer based on standard search criteria, such as alternate customer number, postal code, last name, phone number, or email address. The information in the response from Order Management System includes the customer number as well as name and address.
This search function has options similar to the Select Customer Sold To Screen, and produces similar results. When you enter search criteria at the Select Customer Sold To Screen, you advance to a subsequent screen listing customers in alphanumeric order based on values that match your search criteria. Similarly, when the system receives a customer inquiry request, it responds with a message listing customers in alphanumeric order based on values that match the search criteria from the request.
You can use this integration together with the customer history integration described below so that, once Order Management System has provided the matching customer(s) from the Customer Sold To table, the external system can then send a customer history request for a selected customer.
For more information: See Generic Customer Inquiry (Search) API.
Purpose: Use the generic customer history integration to provide a customer’s order history to an external system, such as CWStore, and detailed information about a single order.
The external system can request information using the Order Management System customer number or order number. It can also use its own numbers if they map to the alternate customer number or alternate (web) order number in Order Management System.
When the request provides information on the customer, Order Management System produces a customer history message in response. When the request provides information on the order, Order Management System produces a detailed or summary order message. The request can include the Order Management System customer or order numbers, or the external system can use its own numbers if they map to the alternate customer number or alternate (web) order number in Order Management System.
For more information: See Generic Customer History API.
Purpose: Use the generic inventory inquiry integration to provide current inventory information for items upon request. For example, you might use this integration to send up-to-date inventory information when it is requested by an external system. See Inventory Transaction Upload for a comparison between this integration and other generic inventory integrations.
For more information: See Generic Inventory Inquiry API.
Point of Sale Integration Setup
You must perform the necessary Order Management System setup and processing to use the point of sale Integration.
Information requiring setup includes:
For more information: See the Generic Order Interface (Order API) and the Generic Inventory Transaction Upload for information on setup related to these interfaces.
System Control Value |
Description |
Select this field to create item download triggers in the IL Outbound Trigger table to download to the point of sale system. |
|
Select this field to create vendor download triggers in the IL Outbound Trigger table to download to the point of sale system. |
|
Select this field to create invoice download triggers in the IL Outbound Trigger table to download to the point of sale system. |
|
Select this field to create inventory download triggers in the IL Outbound Trigger table to download to the point of sale system. |
|
Select this field to create customer download triggers in the IL Outbound Trigger table to download to the point of sale system. |
|
Enter the number of days to retain records in the IL Outbound Trigger table before purging them. Run the PURGIJT periodic function (program name ILR0026) to delete any records if: Last processed date is less than the current system date by the number of purge days and Status is X. You can also use the Purge option at the Work with Outbound Interface Transactions Screen to purge records. Example: Today is 2/07, and you have set this value to 1. Any record whose Last processed date is 2/06 or earlier is purged. |
Menu Option |
Description |
Allows you to create an IL outbound trigger record for each item/SKU, vendor, and/or invoice in your company. Run this process to initially send your data to the point of sale system. |
|
Allows you to review, delete, or resend IL outbound trigger records. |
|
Use this option to create the process queues and required message queues and queue managers to send and receive messages for each integration. Also, define trigger rules, XML inclusion rules, and queues for the following IL Process jobs related to point of sale: Item Outbound: processes triggers with a File code of SKU and generates an item download message. Invoice Outbound: processes triggers with a File code of IHD and generates an invoice download message. Vendor Outbound: processes triggers with a File code of VND and generates a vendor download message. Inventory Outbound: processes triggers with a File code of ITW and generates an inventory download message. |
Periodic Function |
Description |
Purge IJCT Download (program name ILR0026) |
Run this periodic function to purge processed IL outbound triggers, based on the Outbound Interface Trigger File Purge Days (I14) system control value: Capture date is less than the current system date by the number of purge days and Status is X |
Start All IJCT Jobs (program name MSX1288) |
Run this periodic function to start all IL Process jobs in the Working with Integration Layer Processes (IJCT) menu option. |
Stop All IJCT Jobs (program name MSX1289) |
Run this periodic function to end all IL Process jobs in the Working with Integration Layer Processes (IJCT) menu option. |
Point of Sale Integration | Contents | SCVs | Search | Glossary | Reports | Solutions | XML | Index | Generic Inventory Transaction Upload |
ST01_01 OROMS 16.0 December 2016 OTN