Process manager and event triggers

When inserting or updating data via the API an event can be triggered. Event triggers are predefined in ORP. When an event trigger is fired a process request will be sent to the process manager. The process manager is a configurable application in which you can couple actions to an event. Defining processes in the process manager is not mandatory, if a trigger is received for an event that is not configured the event will be discarded. See the below diagram for the process manager flow.

All process tasks will be carried out in order. A task will never be started if the task before is still running. When one of the tasks fail the process will get a failed status and stops executing. If a process has 3 tasks, the first fails then task 2 and 3 will stay on status open, task 1 will have a status failed and the process will also have a failed status. If a process is marked as restartable the process can be restarted. When a process is restarted the first failed or open task will be restarted.

Process triggers

A process will be triggered by sending a message to the the opm_processrequested topic. The process manager will listen to this topic and will respond to configured triggers. For a full list of the default ORP triggers see the list of process triggers.

Process tasks

Processes can be configured via the process manager configuration tool. ORP has an extensive set of predefined process tasks that can be used for different purposes. See the list of process tasks for the complete overview of all process tasks.

Example order process

Below tasks are defined for a new order process. This new order process will fire when a NEWORDER process request was received.

As stated previously the tasks will be executed in order. The tasks defined are explained below.

  1. EnrichOrder, when this order is a store pickup order the pargo id needs to be mapped to a store id.

  2. ORP stock, update the stock in ORP so the ordered items are deducted.

  3. Sync order, send the order to Oracle OIC.

  4. SFSC new order, send the order to SFSC.

  5. Update ORP Status, update the order status in ORP.

  6. If there were gift cards in the order which are digital assets, set the status of the giftcard to delivered.

Example refund process

Below tasks are defined for a refund succeeded process. This process will fire when a REFUND_TRANSACTION_SUCCESS process request was received.

This process has 3 tasks, the tasks defined are explained below.

  1. AccountViewRefundSyn, send the refund to AccountView, the financial settlement can be done in the ERP.

  2. YellowFinRefundSyn, send the refund data to YellowFin to make sure that refunds are used in their business intelligence reports.

  3. Send refund, Send an email to the client that a refund was paid out.

copyright wolfpack DCS b.v. 2020