Zoomed Image

Multi-Level Approval

xAssets Procurement Guide
Multi-Level Approval

Multi-Level Approval

This page explains how to configure multi-level approval for purchase orders using custom queries, giving you full control over who approves what.

Overview

Purchase orders can have up to 6 approval levels. Level 6 is the Standard Purchase Approval (value-based). Levels 1 through 5 are defined using queries, giving you full flexibility to base approval on any criteria — department, asset type, supplier, or any combination.

This separation means you can build sophisticated approval chains. For example:

  • Level 2 — line manager approval for all POs
  • Level 3 — department head approval for POs over $5,000
  • Level 4 — finance director approval for POs over $25,000
  • Level 6 — Standard Purchase Approval as a catch-all

Setting Up an Approval Level Query

Each approval level is defined by a query with these requirements:

Property Value
Query type PO APPROVER
Query name Purchase Order Approver Level n (where n is 1 to 5)
Parameter PurchaseOrderID (the ID of the PO being evaluated)

Steps to Create an Approval Level Query

  1. Navigate to the query configuration area.
  2. Create a new query with the type set to PO APPROVER.
  3. Name it exactly Purchase Order Approver Level n (replacing n with the level number, 1 to 5).
  4. Add a parameter named PurchaseOrderID.
  5. Write SQL that returns one or more CustodianID values representing the users who can approve at this level.
  6. Save the query.

If a query exists for a given level, it will be evaluated regardless of whether queries exist for other levels. Levels do not need to be consecutive — you can define Level 2 and Level 4 without defining Level 3.

How Query Results Determine Approval

  • No results returned — approval is not required for this PO at this level, and the level is skipped.
  • One or more CustodianIDs returned — only users with those CustodianIDs (or a user listed at a higher approval level) can approve or reject the PO at this level.

Tip: An approver at a higher level can approve the PO, which skips all lower unapproved levels. This means a senior approver can fast-track an urgent PO without waiting for each level to be processed individually.

Common Approval Patterns

Pattern How to Implement
Line manager approval Query returns the ManagerCustodianID from the requesting or receiving custodian's record
Department head approval Query joins through the asset's department to find the department head's CustodianID
Value-based tiered approval Query checks the PO total and returns approvers only when the value exceeds a threshold
Supplier-specific approval Query checks the supplier on the PO and returns the relevant procurement specialist

For worked examples of approval level queries, see Purchase Order Approval Level Query Examples. For how levels interact during processing, see Purchase Order Approval Levels.