They coordinate multiple specialized AI agents (called Operator Agents) to manage large-scale, domain-specific processes like:
  • Accounts Payable Automation
  • Procurement Lifecycle Management
  • HR Talent Acquisition
  • Contract Intelligence and Legal Operations
Each orchestrator acts like a mission control system, dynamically triggering and managing other AI agents, routing data, handling exceptions, and interacting with both humans and systems.

How Orchestrator Agents Work

Orchestrator Agents use a Workflow AI Agent template, enhanced with logic blocks, skills, and agent invocation capabilities. They:
  1. Monitor input sources (emails, documents, portals, chatbots)
  2. Detect user intent using NLP models or keyword mapping
  3. Trigger specialized AI agents based on the detected task
  4. Route outputs and decisions across steps like approvals, escalations, and updates
  5. Track status across all subprocesses
  6. Generate consolidated reports
All Orchestrator workflows are built using a visual drag-and-drop editor, and support human-in-the-loop, multi-channel triggers, and real-time feedback capture.

Use Cases by Domain

1. Invoice Orchestrator Agent

  • Matches PO/non-PO invoices
  • Validates travel, freight, and expense claims
  • Flags exceptions (e.g., policy violations)
  • Posts clean entries to SAP
  • Sends exceptions to Supervity Inbox

2. Procurement Orchestrator Agent

  • Validates requisitions and vendor data
  • Creates POs
  • Tracks delivery and GRs
  • Performs spend analysis
  • Flags off-policy purchases or price anomalies

3. HR Orchestrator Agent – Talent Acquisition

  • Screens resumes
  • Schedules interviews
  • Collects onboarding documents
  • Trains new hires via Digital Adoption Coach
  • Detects candidate intents via email/chatbot

4. Contract Intelligence Orchestrator Agent

  • Drafts contracts
  • Extracts clauses
  • Reviews for risks and non-standard terms
  • Tracks obligations and renewals
  • Supports legal, procurement, and compliance teams

Step-by-Step: Building the Orchestrator Multi-Agent System for Invoice Automation

The Invoice Orchestrator is a complex AI Agent workflow that intelligently processes incoming invoices by classifying, routing, extracting, validating, and escalating them based on predefined logic. Here’s how it’s constructed:

Step 1: Trigger – When new email is received on Outlook

  • Purpose: To initiate the entire automation workflow the moment a new email arrives in a specified Outlook inbox. This step acts as the entry point for all incoming invoices.
  • Configuration:
    • Step Title: When new email is received on Outlook
    • Step Description: Run your workflow whenever a new email is received
    • Integration: Connected to Microsoft Outlook.

