Catalog Items Introduction
Understand the Service Catalog hierarchy and build professional catalog items from scratch.
Catalog, Category & Catalog Item Creation
✓ DoneWhat is the Service Catalog?
The Service Catalog is a centralised, self-service portal in ServiceNow that allows employees to browse, request, and track IT and business services — much like an online shopping experience for your organisation. It eliminates the need for phone calls or emails to IT by providing a structured, trackable request mechanism.
The 3-Level Catalog Hierarchy
Everything in the Service Catalog is structured in three levels. You must understand this hierarchy before creating anything:
| Level | Table | What it is | Example |
|---|---|---|---|
| Catalog | sc_catalog | The top-level store container | IT Service Catalog, HR Portal |
| Category | sc_category | A grouping of related items | Hardware, Software, Access |
| Catalog Item | sc_cat_item | The actual requestable service | "Request a Laptop", "New Email Account" |
Step-by-Step: Create a Service Catalog
- Navigate to
Service Catalog > Catalogsin the Application Navigator. - Click New to open a blank Catalog form.
- Enter a Title (e.g., "IT Service Catalog") — this is what users see on the portal.
- Add a Description to explain the purpose of this catalog.
- Set the Manager field — this person owns and governs the catalog.
- Add Editors (users who can manage content within this catalog).
- Optionally upload a Background Color or Banner Image for branding.
- Click Submit to save.
Step-by-Step: Create a Category
- Navigate to
Service Catalog > Categories. - Click New.
- Enter the Title (e.g., "Hardware Requests").
- Select the Catalog this category belongs to.
- Set a Parent category if this is a sub-category (e.g., "Peripherals" under "Hardware").
- Upload an Icon — icons significantly improve user navigation on the portal.
- Set the Order number to control the display sequence.
- Click Submit.
Step-by-Step: Create a Catalog Item
- Navigate to
Service Catalog > Catalog Definitions > Maintain Items. - Click New.
- Enter a clear, user-friendly Name (e.g., "Request a New Laptop").
- Add a Short Description — this appears in the catalog browse view (keep it under 80 chars).
- Write a detailed Description using the HTML editor to explain what users will receive.
- Select the Category where this item appears.
- Upload a Picture (recommended size: 200x200px).
- Set Availability to control who can see and request the item.
- Fill in Delivery Time to set user expectations.
- Click Submit. The item is now in the catalog.
Important Catalog Item Settings Explained
| Setting | Purpose | Best Practice |
|---|---|---|
| Name | User-visible title | Start with a verb: "Request a…", "Get access to…" |
| Short Description | Browse view summary | Keep under 80 characters |
| Category | Where item is grouped | Always assign — uncategorised items are hard to find |
| Workflow / Flow | Automation on submission | Always link a workflow or Flow for proper routing |
| Availability | Who can request | Restrict to relevant user groups to reduce noise |
| Delivery Time | Expected SLA shown to user | Set realistic expectations; drives user trust |
| Price | Optional chargeback cost | Use for showback/chargeback reporting |
| No Cart / No Quantity | Controls ordering behavior | Enable for one-time requests like "Reset Password" |
🧪 Knowledge Check
Catalog Variables & Variable Sets
✓ DoneWhat are Variables?
Variables are the form fields on a catalog item — they capture information from the person submitting the request. Without variables, every catalog item would be a blank form. Variables are stored in the sc_item_variable table and their submitted values in sc_item_option_mtom.
manager_email) and is used when referencing the value in scripts and workflows via current.variables.manager_email.Complete Variable Type Reference
| Type | UI Element | Use When… | Example |
|---|---|---|---|
| Single Line Text | Text input | Short free-text answer | "Full Name", "Cost Center" |
| Multi Line Text | Textarea | Longer input like descriptions | "Business Justification" |
| Yes / No | Checkbox | Simple true/false toggle | "Do you need a docking station?" |
| Select Box | Dropdown (single) | One choice from a short list | "Operating System: Win / Mac" |
| Multiple Choice | Radio buttons | Choose one from visible options | "Urgency: Low / Medium / High" |
| Check Box List | Multi-select checkboxes | Choose many from a list | "Required accessories" |
| Reference | Lookup field | Pick a record from any table | "Assigned Manager" (from sys_user) |
| Date / Date-Time | Date picker | Scheduling or deadlines | "Required by date" |
| Label | Static text (no input) | Instructions or section headers | "Please fill in all required fields" |
| Container Start / End | Collapsible section | Group related variables | "Shipping Details" section |
| Lookup Select Box | Dropdown from table | Dynamic dropdown from DB query | "Select your department" |
| Masked | Password field | Sensitive input | "Temporary password" |
Step-by-Step: Add Variables to a Catalog Item
- Open your Catalog Item record.
- Scroll down to the Variables related list tab.
- Click New to open the Variable form.
- Choose the Type from the dropdown (e.g., Single Line Text).
- Enter the Question — what the user reads on the form.
- Enter the Name — the internal identifier (no spaces, use underscores).
- Set Mandatory to true if the field must be filled before submission.
- Set the Order number to control position (lower = higher on form).
- For Select Box / Multiple Choice — add choices in the Question Choices related list.
- Click Submit and preview your catalog item.
What are Variable Sets?
A Variable Set is a reusable collection of variables that can be attached to multiple catalog items. Instead of recreating the same five "Requester Details" fields on every item, you create one Variable Set and reference it everywhere.
Step-by-Step: Create and Attach a Variable Set
- Navigate to
Service Catalog > Catalog Definitions > Variable Sets. - Click New.
- Enter a Name (e.g., "Common Requester Info") and set Type to Single-Row.
- Add variables to the set (same process as adding variables to a catalog item).
- Submit and save.
- Open a Catalog Item. Scroll to the Variable Sets related list.
- Click Edit, move your Variable Set to the right column, and click Save.
- Set the Order on the Variable Set attachment to control where it appears relative to other variables.
🧪 Knowledge Check
UI Policies & Client Scripts
✓ DoneWhat are Catalog UI Policies?
UI Policies dynamically control the visibility, mandatory state, and read-only state of variables based on conditions — all in real-time without a page reload. They run entirely in the browser (client-side).
onChange event of watched variables.What can a UI Policy do?
| Action | Effect | Example |
|---|---|---|
| Visible = true/false | Show or hide a variable | Show "Mac RAM" only if OS = Mac |
| Mandatory = true/false | Make field required or optional | Require justification if cost > $500 |
| Read Only = true/false | Prevent user from editing | Lock "Manager" field after it's auto-filled |
Step-by-Step: Create a Catalog UI Policy
- Open your Catalog Item and scroll to the Catalog UI Policies related list.
- Click New.
- Set a descriptive Short Description (e.g., "Show justification for costly items").
- Under Conditions, build the rule (e.g.,
Price is greater than 500). - Check Reverse if false — this automatically undoes the policy when the condition is no longer met.
- Submit, then open the Catalog UI Policy Actions related list on that policy.
- Click New → choose the Variable to affect and set Mandatory/Visible/Read Only.
- Test on the catalog item request form.
What are Catalog Client Scripts?
Catalog Client Scripts let you write JavaScript that runs in the user's browser to create custom behaviors beyond what UI Policies support — such as auto-calculating totals, calling GlideAjax for server lookups, or providing instant validation feedback.
Client Script Types
| Type | When it Runs | Common Use Case |
|---|---|---|
| onLoad | When the catalog form first loads | Pre-populate fields, hide sections by default |
| onChange | When a specific variable value changes | Show/hide fields, calculate values dynamically |
| onSubmit | When the user clicks "Order Now" | Final validation before the request is created |
Key Client Script API Methods
// Set a field value
g_form.setValue('field_name', 'value');
// Show or hide a field
g_form.setVisible('field_name', true/false);
// Make a field mandatory
g_form.setMandatory('field_name', true/false);
// Get the current value of a field
var val = g_form.getValue('field_name');
// Show an info/error message under a field
g_form.showFieldMsg('field_name', 'Please enter a valid cost center', 'error');
Catalog Item Workflows & Approvals
✓ DoneHow Automation Connects to Catalog Items
When a user submits a catalog request, ServiceNow needs to know what to do with it. That's the job of a Workflow or Flow — it automates the entire fulfillment lifecycle: routing approvals, sending emails, creating tasks for fulfillment teams, and closing the request.
Connecting a Workflow/Flow to a Catalog Item
- Open your Catalog Item record.
- Click the Process Engine tab (if not visible, scroll right in the related lists or look for it as a field).
- In the Workflow field, click the lookup icon and select your workflow.
- Alternatively, in the Flow field, select a Flow Designer flow.
- Only one should be populated at a time — Workflow or Flow, not both.
- Click Update to save.
The REQ → RITM → SCTASK Hierarchy (Theory)
Understanding this data structure is fundamental to ServiceNow administration:
| Record | Table | Description | Analogy |
|---|---|---|---|
| REQ (Request) | sc_request | The parent "order" — one per cart checkout | The shopping order |
| RITM (Requested Item) | sc_req_item | One per catalog item in the order — workflow runs here | Each item in the cart |
| SCTASK (Catalog Task) | sc_task | Work items generated by the workflow for fulfillment teams | Picking and packing tasks in a warehouse |
Approval Types
| Approval Type | Behavior | When to Use |
|---|---|---|
| Approval – User | Routes to one specific named user | Fixed approver (e.g., always the IT Manager) |
| Approval – Group | Any member of the group can approve; first approval wins | Team-based approval (any senior engineer) |
| Approval Coordinator | Manages complex multi-approver scenarios (parallel or sequential) | Multi-level approval chains |
Catalog Tasks & Request Fulfillment
✓ DoneWhat are Catalog Tasks (SCTASKs)?
Catalog Tasks are the hands-on work items assigned to fulfillment teams. While approvals decide whether to proceed, catalog tasks define what actually needs to happen to deliver the service. Each SCTASK is assigned to an individual or group and must be closed before the workflow can proceed.
Step-by-Step: Add a Catalog Task in a Workflow
- Open the Workflow Editor and find the workflow attached to your catalog item.
- From the Activities panel on the left, drag a Catalog Task activity onto the canvas.
- Double-click the activity to configure it.
- Set the Name (task subject) and Instructions for the fulfillment team.
- Set the Assignment Group (e.g., "IT Hardware Team").
- Enable Wait for completion if subsequent workflow steps depend on this task finishing.
- Connect the activity in the workflow sequence and publish.
RITM Lifecycle States
| State | Value | Meaning |
|---|---|---|
| Open | 1 | Request received, workflow starting |
| Work in Progress | 2 | Being actively worked on |
| Pending Approval | -5 | Waiting for approver action |
| Approved | -6 | Approval granted |
| Rejected | 4 | Approval denied, workflow ends |
| Closed Complete | 3 | All tasks done, request fulfilled |
| Closed Incomplete | 4 | Cancelled or could not be fulfilled |
📌 Section 1 Summary
You now understand the complete Catalog hierarchy (Catalog → Category → Item), how to collect data using Variables and Variable Sets, control form behavior with UI Policies and Client Scripts, connect automation for approval/fulfillment, and how the REQ → RITM → SCTASK data model works.
ServiceNow Workflows
Design automated approval and fulfillment processes using the Workflow Editor.
What is a Workflow?
✓ DoneDefinition & Purpose
A Workflow in ServiceNow is a visual, flowchart-based automation engine. It defines a sequence of activities — approvals, notifications, scripts, tasks — connected by transitions that execute automatically when triggered by a record event.
Core Workflow Concepts
| Concept | Description | Analogy |
|---|---|---|
| Workflow Definition | The blueprint/template — the design you create | A recipe |
| Workflow Context | A running instance of a workflow on a specific record | A meal being cooked |
| Activity | A single step or action in the flow | A cooking step |
| Transition | The arrow between activities that controls flow direction | Moving to the next step |
| Version | Workflows are versioned; only one is "Published" at a time | Recipe version 2.0 |
| Stage | A high-level phase label shown to users (e.g., "Approval", "Fulfillment") | Section in a recipe |
Accessing the Workflow Editor
- Navigate to
Workflow > Workflow Editorin the Application Navigator. - The editor opens in a new browser tab with a visual canvas.
- The Activities panel on the left lists all available activity types.
- The canvas (center) is where you design the workflow by dragging and connecting activities.
- The Properties panel on the right shows settings for the selected activity.
Workflow Design – Core Activities
✓ DoneComplete Activity Reference
| Activity | Category | Purpose |
|---|---|---|
| Begin | Core | Entry point — every workflow starts here (auto-added) |
| End | Core | Exit point — every path must terminate here |
| Approval – User | Approvals | Request approval from a specific user |
| Approval – Group | Approvals | Request approval from any member of a group |
| Approval Coordinator | Approvals | Manage multi-level approval chains |
| Notification | Communication | Send email or in-app notification |
| Create Task | Tasks | Generate a catalog task (SCTASK) |
| Set Values | Data | Update field values on the current or related record |
| If | Logic | Conditional branch — Yes / No paths |
| Switch | Logic | Multi-path branch based on a field value |
| Wait for Condition | Timing | Pause until a field condition becomes true |
| Timer | Timing | Pause for a defined duration |
| Run Script | Advanced | Execute server-side JavaScript (GlideScript) |
| Sub-Workflow | Advanced | Call another workflow as a reusable step |
Step-by-Step: Build Your First Workflow
- Go to
Workflow > Workflow Editorand click New Workflow. - Enter a Name (e.g., "Laptop Request Approval") and select the Table:
sc_req_item. - Click Submit — the canvas opens with Begin and End activities pre-placed.
- Drag an Approval – User activity between Begin and End.
- Double-click the Approval activity to open its settings.
- Set Approver to:
javascript: current.requested_for.manager;(routes to requester's manager). - Connect: Begin → Approval (Approved) → End.
- Add a second End activity and connect: Approval (Rejected) → End (Rejected).
- Click Publish in the top right to activate the workflow.
- Attach it to your catalog item via the Process Engine tab.
Approval & Notification Activities Deep Dive
✓ DoneConfiguring Approval Activities (Theory)
The Approval activity creates a record in the sysapproval_approver table. The approver receives an email and can also approve/reject directly from the Service Portal or mobile app. Once the required approvals are received, the workflow context automatically transitions to the next activity.
Dynamic Approver Scripts
// Route to the requester's direct manager
current.requested_for.manager
// Route to a specific user by username
gs.getUserByName('john.smith')
// Route to the manager of a specific group
var gr = new GlideRecord('sys_user_group');
gr.get('name', 'IT Security');
gr.manager;
Approval Outcomes & Transitions
| Outcome | Transition Label | When it Fires |
|---|---|---|
| Approved | Approved | All required approvers accepted |
| Rejected | Rejected | Any approver rejected the request |
| Cancelled | Cancelled | The workflow was manually cancelled |
| Error | Error | No valid approver could be resolved |
Configuring Notification Activities
- Drag a Notification activity onto the canvas.
- Double-click it to open settings.
- Choose an existing Notification record or create one inline.
- Set the To field dynamically, e.g.,
javascript: current.opened_by.email; - Use notification variables in the email body:
${opened_by.name},${number}. - Configure the Event if you want to use the ServiceNow event system instead of direct email.
Conditions, Branching & Transitions
✓ DoneThe "If" Activity — Conditional Branching
The If activity splits the workflow into two paths (Yes / No) based on a condition evaluated at runtime. This is how you create intelligent routing — for example, routing high-value requests to a senior approver.
Step-by-Step: Add Conditional Branching
- Drag an If activity onto the canvas, positioned after Begin.
- Double-click it and write the Condition script (e.g.,
current.price > 1000). - The activity shows two exit connectors: Yes and No.
- Connect Yes to a Senior Approval path.
- Connect No to a Standard Approval path.
- Both paths should eventually converge or lead to appropriate End activities.
Accessing Catalog Item Variables in Conditions
// Access a catalog variable named "urgency"
current.variables.urgency == 'high'
// Check if a checkbox variable is ticked
current.variables.expedite == true
// Check the dollar value of the request
parseInt(current.variables.estimated_cost) > 5000
Transition Conditions
Beyond If activities, you can add conditions directly to transition arrows between activities. Right-click any arrow → Edit to add JavaScript logic that controls whether that transition fires.
End-to-End Workflow Build & Debugging
✓ DonePre-Publish Checklist
- ✅ Every path from Begin reaches an End activity.
- ✅ Approval activities have Approved, Rejected, and Error transitions wired.
- ✅ Notifications use dynamic variables — no hardcoded emails.
- ✅ Workflow table is set correctly (e.g.,
sc_req_item). - ✅ Workflow is Published, not saved as a draft.
- ✅ Catalog Item is linked to this workflow.
- ✅ Tested in sub-production before production deployment.
Debugging Running Workflows
- Submit a test request through the Service Catalog.
- Navigate to the RITM record that was created.
- Click the Workflow context icon (flow icon in the header) to see the live execution.
- The highlighted activity shows where the workflow is currently paused.
- To see all running contexts:
Workflow > Active Contexts. - To see errors:
System Logs > All— filter by Source = "Workflow". - To manually advance a stuck workflow: right-click the next activity and choose Execute Now (use carefully).
📌 Section 2 Summary
You can now build complete workflows with approvals, email notifications, conditional routing, catalog tasks, and sub-workflows. You know how to publish, link, and debug live workflow instances.
Flow Designer
The modern, low-code automation platform — ServiceNow's recommended approach for all new automation.
Flow Designer – Introduction & Triggers
✓ DoneWhat is Flow Designer?
Flow Designer is ServiceNow's modern, low-code/no-code process automation platform introduced in the Kingston release (2017) and significantly enhanced since. It replaces the legacy Workflow Editor with a cleaner interface, pre-built integrations (Spokes), and a more collaborative development experience.
Workflow vs. Flow Designer — Detailed Comparison
| Feature | Workflow (Legacy) | Flow Designer (Modern) |
|---|---|---|
| Interface | Node/canvas-based (complex) | Sequential step list (clean) |
| Integrations | Scripting required | Pre-built Spoke Actions (Slack, Teams, JIRA, etc.) |
| Trigger Types | Record events only | Record events, scheduled, inbound email, API call |
| Reusability | Sub-workflows | Subflows + reusable Actions |
| Data Passing | Workflow scratchpad (complex) | Data Pills (visual, intuitive) |
| Error Handling | Manual error transitions | Built-in error handling blocks |
| Recommended For | Legacy or very complex cases | ✅ All new development |
Trigger Types Reference
| Trigger | When it Fires | Example Use Case |
|---|---|---|
| Record Created | New record inserted | New Incident opened → notify team |
| Record Updated | Field value changes | Incident resolved → send survey |
| Service Catalog | Specific catalog item submitted | Laptop request submitted → start approval |
| Scheduled | Cron-based schedule | Every Monday: send open ticket report |
| Inbound Email | Email received matching criteria | Email to it@co.com → create incident |
| Application (API) | Called by another flow or REST call | External system triggers onboarding flow |
Creating a Flow — Step by Step
- Navigate to
Process Automation > Flow Designer. - Click New → Flow.
- Enter a Name and select an Application Scope (use Global for org-wide flows).
- Click Submit — the Flow Designer editor opens.
- Click Add a Trigger and select the trigger type (e.g., Service Catalog).
- Configure trigger settings (e.g., select the specific Catalog Item).
- Click Done to confirm the trigger setup.
Actions, Subflows & Data Pills
✓ DoneFlow Designer Building Blocks
| Component | Purpose | Stored In |
|---|---|---|
| Action (Step) | A single automated operation (send email, create record, etc.) | sys_hub_step_ext |
| Subflow | A reusable flow called from within a parent flow — like a function | sys_hub_flow |
| Custom Action | A reusable single step you build with scripts or REST calls | sys_hub_action_type |
| Spoke | A packaged collection of actions for an external system | sn_hub_spoke |
| Data Pill | A dynamic reference to a value from a previous step — drag to use | N/A (UI concept) |
Understanding Data Pills (Theory)
Data Pills are Flow Designer's most powerful concept. Every action produces output — that output becomes a "pill" you can drag into subsequent action inputs. This eliminates the need for variables and complex scripts in most cases.
Common Built-in Actions
| Action | Purpose |
|---|---|
| Ask for Approval | Create approval request — equivalent to Workflow approval activity |
| Create Record | Insert a new record into any table |
| Update Record | Modify fields on an existing record |
| Look Up Record(s) | Query a table to find records matching conditions |
| Delete Record | Remove a record from a table |
| Send Email | Send a notification email using a template |
| Log | Write a debug message to the execution log |
| Wait for Condition | Pause flow until a record field condition becomes true |
| Run Script | Execute a custom server-side JavaScript block |
| Call Subflow | Execute a reusable subflow and receive its outputs |
Using Data Pills — Practical Example
- Add a Look Up Record action. Query the
sys_usertable to find the requester's manager. - The result becomes a Data Pill:
[Look Up Record > User Record > Manager]. - Add an Ask for Approval action. Click the Approvers input field.
- The Data Picker opens — drag the manager pill from Step 1 into the Approvers field.
- The approval is now dynamically routed to whoever is the manager — no hardcoding.
Building a Complete Flow – End to End
✓ DoneComplete Catalog Approval Flow — Step by Step
- Create a new Flow. Add a Service Catalog trigger, select your Catalog Item.
- Add Step 1: Ask for Approval. Set Approvers using the data pill:
Trigger → Requested Item → Requested For → Manager. - Add an If condition block:
Approval State | is | Approved. - Then branch: Add Create Record → Table:
sc_task. Set Short Description, Assignment Group using data pills. - Then branch: Add Update Record → Set RITM State to "Work in Progress".
- Then branch: Add Send Email to notify the requester of approval.
- Else branch: Add Update Record → Set RITM State to "Closed Incomplete".
- Else branch: Add Send Email to notify the requester of rejection.
- Click Activate (top right) to publish the flow.
- Link the flow to your Catalog Item and submit a test request.
Viewing Execution Logs
- Navigate to
Process Automation > Flow Designer. - Open your flow and click the Executions tab.
- Click any execution entry to see the complete step-by-step log.
- Each step shows: input values, output values, duration, and any errors.
- Use the Log action in your flow to write custom debug messages here.
📌 Section 3 Summary
Flow Designer is ServiceNow's future. You now understand Triggers, Actions, Data Pills, Subflows, and how to build, activate, and debug complete flows. For all new ServiceNow automation, prefer Flow Designer over legacy Workflows.
Record Producer & Order Guides
Advanced catalog tools for creating any type of record and bundling multiple services into one request.
Record Producer
✓ DoneWhat is a Record Producer?
A Record Producer is a special catalog item that, when submitted, creates a record in any ServiceNow table — not just the standard REQ/RITM tables. It allows users to interact with complex back-end tables through a simple, friendly catalog interface.
Record Producer vs. Standard Catalog Item
| Feature | Standard Catalog Item | Record Producer |
|---|---|---|
| Creates | RITM record + optional SCTASKs | Any table record (Incident, Change, Custom) |
| Variables stored in | sc_item_option (separate) | Mapped directly to target table fields |
| Fulfillment via | Workflow / Flow on RITM | Business Rules / Workflows on target table |
| Best for | Service requests with catalog tasks | "Report a problem", Create a Change, Custom records |
| Appears in portal | Yes — Service Catalog | Yes — exactly the same as a regular item |
Step-by-Step: Create a Record Producer
- Navigate to
Service Catalog > Catalog Definitions > Record Producers. - Click New.
- Enter a Name (e.g., "Report a Network Issue").
- Set the Table — this is where the new record will be created (e.g.,
incident). - Add a Category so users can find it in the catalog.
- Add Variables — the form fields users fill in (same as a regular catalog item).
- Write the Script to map variables to target table fields (see below).
- Optionally add a Redirect URL to send users to the created record after submission.
- Submit and test.
The Mapping Script — Theory & Examples
The Script field runs server-side after form submission. The producer object holds variable values; the current object is the new record being created.
// Map variable answers to Incident fields
current.short_description = producer.issue_description;
current.urgency = producer.urgency_level;
current.description = producer.detailed_description;
// Set static values
current.category = 'network';
current.assignment_group.setDisplayValue('Network Team');
// Map the caller to the currently logged-in user
current.caller_id = gs.getUserID();
producer.redirect = current.getLink(); at the end of your script to redirect users to the newly created record after submission — this dramatically improves the user experience.🧪 Knowledge Check
Order Guides
✓ DoneWhat is an Order Guide?
An Order Guide is a bundled catalog experience that presents multiple catalog items in a single, wizard-like request flow. When submitted, it creates one REQ containing multiple RITMs — each with its own workflow running independently. This is ideal for complex, multi-team onboarding or provisioning scenarios.
Order Guide vs. Standard Catalog Item
| Feature | Standard Item | Order Guide |
|---|---|---|
| Creates | 1 RITM | 1 REQ with multiple RITMs |
| Fulfillment | Single workflow | Multiple parallel workflows |
| User experience | Single form | Multi-step wizard |
| Best for | Single service request | Onboarding, office moves, project setups |
| Conditional items | Via UI Policies | Via Rule Bases |
Step-by-Step: Create an Order Guide
- Navigate to
Service Catalog > Catalog Definitions > Order Guides. - Click New.
- Enter a Name (e.g., "New Employee Onboarding Package").
- Add a Short Description and assign a Category.
- Submit to create the guide record.
- Scroll to the Included Items related list and click New.
- Search for and select each catalog item to include (e.g., "Request Laptop", "Create Email Account", "Issue Badge").
- For each item, set whether it is Mandatory (user cannot deselect) or optional.
- Click Try It (top right) to preview the wizard as an end user would see it.
Rule Bases — Conditional Item Inclusion
Rule Bases allow items in an Order Guide to appear or be hidden conditionally based on earlier answers — creating a dynamic, personalised wizard experience.
- On the Order Guide record, scroll to the Rule Bases related list.
- Click New.
- Write a Script condition (e.g.,
producer.computer_type == "mac"). - Link this rule to a specific Included Item — the item will only appear when the rule evaluates to true.
- Test by submitting different variable combinations in the preview.
📌 Section 4 Summary
Record Producers let you create any ServiceNow record through the Service Catalog using a friendly form and a mapping script. Order Guides bundle multiple items into one wizard experience with conditional logic via Rule Bases. Together, they complete your Service Catalog toolkit.