> ## Documentation Index
> Fetch the complete documentation index at: https://kb.mspprocess.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Setting Up Client Portal Ticket Templates (with Conditional Logic)

> OverviewTicket Templates control what your end-users see and select when they submit a ticket through the Client Portal. Templates can be scoped to specific…

## Overview

Ticket Templates control what your end-users see and select when they submit a ticket through the Client Portal. Templates can be scoped to specific clients or tags, as well as pre-set ticket properties, and include branching (conditional) question logic so end-users only see the questions relevant to their answers. This branching structure keeps end-user forms short and relevant, reducing noise for the end-user while still capturing all the structured data needed on the back end.

This article walks through how to build a template, how the conditional/branching logic works, and what the end user actually experiences when submitting a ticket.

##

## Part 1: Creating a New Ticket Template

1. Log in to **MSP Process**.
2. Navigate to **AI Service Desk > Client Portal > Ticket Templates**.
3. Click **Create New.**
4. This opens the template setup wizard.

###

### Basic Setup

On the first screen of the wizard, fill in:

1. **Ticket Template Name** – Internal name, visible only within MSP Process (used for admin identification).
2. **Ticket Title** – The name end-users will see when selecting this form in the Client Portal.
3. **Client Portals:** Select which client portals can see this template. Leave this field blank to make the template available to all clients.
4. **Tags:** Optionally add tags to restrict visibility further
5. For example, showing a template only to users tagged **HR** or **Managers**.
6. **Ticket Properties**
7. Select the **ticket properties** that should be automatically applied when a ticket is created from this template (e.g., priority, queue, category).
8. Please review more information about Ticket Properties in the [Configuring Ticket Properties for SMS-sourced Tickets](https://kb.mspprocess.com/msp-process/settings/psa-integrations/connectwise/configuring-ticket-properties-for-sms-sourced-tickets.md) KB.
9. ![](https://mintcdn.com/triggr/o9r5jEtjdR2oUtiW/images/msp-process-kb/c8261f03b74a.png?fit=max\&auto=format\&n=o9r5jEtjdR2oUtiW\&q=85\&s=701f40998c92c51f07eba33ace97c02e)

### Additional Options

1. **Prompt user to associate ticket with a configured item**

2.

3. **One question per page (wizard mode)**

4. Enable this checkbox to display each question on its own page/step rather than all at once.

##

## Part 2: Adding Questions and Conditional Logic

1. Click **Add Questions**, then **Add Question** to begin building the form.
2. Question Types Available
3. Title
4. Text Field
5. Single Checkbox
6. Multiple Checkboxes
7. Radio Group
8. Question

**NOTE:** With each Question that you ask in the template, you can select whether a response is required or not. If you want an answer to be required, you can click the required checkbox next to your question.

### How Conditional/Branching Logic Works

Branching logic allows an answer to a single question to determine which follow-up question the end-user will see next. The form will adapt in real time instead of showing every question to every user.

**Example used in this walkthrough:**

Question 1: *"Do you have a dog?"* — set up as a Radio Group with options: **Dog / Cat / Other**

Based on the option selected, the template routes to a different next question:

1. Select **Dog** → routes to Question 2 (size) and Question 3 (breed)
2. Select **Cat** → routes to Question 4 (breed of cat)
3. Select **Other** → routes to Question 5 (what other pet)

| ![](https://mintcdn.com/triggr/2kaOQdWPjLF3xX8p/images/msp-process-kb/0f7700c1d7e3.png?fit=max\&auto=format\&n=2kaOQdWPjLF3xX8p\&q=85\&s=684f0eb94e27fee63940ef39810b2903) |
| - |
| ![](https://mintcdn.com/triggr/qgn0c5cLkGKqcauq/images/msp-process-kb/8fe96f5bcd4c.png?fit=max\&auto=format\&n=qgn0c5cLkGKqcauq\&q=85\&s=2bf6a148d8c19fa4536ad553272f1b81) ![](https://mintcdn.com/triggr/qgn0c5cLkGKqcauq/images/msp-process-kb/90d2d96f0cb2.png?fit=max\&auto=format\&n=qgn0c5cLkGKqcauq\&q=85\&s=6fb3b69bd1ee764d415157638b2678f1) |
| ![](https://mintcdn.com/triggr/o9r5jEtjdR2oUtiW/images/msp-process-kb/e62c6f847fd3.png?fit=max\&auto=format\&n=o9r5jEtjdR2oUtiW\&q=85\&s=389eedf400051c505457b21b950af4de) |

Each question in the chain is built off the branching logic of the question before it — so you're essentially building a decision tree, one branch at a time. Every answer option on a question can point to a different next question (or set of questions), and those questions can have their own branches going even deeper if needed.

**Key takeaway:** conditional logic is set at the individual answer-option level, not the whole question. Each option (Dog / Cat / Other) gets its own routing rule.

###

### Finishing the Template

1. Once all questions and branches are configured, click **Next**.
2. You'll see a **preview** of the full question set as configured.
3. Click **Submit** to save and publish the template.

![](https://mintcdn.com/triggr/-njaXAnAb5AWpJCy/images/msp-process-kb/756a505d39b0.png?fit=max\&auto=format\&n=-njaXAnAb5AWpJCy\&q=85\&s=78b66aa68be5b41168d9c0d4f0c73dbf)

##

## Part 3: The End-User Experience (Client Portal)

Here's what happens on the client side once the template is live:

1. The end user logs into the **Client Portal** and clicks **Create New Ticket**.
2. They select the form/template by its **Ticket Title** (the name set earlier in the wizard).
3. If **one question per page** was enabled, each question appears as its own step.

**Walking through the example template:**

1. The user is asked: *"Do you have a pet?"*
2. If they select **Dog** → they're prompted for **size of dog**, then **breed of dog** → then **Review**.
3. If they select **Cat** → they're prompted for **breed of cat** → then **Review**.
4. If they select **Other** → they're prompted for **what other pet** they have → then **Review**.

| ![](https://mintcdn.com/triggr/2kaOQdWPjLF3xX8p/images/msp-process-kb/17d2d6d622d9.webp?fit=max\&auto=format\&n=2kaOQdWPjLF3xX8p\&q=85\&s=c4f1b865884e16f7f3d55bddec997abf) | | | |
| - | - | - | - |
| Dog | ![](https://mintcdn.com/triggr/dXDzJtUmPBaHtkPV/images/msp-process-kb/f49056c1fd4a.png?fit=max\&auto=format\&n=dXDzJtUmPBaHtkPV\&q=85\&s=d0c0cdca940d0e6363ebc0a780c9b74a) | ![](https://mintcdn.com/triggr/qgn0c5cLkGKqcauq/images/msp-process-kb/9236fbca0615.png?fit=max\&auto=format\&n=qgn0c5cLkGKqcauq\&q=85\&s=f73de0588e0ae3ea8df8207d688ad48b) | ![](https://mintcdn.com/triggr/dXDzJtUmPBaHtkPV/images/msp-process-kb/f6f83b2a33f1.png?fit=max\&auto=format\&n=dXDzJtUmPBaHtkPV\&q=85\&s=970e42abaa53f776b207826d1cb93806) |
| Cat | ![](https://mintcdn.com/triggr/dXDzJtUmPBaHtkPV/images/msp-process-kb/ecca67da29cb.png?fit=max\&auto=format\&n=dXDzJtUmPBaHtkPV\&q=85\&s=d1ed6fcdf348a53f63859edddf8009f4) | | |
| Other | ![](https://mintcdn.com/triggr/qgn0c5cLkGKqcauq/images/msp-process-kb/7976a5919ee8.webp?fit=max\&auto=format\&n=qgn0c5cLkGKqcauq\&q=85\&s=7a4707afae9c918d2b67dcbdd847967a) | | |

At the end of the flow, the user reaches a **Review** screen showing all the answers they provided before final submission.

Due to the branching logic, the end-user will only ever sees the questions relevant to their own path.

Example below: Those who selected Dog will never see cat-breed questions, and vice versa.

![](https://mintcdn.com/triggr/2kaOQdWPjLF3xX8p/images/msp-process-kb/07cff99a591e.webp?fit=max\&auto=format\&n=2kaOQdWPjLF3xX8p\&q=85\&s=aa99fadc2613c081bdb1195e3d1b8281)

If you should experience an issues or have any questions, please reach out to our support. You can view different ways to reach out [here](https://kb.mspprocess.com/msp-process/how-to-articles/how-to-contact-support.md).

\------------------------------------------------

Additionally, our Ticket templates setup now offers an option to build your questions using AI, Graph view, or import from JSON.

![](https://mintcdn.com/triggr/2kaOQdWPjLF3xX8p/images/msp-process-kb/329a0699a8a5.webp?fit=max\&auto=format\&n=2kaOQdWPjLF3xX8p\&q=85\&s=46ab02042845d6bb3bca43c17760e49b)

To build your question set via AI, click the **Draft with AI** button. Here is an example for creating a custom computer.

![](https://mintcdn.com/triggr/o9r5jEtjdR2oUtiW/images/msp-process-kb/e32178b03de5.png?fit=max\&auto=format\&n=o9r5jEtjdR2oUtiW\&q=85\&s=3a9e78faa2742264267f07c106ff19f0)

You can review the question set by clicking "Review" and if needed, request the AI to adjust the questions or apply the changes to your questions.

**Using Graph View**

Using the Graph view, you can adjust your question order by drawing and dragging questions into an order which makes sense.

![](https://mintcdn.com/triggr/o9r5jEtjdR2oUtiW/images/msp-process-kb/df27009ba747.png?fit=max\&auto=format\&n=o9r5jEtjdR2oUtiW\&q=85\&s=a6c2c1d4ab5dac29db82c774beb53637)

You can drag lines between portions of a question's answers or an entire question. these lines represent conditional format rules for questions and their applicable follow ups.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.