Request Management architecture

  • Release version: Australia
  • Updated January 30, 2025
  • 2 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of Request Management architecture

    Request Management in ServiceNow defines the data model and processing flow for catalog item requests, managing the lifecycle from cart creation to fulfillment. The process starts from the Service Catalog and is triggered only when a catalog item from theCatalog Item [sccatitem]table is requested. This architecture governs how requests, requested items, and catalog tasks are created and processed.

    Show full answer Show less

    Request Management hierarchy and data model

    When a user submits a request for a catalog item, records are generated in a hierarchy involving the following key tables:

    • Request [screquest]
    • Requested Item [screqitem]
    • Catalog Task [sctask]

    Variables are associated only with the Requested Item [screqitem] table and are not supported on its extended tables.

    Important configuration notes: The data model does not support creating request management objects via record producers. Therefore, record producers should not insert records into the Request, Request Item, or Catalog Task tables or their extensions. Additionally, avoid writing business rules with "before" triggers on the Request, Request Item, Cart, and Cart Item tables to maintain system integrity.

    Request management process

    There are three main scenarios for submitting catalog item requests:

    • Ordering a catalog item directly without adding to the cart:
      • A temporary cart (sccart) is created.
      • The catalog item and its variables are added to the temporary cart as records in the Cart Item [sccartitem] table.
      • Variables are stored in Options [scitemoption] and Variable Ownership [scitemoptionmtom] tables.
      • The temporary cart is checked out, initializing but not immediately committing records in Request [screquest] and Requested Item [screqitem] tables.
      • Records are linked, updated, and then committed to the database in the correct order to maintain data integrity.
    • Submitting a request after adding items to the cart:
      • The default cart is checked out.
      • The same checkout process occurs as with direct ordering, but steps for initializing and committing records are repeated for each item in the cart.
    • Submitting a request using an order guide:
      • For a two-step order guide checkout, a temporary cart is used for all items.
      • For a three-step order guide checkout, the default cart is used.
      • The process follows the same steps as ordering directly without adding to the cart.

    Practical implications for ServiceNow customers

    • This architecture ensures consistent and reliable handling of catalog item requests, whether ordered singly, via carts, or through order guides.
    • Understanding the underlying tables and process flow helps in troubleshooting, customizing, and extending request management functionality without disrupting core processes.
    • Adhering to configuration best practices—such as avoiding record producers for request object creation and restricting certain business rule triggers—preserves system stability.
    • Customers can expect a streamlined request fulfillment flow that properly manages variables and maintains data consistency across related tables.

    Request Management defines the data model and processing flow for catalog item requests, from cart creation through record fulfillment.

    Request Management hierarchy

    Service Catalog is the starting point of the request management process. The request management process is triggered only when a catalog item from the Catalog Item [sc_cat_item] table is requested.

    When a user submits a request for a catalog item, records are generated in the following hierarchy.

    Note:
    Variables are associated only with the Requested Item [sc_req_item] table. Variables are not supported for extended tables.
    Figure 1. Request Management hierarchy
    Screenshot for the Request Management hierarchy
    Note:
    When you configure Request Management:
    • The data model does not support a record producer generating request management objects such as request, request item, and catalog task. Therefore, do not use a record producer to insert records in the following request management tables or their extensions:
      • Request [sc_request]
      • Request Item [sc_req_item]
      • Catalog Task [sc_task]
    • Do not write business rules with the before trigger for the following tables:
      • Request [sc_request]
      • Request Item [sc_req_item]
      • Cart [sc_cart]
      • Cart Item [sc_cart_item]

    Request management process

    Catalog item is ordered directly without adding it to the cart
    When a catalog item is ordered or requested directly without adding it to the cart, the following steps are performed:
    1. A temporary cart, sc_cart, is created.
    2. The catalog item along with the variables (values entered by the user) is added to the temporary cart as a record in the Cart Item [sc_cart_item] table.
    3. The variables are saved in the Options [sc_item_option] and Variable Ownership [sc_item_option_mtom] tables.
    4. The temporary cart is checked out by performing these steps.
      1. A record in the Request [sc_request] table is initialized but not committed in the database.
      2. A record in Request Item [sc_req_item] table is initialized but not committed in the database.
      3. The request reference for the Request Item [sc_req_item] table record is updated with the Request [sc_request] table record.
      4. The variables record in the Options [sc_item_option] and Variable Ownership [sc_item_option_mtom] tables are updated based on the Request Item [sc_req_item] table record.
      5. The Request Item [sc_req_item] table record is committed in the database.
      6. The Request [sc_request] table record is committed in the database.
    Request is submitted after adding the item to the cart
    If a catalog item is added to the cart and the request is submitted using the checkout process, the default cart is checked out.

    All steps mentioned in the preceding scenario, Catalog item is ordered directly without adding it to the cart, are applicable. However, if multiple catalog items are added to the cart, step 2 through step 4 of the checkout process are repeated for each item.

    Request is submitted using an order guide
    For a two-step order guide checkout, the temporary cart is used for all items. For a three-step order guide checkout, the default cart is used for the items.

    All steps mentioned in the preceding scenario, Catalog item is ordered directly without adding it to the cart, are applicable.

    Note:
    The base system workflow attached to the request is demo data.