Step 2: Generative AI – Initial Content Analysis

  • Purpose: To analyze the body and attachments of the incoming email to determine its content type. This initial check is crucial for deciding the immediate next action.
  • Configuration:
    • Step Title: Generative AI
    • Task Prompt: Retrieve the response from the previous step.
    • System Prompt: ``` Analyze the data retrieved from the previous step. Determine if it contains an attachment or JSON data.
      • Attachment: Check for any files attached to the email, such as PDFs, images, or documents.
      • JSON Data: Review the body of the email for any embedded JSON structure, which typically appears as a string of key -value pairs (e.g., { "key": "value", "key2": "value2" }).
      • None: respond with “None” if no file or JSON found.
      Respond with either “Attachment” or “JSON” or “None”.

Step 3: Decision Pathways – Route by Data Type

  • Purpose: To branch the workflow based on the output of the initial content analysis. It directs the process down one of three paths: JSON, Attachment, or None.
  • Configuration:
    • Step Title: Decision Pathways
    • Step Description: decision data type
    • Condition/Decision Description: Retrieve the response from the previous step.
    • Choices/Decision Criterias:
      • Decision Criteria 1: JSON
      • Decision Criteria 2: Attachment
      • Decision Criteria 3: None

Step 3.1: JSON Processing (If JSON is detected)

  • Purpose: To analyze the pre-structured JSON data from the email body and classify the invoice into its specific business category.
  • Configuration:
    • Step Title : Generative AI
    • Step Description: Gen ai JSON
    • Task Prompt: Retrieve the JSON data from the previous step read mail step body.
    • System Prompt: Analyze the below invoice data and determine its type from the following categories:
      • Travel Invoice: This type includes charges for travel-related expenses such as flights, accommodation, meals, and transportation.
      • PO Matching Invoice: This type matches a Purchase Order (PO)  and contains details of goods or services received, with a corresponding PO number.
      • Non -PO Invoice: This type refers to invoices that do not have an  associated Purchase Order and are often related to miscellaneous purchases or services.
      • Freight Invoice: This type contains charges related to shipping or  transportation of goods, including freight costs and any associated fees.
      • Expense Reimbursement: This type includes costs for travel, meals, or other business-related expenses that were personally paid by the employee  and need to be reimbursed by the company.
      Note: do not respond anything in bold.

Step 3.2: Attachment Processing (If Attachment is detected)

Purpose: This path is executed when the initial email contains a document attachment (e.g., PDF) but no structured JSON in the body. Its goal is to extract the data from the document and classify it.

Step 3.2.1: Agentic Document Processing – Data Extraction

  • Purpose: To process unstructured document files using Optical Character Recognition (OCR) and intelligent document processing, converting the visual information into a structured data format.
  • Configuration:
    • Step Title: Agentic Document Processing
    • Step Description: Extracts data
    • Task Prompt: Process the PDF files retrieved from the “current directory”.
    • Explain what data to be extracted: Extract the line data as list of dictionaries and  include all the remaining fields in header data as proper key value pairs.

Step 3.2.2: General – Save Extracted Data

  • Purpose: To take the structured data output from the previous extraction step and save it into a temporary file (extract.txt). This standardizes the data format for subsequent processing steps.
  • Configuration:
    • Step Title: General
    • Step Description: save data
    • Task Prompt: Save the response from previous step “Extracts data”  to “extract.txt” file.

Step 3.2.3: Generative AI – Classify from Extracted Text

  • Purpose: To analyze the standardized text data (now stored in extract.txt) and determine the specific business category of the invoice (e.g., Travel, PO Matching) to enable correct routing.
  • Configuration:
    • Step Title: Generative AI
    • Step Description: Gen ai Attachment
    • Task Prompt: Retrieve the response from the previous step “Extracts data”.
    • System Prompt: Analyze the below invoice data and determine its type from the following categories:
      • Travel Invoice: This type includes charges for travel-related expenses such as flights, accommodation, meals, and transportation.
      • PO Matching Invoice: This type matches a Purchase Order (PO)  and contains details of goods or services or products received, with a corresponding PO number and Invoice number.
      • Non PO Invoice: This type refers to invoices that do not have an  associated Purchase Order and are often related to miscellaneous purchases or services.
      • Freight Invoice: This type contains charges related to shipping or  transportation of goods, including freight costs and any associated fees.
      • Expense Reimbursement: This type includes costs for travel, meals,or other business-related expenses that were personally paid by the  employee and need to be reimbursed by the company.
      Note: do not respond anything in bold.

Step 3.3: Send email with Outlook – (If None is detected)

  • Purpose: To automatically notify a designated person or system administrator that an email has been received which cannot be processed by the automation. This ensures that no incoming communication is lost and can be reviewed manually.
  • Configuration:
    • Step Title: Send email with Outlook
    • Step Description: Sends email
    • Task Prompt: send an email to “sender@email.com with Subject:No attachment or JSON data found Body: NO attachment or JSON data found in the received email

Step 4: Decision Pathways – Route to Specialized Agent

  • Purpose: This step acts as the primary routing hub for all valid invoices. It takes the invoice type classified by the preceding Generative AI steps and directs the workflow to the appropriate specialized agent for final, targeted processing.
  • Configuration:
    • Step Title: Decision Pathways
    • Step Description: decision invoice type
    • Condition/Decision Description: Retrieve the response from the previous step Gen ai Attachment  or Gen ai JSON and check if it contains any of the below choices. if “Travel Invoice” in Travel Invoice choice. if “PO Matching Invoice” in PO Matching Invoice choice. if “Non PO Invoice” in Non PO Invoice choice. if “Freight Invoice” in Freight Invoice choice. if “Expense Reimbursement” in Expense Reimbursement choice. Convert into lower case and check.
    • Choices/Decision Criterias:
      • Decision Criteria 1: Travel Invoice
      • Decision Criteria 2: PO Matching Invoice
      • Decision Criteria 3: Non PO Invoice
      • Decision Criteria 4: Freight Invoice
      • Decision Criteria 5: Expense Reimbursement
      • Decision Criteria 6: miscellaneous

Step 4.1: Agent Use – Travel Invoice Agent

Purpose: To invoke the specialized agent responsible for processing travel-related invoices, such as those for flights, hotels, and meals. Configuration:
  • Step Title: Agent Use
  • Step Description: Travel Invoice Agent
  • Task Prompt:
    Check for "extract.txt" File Existence:
    If the file extract.txt exists in the current directory:
    Load the JSON data from extract.txt.
    Pass the loaded JSON data as the input payload.
    Additionally, identify and pass any PDF and docx files available in the current directory as input.
    Here is the below curl command which accepts input file and input text.
    curl --location 'https://gen-v1.supervity.ai/api/v1/skill/automation/trigger/cmbrfbv0s002a4f1hw0fyaibg/cmbrbv0s002b4f1hc046iwsz' \
    --form 'inputFiles=@"/' (all pdf and docx files from current directory, in put files multiple files can be sent so consider all pdf and docx files.)"'\
    --form 'textArea="{use the JSON data from "extract.txt" file only and not from any other sources}"'
    If extract.txt does not exist:
    Use the "Gen AI JSON" data retrieved from the previous step as the input payload.
    

Step 4.2: Agent Use – PO Matching Invoice Agent

  • Purpose: To trigger the agent that handles invoices associated with a Purchase Order (PO). This agent’s logic would typically include matching the invoice details against the corresponding PO in a financial system.
  • Configuration:
    • Step Title: Agent Use
    • Step Description: Po Matching Invoice Agent
    • Task Prompt:
      Check for "extract.txt" File Existence:
      If the file extract.txt exists in the current directory:
      Load the JSON data from extract.txt.
      Pass the loaded JSON data as the input payload.
      Additionally, identify and pass any PDF files available in the current directory as input.
      Here is the below curl command which accepts input file and input text.
      curl --location 'https://gen-v1.supervity.ai/api/v1/skill/automation/trigger/cmbrfaqg100264f1h1yx0zhe0/cmbrfaqg100274f1hvbe5q4xh' \
      --form 'inputFiles=@"/' (all pdf files from current directory, input files multiple files can be sent so consider all pdf files.)"'\
      --form 'textArea="{use the JSON data from "extract.txt" file only and not from any other sources}"'
      If extract.txt does not exist:
      Use the "Gen AI JSON" data retrieved from the previous step as the input payload.
      

Step 4.3: Agent Use – Non PO Invoice Agent

  • Purpose: To call the agent that processes invoices that do not have a corresponding Purchase Order, often related to miscellaneous services or ad-hoc purchases.
  • Configuration:
    • Step Title: Agent Use
    • Step Description: Non Po Invoice Agent
    • Task Prompt:
      Check for "extract.txt" File Existence:
      If the file extract.txt exists in the current directory:
      Load the JSON data from extract.txt.
      Pass the loaded JSON data as the input payload.
      Additionally, identify and pass any PDF files available in the current directory as input.
      Here is the below curl command which accepts input file and input text.
      curl --location 'https://gen-v1.supervity.ai/api/v1/skill/automation/trigger/cmbrf6yvu001q4f1hicvnad4z/cmbrf6yvu001r4f1hrzo3hfac' \
      --form 'inputFiles=@"/' (pdf file from current directory)"' \
      --form 'textArea="{use the JSON data}"'
      If extract.txt does not exist:
      · Use the "Gen AI JSON" data retrieved from the previous step as the input payload.
      

Step 4.4: Agent Use – Freight Invoice Agent

  • Purpose: To engage the agent specialized in handling invoices for shipping, transportation, and logistics costs.
  • Configuration:
    • Step Title: Agent Use
    • Step Description: Freight Invoice Agent
    • Task Prompt:
      If the current directory contains extarct.txt file load the content from extract.txt file, and also pass the pdf attachment available from the current directory.
      
      If no extract.txt file is available in current directory, use the JSON data from step Gen ai JSON.
      

Step 4.5: Agent Use – Expense Reimbursement Agent

  • Purpose: To run the agent that processes claims for employee-paid expenses that need to be reimbursed by the company.
  • Configuration:
    • Step Title: Agent Use
    • Step Description: Expense Reimbursement Agent
    • Task Prompt:
      If the current directory contains extarct.txt file load the content from extract.txt file, and also pass the pdf attachment available from the current directory.
      
      If no extract.txt file is available in current directory, use the JSON data from step Gen ai JSON.
      

Step 4.6: Agent Use – Custom Agent (Miscellaneous)

  • Purpose: A catch-all agent to handle invoices that do not fit into the other predefined categories, ensuring all documents are processed.
  • Configuration:
    • Step Title: Agent Use
    • Step Description: Custom Agent
    • Task Prompt:
      Check for "extract.txt" File Existence:
      If the file extract.txt exists in the current directory:
      Load the JSON data from extract.txt.
      Pass the loaded JSON data as the input payload.
      Additionally, identify and pass any PDF files available in the current directory as input.
      Here is the below curl command which accepts input file and input text.
      curl --location 'https://gen-v1.supervity.ai/api/v1/skill/automation/trigger/cmbrf80sa001u4f1hvkwvt5em/cmbrf80sa001v4f1hro5m2sha' \
      --form 'inputFiles=@"/' (pdf file from current directory)"' \
      --form 'textArea="{use the JSON data}"'
      If extract.txt does not exist:
      Use the "Gen AI JSON" data retrieved from the previous step as the input payload.
      

Step 5: End

  • Purpose: The terminal node where all successful processing paths (4.1 through 4.6) converge, signifying the completion of the workflow for one incoming invoice.

Instantly Use the Orchestrator Agent

To directly add this pre-built agent to your workspace:
  1. Go to the AI Agent Hub from the left sidebar.
  2. Search for “Orchestrator Multi Agent System for Invoice Automation”.
  3. Click Add to AI Agents to begin customizing or using it right away.
This visual representation highlights how intelligently the orchestration flows—from receiving emails, parsing data, classifying invoice types, triggering specialized agents, and sending out automated responses Joint (2).png