What is POS?
A point-of-sale (POS) system is a computerized replacement for a cash register. Much more complex than the cash registers of even just a few years ago, the POS system can include the ability to record and track customer orders, process credit and debit cards, connect to other systems in a network, and manage inventory.
Oracle Retail POS Suite
An important part of the in-store experience, for both the customer and the store associate, is the delivery of the retailer’s brand. Designed with the highest degree of flexibility on the market, Oracle Retail Point-of-Service provides retailers with a user interface that can be easily modified to reflect an individual brands look and feel. Oracle Retail Point-of-Service can be configured to present a retailers branding, from the colour schemes, icons and text of the global and local navigation buttons, to the orientation of the prompt, response and status regions, the use of images, logos and colour schemes in the work area, though the support of technology such as touch screen. This same flexibility allows overall solution to support multiple brands
Today I am going to share my experience that how I integrated the Oracle POS with a client’s outdated Legacy Balance System.
Legacy Balance System
It was the centralized system to calculate the data about sold items for a brand/store in a day. It was a file based system with XML format (Extensible Markup Language) as well as maintained physical directories for each store with a dedicated Store ID to consume the incoming/transformed files from middleware side.
In the solution, three Oracle products were leveraged. I have listed below what was used to provide the solution for integration between Oracle POS and Legacy Balance System:
- Oracle SOA Suite
- Oracle Service Bus
- Oracle Data Integrator
Let’s begin with the roles of the Oracle Products that were used to deliver the solution and then take a deeper dive to technical architecture.
Oracle Service Bus
This product was majorly used for pickup and delivery of files to third party/remote locations which we call FTP (File Transfer Protocol) in technical term. It was also used for data transformation and data merging of small size files using XQuery.
Oracle SOA Suite
The reason behind using this Oracle Product was dealing with complex transformation rules which can be implemented in XSLT (Extensible Stylesheet Language Transformation). XSLT is a language for transforming the XML documents to other XML document or other formats such as plain text.
Oracle Data Integrator
This tool covers all of the data integration requirement even if we talk about high volume data, high-performance batch loads, event-driven and communicating with SOA Services. The reason behind using this tool was to deal with transformation of big volume data.
POS Integration Architecture
Business Use Case
Stores get opened up and sell their goods for whole day using Oracle POS system on each register. At the end of the day, when stores get closed and perform end of the day activity by closing each register. The data about the sold items get collected/wrapped up in the form of RTLog (Retail Transaction Log) and pushed to JMS Topic which is configured on Middleware’s WebLogic Server.
Oracle SOA Service consumes the message from JMS Topic, extract the jar file and write the data in file on local box (WebLogic System) as per Store Id which is sent in JMS Message’s Header. Once RTLog file gets written by SOA Service then ODI Service will be called to transform the RTlog’s data and prepare file as per required for Target system (Legacy Balance System).
Once the transformation part is done in ODI, the ODI Service sends a message to the OSB Service with required parameters saying that transformation is complete and file is ready to move to client’s box (FTP Location). In OSB, we get parameters with the values of file name and location of written file. OSB would perform FTP operation and move file to Legacy System’s directory as per Store ID.
The integration took place for a popular clothing brand with more than 1800 stores in the United States and Canada.
This was just one cycle of the integration that was performed from Oracle POS to Legacy Balance System. There are are several others that I look forward to discussing in future blog posts.