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
, thefindInventory
API is called on the Promising server. ThefindInventory
API 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
, thereserveAvailableInventory
API is called on the Promising server. ThereserveAvailableInventory
API 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_CHANGE
event is invoked on the Order server. TheEXTERNAL_DEMAND_CHANGE
event invokes a service that calls thereserveItemInventoryList
API to synchronize demand on the Promising server. Reservations created for orders useReservationID
as the OrderHeaderKey. - To adjust inventory supply on the Promising server, the
EXTERNAL_SUPPLY_CHANGE
event is invoked on the Order server. TheEXTERNAL_SUPPLY_CHANGE
event invokes a service that calls theadjustInventory
API 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_CHANGE
event. - 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_CHANGE
event. - 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.
