Overview of the order server and promising server process flow
The Promising server and Order server interact with each other by means of user exits, APIs, and services that are supplied as part of the integration.
The diagrams and descriptions in the following topics explain the process flow.
Promising server and availability
When API calls are made on the
Order server to either reserve or inquire about availability on the
Promising server, the YFSGetExternalAvailabilityUE is
invoked, which in turn calls the GetExternalAvailabilityService on
the Promising server. The GetExternalAvailabilityService is
invoked using endpoint. Endpoint enables the system to make an HTTP
call to a service or an API (interface) that is available on the remote
server.
- For Order server API calls that inquire about availability, such
as
getPossibleSchedules, thefindInventoryAPI is called on the Promising server. ThefindInventoryAPI inquires about availability on the Promising server, and passes the retrieved availability information back to the Order server. - For Order server API calls that request availability in update
mode, such as
scheduleOrder, thereserveAvailableInventoryAPI is called on the Promising server. ThereserveAvailableInventoryAPI updates availability on the Promising server and passes the updated availability information back to the Order server.
findInventory API is called on the Promising
server.The following diagram shows the availability process flow.

Promising server and availability from cache
When getItemListforOrdering API
calls are made on the Order server to get availability from cache,
the OMPGetInventoryFromCacheUE is invoked, which in turn calls the
GetInventoryAlertsService on the Promising server. The GetInventoryAlertsService
internally calls the getInventoryAlertsList API.
The following diagram shows the availability from cache process flow.

Promising server and inventory updates
When API calls are made on the Order server that require updates to inventory demand or inventory supply on the Promising server, an event is invoked on the Order server.
- To create inventory demand on the Promising server, the
EXTERNAL_DEMAND_CHANGEevent is invoked on the Order server. TheEXTERNAL_DEMAND_CHANGEevent invokes a service that calls thereserveItemInventoryListAPI to synchronize demand on the Promising server. Reservations created for orders useReservationIDas the OrderHeaderKey. - To adjust inventory supply on the Promising server, the
EXTERNAL_SUPPLY_CHANGEevent is invoked on the Order server. TheEXTERNAL_SUPPLY_CHANGEevent invokes a service that calls theadjustInventoryAPI to synchronize supply on the Promising server. - When a sales order is shipped, demand and supply updates occur
in a single transaction based on a message that is published to the
EXTERNAL_DEMAND_CHANGEevent. - Purchase orders should be created on the Order server. The supply
updates for a purchase order flow to the Promising server using messages
published to the
EXTERNAL_SUPPLY_CHANGEevent. - When a sales order is backordered from a node and "Put Inventory On Hold For Sourcing On Backorder From Node" is checked, inventory node is created on the Promising server.
- Inventory cost is updated on the Promising server when a sales
order is shipped or an inbound order is received. Note: Inventory costing based on an Average Cost Computation Rule is not supported on the Promising server.
The ReceiveExternalDemandUpdates service and the ProcessExternalSupplyUpdates service need to run as integration servers to update the inventory picture on the Promising server.
The following diagram shows the inventory update process flow.
