Fusion Order Management (OM) Orchestration, with its Non-Fusion order fulfillment system, uses Pause, Stop, and other modes to update Orders with revisions every time the inbound flow comes to Fusion. This is not great for Biz/Users as they want to see real modifications to Orders when there is a change order only.
Oracle offers Pause with Fulfillment Response and Template Task Layer (TTL) solutions to integrate Oracle Fusion OM Cloud with an external system. Based on client use cases, Jade/Oracle strongly recommended using a TTL solution for the stability and scalability of Order Management and Fulfillment operations.
Business users were seeing revisions of orders for any API update, which was confusing as per the Business scenario, there were no revisions, but the system was automatically performing this for any API message coming from external/third-party system.
TTL Overview
Oracle Fusion OM enables organizations to manage customer orders accurately and efficiently across multiple order capture and fulfillment systems.
The Task layer is a concept in Fusion OM in which a specific business task is accomplished by communicating with external applications or systems. There are multiple Task Layers in Fusion OM, like the Reservation Task layer and Shipping Task layer that performs functions like Reservation and Shipping, correspondingly.
In the communication process, the External Integration Layer (EIL) plays a vital role when talking to third-party or Non-Fusion systems.
The TTL connector URL is specified in the EIL using Manage Web Service Details UI.
A TTL Connector is a web service that receives a message from Fusion OM. It uses the abstract WSDL contract provided by Oracle to ensure that request/response messages for interacting with the Non-Fusion order fulfillment system are standardized. Error handling should also be part of the Connector, so that errors can be reported and recovered. Customers can choose to use any application server that supports Java-based applications to build the connector web-service.
TTL Connector
Connectors have multiple objectives, including:
- Connector interacts with Non-Fusion order fulfillment system
- Connector contains and conforms to the message format as defined by Fusion OM
- Connector transforms the Fusion OM message into a form that the Non-Fusion order fulfillment system understands
- Connector sends messages to and receives from the Non-Fusion order fulfillment system
- Connector transforms the Non-Fusion order fulfillment system’s message into a format that Fusion OM understands for response
The outbound (Fusion OM to an external system) connector URL is registered in the EIL setup step. The Connector needs to be deployed on the Third-Party Application Servers. When an outbound request from Fusion OM reaches the Non-Fusion order fulfillment system through Connector, the Connector sends back the acknowledgment to confirm it has accepted the message.
Once the Fusion OM standard Web Service Fulfillment Response is published, it can be called by the Non-Fusion order fulfillment system directly to send a response whenever the Non-Fusion Fulfillment system has to send an intermediate/final update. As long as the Task Instance status in the Payload does not meet the Exit criteria defined in the Orchestration definition, the Task will remain on the WAIT step. If the Payload has Task Instance status with exit criteria, the Orchestration task will move to the next logical Task in the Orchestration process definition.
Jade’s Role
Jade performed the Technical and system Configuration in close coordination with Oracle at the client’s facility. Oracle and Client Architects approved the design.
The solution has the following components:
- Webservice Integration with Oracle Fusion and Development using Java, deploy in TOMCAT or other Servers
- Orchestration, Routing, EIL, and Connector using Order Fulfilment Response Service (OFRS)
Flow Diagram
Inbound and outbound service WSDL
Service Name: FulfillOrderService
Description: This service is used to communicate with the third-party fulfillment systems (INTERN) from Oracle fusion order management.
WSDL: http://host:port/soa- infra/services/default/DooTaskExternalInterfaceVirtualPartnersComposite/fulfillmentreq uest_client_ep?WSDL
Operation Input
processFulfillmentRequestSync FulfillmentRequestRequestMessage Service Name: OrderFulfillmentResponseService
Description: This service is used to communicate status updates from the third-party fulfillment systems into Oracle fusion order management.
WSDL: https://host:port/fscmService/OrderFulfillmentResponseService?WSDL
Configuration Details
- Manage External Web Service Details
- Manage External Routing Rules
- Manage Task Types
- Manage Task Status Conditions
- Manage Status Values
- Manage Orchestration Setup
- Deployment of Code Wait Status and Pause Handling
- Deploy WAR Service in Tomcat
- BIP Report Monitoring
The steps involved in successfully integrating with the downstream Non-Fusion order fulfillment system are as follows:
- Building a connector using abstract WSDL
- Configure the security policy on the Connector
- Deploy the Connector on the third-party Non-Fusion order fulfillment System Tech Stack (your web container).
- Define the EIL web service details in Fusion OM with details of deployed Connector
- Define the EIL Rules in Fusion OM to select the deployed Connector for given business scenarios
- Test the connector service by executing a sample order in Fusion OM
- Create another external reference web service to send the delayed response back to Order Management
Conclusion
In conclusion, the Fusion OM Orchestration system’s use of Pause, Stop, and other modes to update Orders with revisions every time the inbound flow comes to Fusion is not ideal for businesses and users. To address this issue, Oracle recommends using a TTL solution for the stability and scalability of Order Management and Fulfillment operations. This solution will allow integration with external systems without causing confusion for business users by automatically updating orders with revisions that do not reflect actual changes made to the orders.