Asynchronous order processing for large customer and consumer orders
-
- UpdatedAug 3, 2023
- 3 minutes to read
- Vancouver
- Sales and Order Management
If you're an administrator for a communications service provider (CSP), you can support a high volume of enterprise, multi-site customer orders and consumer orders by using asynchronous order processing in the ServiceNow® Order Management application.
Overview
CSPs support both enterprise customers and consumers. Usually, the orders from enterprise customers are large multi-site orders and the orders from consumers are high volume.
- Order validation
- Order ingestion
- Order creation
How synchronous order processing works
With synchronous order processing, an order is received in the Order Management application through the API. Then, the order records are simultaneously created in a customer order table after the order validation.
As an administrator, you can activate or deactivate the order validation for synchronous order processing by setting the create_product_order_validation_sync and create_service_order_validation_sync system properties to True (Default) or False in the Now Platform. Synchronous order processing takes longer than asynchronous order processing when it comes to creating a large number of customer order records.
How asynchronous order processing works
In asynchronous order processing, a high volume of orders or a large number of order payloads are received through the Product Order Open API (Scripted Rest End Point) in the Order Management application from the external Configure, Price, and Quote (CPQ) systems. The order details are first validated and are then inserted into the Inbound Queue [sn_tmt_core_inbound_queue] table. If there are any validation errors, an error message is returned in the response.
This validation is managed by the create_product_order_validation_async system property for product orders and the create_service_order_validation_async system property for service orders. These properties control the validation in the asynchronous processing of orders before the orders are inserted into the Inbound Queue [sn_tmt_core_inbound_queue] table. The default value is set to True.
When the order details are successfully validated, a scheduled job runs to pick up the records from the Inbound Queue [sn_tmt_core_inbound_queue] table and then creates new entries in the customer order table as shown in the following diagram.

- You must activate the Product Order Open API. The new parameter mode enables the API to process the orders synchronously or asynchronously. For more information about the API, see Product Order Open API.
- After you receive a high volume of orders or a large number of the order payloads through the Product Order Open API in the async mode, the order details are first validated. The order details include the product offering, order line items, order specifications, order line items characteristics, and the specification relationship of order line items. For more information on how the validation works, see Validating your orders through asynchronous order processing.
- After the validation of the order details is complete, an entry for each order with a unique record ID is created in the Inbound Queue [sn_tmt_core_inbound_queue] table. The following diagram shows how the inbound queue
state model works. To learn more about how the order entries are created, see Create your order entries during the asynchronous order processing.
Figure 2. Inbound Queue state model - When all the orders are captured in the Inbound Queue [sn_tmt_core_inbound_queue] table, a scheduled job runs to create the customer orders for the records in the New state. To learn how a scheduled job creates orders, see Run a scheduled job to create a customer order.