# Permit Management - ParkAdmin

**OperationsCommander works hard to maintain an up to date product wiki! If you have any questions or if you feel something is missing,** [**post about it in the community.**](https://community.ops-com.com/c/product-support/6)

# Permit Search

<p class="callout info">This article describes the Permit Search tool, a central hub for finding, managing, and reporting on all parking permits. Its primary purpose is to provide administrators with detailed search capabilities and a suite of actions for managing permit visibility, user assignments, and communications. This guide is intended for OPSCOM administrators.</p>

### Using this Feature

This tool is a standard administrative feature and does not require any specific configuration. It utilizes the existing permit and user data within the system. The Permit Search page allows you to find specific groups of permits and then perform a variety of bulk and individual management actions.

##### <span style="text-decoration: underline;">Performing a Permit Search</span>

1. Go to **Permit Management** and click **Permit Search**.
2. Enter your desired criteria in the search fields.
3. Optionally, enable the **Archived Permit Data** or **Include Only Active Permits** checkboxes to refine your search.
4. Click the **Toggle More Options** button to reveal additional search filters that can be pinned to your default view.
5. Click the **Retrieve** button to generate the results.

##### <span style="text-decoration: underline;">Understanding the Permit Counts Legend </span>

At the top of the search results, a legend provides a quick overview of the permits found:

- **Total**: Total number of permits found by your search criteria.
- **Requested**: A user is associated with the permit, but no payment has been initiated.
- **Rented/Reserved**: A payment is associated with the permit, but it may not be fully processed yet.
- **Visible To User**: The permit is available for purchase and has no user associated with it.
- **Visible to Admins**: The permit is hidden from users and has no user associated with it.
- **Unavailable**: The permit's state is not set to Good, Valid, or Usable.

##### <span style="text-decoration: underline;">Performing Bulk Actions and Reports</span>

- From the drop-down menu at the top of the results, select a report or action to apply to all permits in the list.
- Click the **Perform Selected Action** button to proceed.
- Available actions include: **Generate Mailing List**, **Generate User Usage Report**, **Send Email to Permit Users**, **Generate Status Report**, and **Generate Permits for Printing**.

##### <span style="text-decoration: underline;">Managing Individual Permits in the Results List</span>

- **Permit Number**: Click the link in this column to open the **Parking Permit Information** screen, where you can manage the **Permit State** and view associated user and payment details.
- **Clock Icon (History)**: Click this icon to view the permit's complete transaction and user rental history.
- **Reserved/Rented**: Click the user's name in this column to view their details, with links to their profile or to send an email.
- **Toggle Availability**: Use the checkbox in this column to control if a permit is visible to users for purchase. Use the **Mark all Available** or **Mark all Not Available** buttons for bulk changes, then click **Update Records** to save.
- **Release**: Click this link to disassociate the permit from its current user, making it available for resale.
- **Switch**: Click this link to change the permit number assoc<span class="citation-769 citation-end-769">iated with the current user.<sup class="superscript" data-turn-source-index="1"></sup></span>
    
    <div _ngcontent-ng-c1914962545="" class="source-inline-chip-container ng-star-inserted"></div>

---

### <span style="color: rgb(22, 145, 121);"></span><span style="color: rgb(22, 145, 121);"><span class="citation-768 citation-end-768">Best Practices &amp; Considerations<sup class="superscript" data-turn-source-index="2"></sup></span></span>

<div _ngcontent-ng-c1914962545="" class="source-inline-chip-container ng-star-inserted" id="bkmrk--1"><span style="color: rgb(22, 145, 121);"></span></div>- <span style="color: rgb(22, 145, 121);">**Releasing a permit does not automatically refund the user.** This action only disassociates the permit from the user. If a refund is required, you must also perform a separate *financial adjustment*.</span>
- <span style="color: rgb(22, 145, 121);">**Understand the difference between permit statuses:** **Requested** means a user has selected an item but has not yet chosen a payment method. **Reserved** means there is an associated unprocessed payment (promise to pay, e.g., cheque). **Rented** means the payment is processed.</span>
- <span style="color: rgb(22, 145, 121);">**Use the Toggle More Options button to pin frequently used search filters** to your default view. This saves time and customizes the search page to your workflow.</span>

# New Page



# Permit Switch

<p class="callout info">This article describes the administrative tool for performing permit switches and moves. This feature provides two distinct functions: swapping permit assignments between two permits, and moving a permit from one user to another. This tool is essential for managing changes in user parking assignments or handling permit transfers. This guide is intended for OPSCOM administrators.</p>

### Using this Feature

The tool offers two primary functions which are detailed below. This feature is a standard administrative tool and does not require any specific configuration to use. Its functionality relies on existing user and permit data.

##### <span style="text-decoration: underline;">Swapping Permits </span>

This process is used to exchange permit assignments. This can be between two users, or for moving one user to a different, vacant permit.

- Select the lot and permit number for the first permit in the **Current Permit** fields.
- Select the lot and permit number for the second permit in the **New Permit Lot** fields. Permits already assigned to other users will be highlighted and display the owner's name.
- Click the **Switch two permits** button.
- On the confirmation screen, review the price difference and select either the **Full Price** or **Prorated Price** radio button.
- Enter a mandatory **Reason for Action**.
- Click the **Switch User Permit** button to finalize the swap.

##### <span style="text-decoration: underline;">Moving a Permit from One User to Another</span>

This process transfers ownership of a specific permit from one user to another.

- In the first user search field, find and **Select** the user who currently holds the permit. A list of their assigned permits will be displayed.
- Select the permit you wish to move. A second user search field will appear.
- In the second search field, find the user who will be receiving the permit.
- Click the **Move Permit** button.
- Click **Ok** in the confirmation dialog to finalize the t<span class="citation-93 citation-end-93">ransfer.<sup class="superscript" data-turn-source-index="1"></sup></span>
    
    <div _ngcontent-ng-c1390479486="" class="source-inline-chip-container ng-star-inserted"></div>

### <span style="color: rgb(22, 145, 121);"><span class="citation-92 citation-end-92">Best Practices &amp; Considerations<sup class="superscript" data-turn-source-index="2"></sup></span></span>

<div _ngcontent-ng-c1390479486="" class="source-inline-chip-container ng-star-inserted" id="bkmrk-"><span style="color: rgb(22, 145, 121);"></span></div>- <span style="color: rgb(22, 145, 121);">**Moving a permit from one user to another does not transfer any associated invoices.** The original user remains responsible for any outstanding payments on their account.</span>
- <span style="color: rgb(22, 145, 121);">When swapping permits with different values, **the system automatically calculates the price difference**, both at full and prorated rates. This difference will be applied as a charge or credit to the user's account upon confirmation.</span>
- <span style="color: rgb(22, 145, 121);">**Always enter a clear and concise Reason for Action when performing a switch.** This creates an important audit trail that can be reviewed in the permit's history, explaining why the administrative change was made.</span>

# Awaiting Payment - Permits

<p class="callout info">This article describes the Permits Awaiting Payment report, a tool used to manage and communicate with users who have pending permit payments. Its primary purpose is to provide administrators with a centralized view of unpaid permit reservations and offer tools for sending payment reminders and processing payments. This guide is intended for OPSCOM administrators.</p>

### Using this Feature

The report allows administrators to filter for users with outstanding permit payments and provides several tools for communication and management. This report is a standard feature of the permit management module and does not require any specific configuration. It automatically displays data based on user permit reservations and their payment status.

##### <span style="text-decoration: underline;">Generating the Report</span>

1. Hover over **Permit Management** and click **Awaiting Payment**.
2. The **Permits Awaiting Payment** screen will load, displaying all users with pending payments.
3. Optionally, select a specific lot from the drop-down menu at the top of the page to filter the list.

##### <span style="text-decoration: underline;">Available Actions and Buttons</span>

- **Email Listed**: Click this button to send a single, bulk email to all users displayed in the list. A pop-up will allow you to compose a message and add attachments.
- **Export and Print**: Use the **Excel**, **CSV**, **PDF**, **Copy**, and **Print** buttons to export or print the current report data.
- **Envelope Icon**: Click this icon in a user's row to send an email to that individual user.
- **Profile Icon**: Click this icon to navigate directly to the user's profile page.
- **Permit Number**: Click the link in this column to view or edit the permit's details and process any associated payments.

---

### <span style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Use the Email Listed button to send bulk payment reminders** to all users on the report. This is an efficient way to prompt users to complete their purchases.</span>
- <span style="color: rgb(22, 145, 121);">This report specifically targets users who have a 'promise to pay' on file (such as a pending cheque or payroll deduction) but whose payment has not yet been processed. It is a key tool for managing non-credit card transactions.</span>
- <span style="color: rgb(22, 145, 121);">You are encouraged to run this report **weekly** and send an **email reminder** for users to remit payment.</span>

# Using the Basic Waitlist Report

<p class="callout info">The **Basic Waitlist Report** provides OPSCOM administrators with a centralized view of all users currently on waitlists, organized by parking lot. This report is a crucial tool for managing demand, enabling easy access to user profiles, facilitating communication, and streamlining the process of offering permits to waitlisted individuals.</p>

### Setup &amp; Configuration

Before users can join a waitlist or their data appears in this report, waitlist functionality must be properly configured within your OPSCOM system.

##### <span style="text-decoration: underline;">Admin Side</span>

- **Enabling Waitlists for Lots**: Instructions for enabling waitlists for specific lots can be found on the [**Pricing &amp; Lot Admin**](https://opscom.wiki/books/the-opscom-admin-portal/page/pricing-and-lot-admin) page, under the **Standard Permits** section. Waitlists can be set up for individual lots or configured as grouped waitlists that cover multiple locations.
- **"Only Allow Waitlist after lot is Full" Setting**: This setting determines whether users will see the option to join a waitlist even before all permits for a designated lot are sold out, or only once the lot reaches full capacity.

##### <span style="text-decoration: underline;">User Portal</span>

You can configure the option to allow users to see their rank on the waitlist or not. To do this, follow the steps below:

1. Hover over **System Configuration** and click **System Settings**.
2. On the **Permits** tab, find and enable the **Show Waitlist Rank** checkbox.
3. Refer to [this page to see the User Experience](https://opscom.wiki/books/OPSCOM-user-portal/page/viewing-your-waitlist-position).

### Using the Basic Waitlist Report

1. Hover over **Permits,** then **Waitlists,** and click **Waitlist Report**.
2. On the **Waitlist Report** screen, Administrators can view/edit details about a user waiting to purchase a permit in a specific lot.
3. This screen allows the admin to quickly see:
    
    
    - The user's Rank on the waitlist
    - The date they were added to the waitlist
    - The user's name
    - Their user type
    - Their city
    - Phone Number
    - Comments
    - The lot they are waiting for a permit in

<p class="callout warning">If the record is highlighted in <span style="color: rgb(53, 152, 219);">**blue**</span>, the user does not currently have a permit assigned to them.   
If the record is highlighted in <span style="color: rgb(241, 196, 15);">**yellow**</span>, the user does currently have a permit assigned but has not yet purchased it. </p>

### Available Actions &amp; Buttons

- The **User Profile icon** allows administrators to view and edit the user's profile. This is also the primary link administrators would use if they wanted to **sell a permit** to the user who is on the waitlist (click the **User Profile** icon and then the **Parking Tab** within their profile).
- The **Add button** allows administrators to add comments specific to the waitlist record. If a comment already exists, an **edit link** will appear, allowing administrators to update the comments on file.
- The **Toggle Selections** button allows administrators to select all records displayed in the report simultaneously. You can also make individual record selections by enabling the checkbox to the left of each record.
- The **Export to Excel** button exports the entire table as an Excel spreadsheet for further analysis or record-keeping.

---

### <span style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Develop Business Rules**: Organizations should establish clear business rules for when to remove a user from the waitlist, such as after a user has been emailed an offer, or after a permit has been successfully purchased and processed.</span>
- <span style="color: rgb(22, 145, 121);">**Proactive Management**: Regularly review the Waitlist Report to identify users who are next in line and to manage available permits efficiently.</span>
- <span style="color: rgb(22, 145, 121);">**Communication**: Use the report to facilitate communication with waitlisted users, either individually or in bulk (using the export function for email lists, for example).</span>
- <span style="color: rgb(22, 145, 121);">**User Experience**: If `Show Waitlist Rank` is enabled, ensure users understand what their rank means and how it might change.</span>

# Managed Waitlist

<p class="callout info">The OPSCOM Managed Waitlist system automates the process of assigning available permits to waitlisted users. When a permit becomes available, the system reserves it, notifies designated administrators, and allows them to assign it to a user, who then has a specific timeframe to complete the purchase before the permit is released back to the waitlist.</p>

### Setup &amp; Configuration

1. Hover over **System Configuration** and click **System Settings**.
2. Click the **Permits** tab.
3. Find and enable the **Enable Managed Waitlist** checkbox.
4. Enter admin emails into the **Waitlist Email Managers** field. Multiple email addresses can be separated by commas. These email addresses will be notified when a permit becomes available for waitlisted users.
5. Enter the amount of time that is being given to users to purchase permits in the **Waitlist Reservation Duration** box. This value is measured in days.

<p class="callout warning">Enabling the Managed Waitlist setting makes the core waitlist system active, but you must still enable waitlists on individual lots for them to be used.</p>

##### <span style="text-decoration: underline;">Enabling Waitlists on Individual Lots</span>

- **Enabling Waitlists for Lots**: Instructions for enabling waitlists for specific lots can be found on the [**Pricing &amp; Lot Admin**](https://opscom.wiki/books/the-opscom-admin-portal/page/pricing-and-lot-admin) page, under the **Standard Permits** section. Waitlists can be set up for individual lots or configured as grouped waitlists that cover multiple locations.
- **"Only Allow Waitlist after lot is Full" Setting**: This setting determines whether users will see the option to join a waitlist even before all permits for a designated lot are sold out, or only once the lot reaches full capacity.

##### <span style="text-decoration: underline;">User Side Setup and Experience</span>

You can configure the option to allow users to see their rank on the waitlist or not. To do this, follow the steps below:

1. Hover over **System Configuration** and click **System Settings**.
2. On the **Permits** tab, find and enable the **Show Waitlist Rank** checkbox.
3. Refer to [this page to see the User Experience](https://opscom.wiki/books/OPSCOM-user-portal/page/viewing-your-waitlist-position).

The Managed Waitlist emails sent to users now include both the purchase deadline **date and time** to prevent users from losing their spot.

##### <span style="text-decoration: underline;">Waitlist Email Templates</span>

There is a standard email template you can configure for communicating with your users. To learn more about working with email templates, [refer to this wiki article](https://opscom.wiki/books/setup-configuration-for-admins/page/email-templates).

### Working with the Managed Waitlist

##### <span style="text-decoration: underline;">Assigning a User a Permit from the Waitlist</span>

When a permit becomes available in a lot with a waitlist the admin will be notified via the email address that was setup for **Waitlist Email Managers**. The permit will be reserved for assignment to users on the waitlist.

To assign the permit to a specific person on the waitlist, follow the instructions below.

1. Go to **Parking Management,** then **Waitlists,** and click **Waitlist**.
2. On the **Waitlist** screen, select **Assign** to associate the selected user to the permit you wish them to have.

##### <span style="text-decoration: underline;">Releasing or Extending an Assigned Permit</span>

If the amount of time you set in the **Waitlist Reservation Duration** passes and the user hasn't purchased a permit, the admin will be sent an email. The admin has the option to **Release** the permit, so that it can be assigned again or to **Extend** the users time to pay for the permit. To do this:

1. Return to the **Waitlist** page, and select the Permit icon beside the username.
2. From the **Parking Permit Information** page, select **Release Permit** or click **Extend** to add 10 more days.

### Additional Waitlist Management Actions

- The **Remove Selected From Waitlist** button allows administrators to remove individual or multiple records from the waitlist.
- The **Email All Listed Users** button allows administrators to send a single email message to all users currently displayed in the table.
- The **Email Selected Users** button allows administrators to send an email only to those users they have individually selected.
- The **Export to Excel** button exports the entire waitlist table as an Excel spreadsheet for further analysis or external use.

---

### <span style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Clear Communication**: Customize the **Waitlist Selected** email template to clearly inform users about the permit offer, the purchase deadline, and next steps.</span>
- <span style="color: rgb(22, 145, 121);">**Defined Process**: Establish internal procedures for managing permit offers, extensions, and removals from the waitlist to ensure consistency and fairness.</span>
- <span style="color: rgb(22, 145, 121);">**Monitor Email Managers**: Ensure the email addresses in **Waitlist Email Managers** are actively monitored by the appropriate staff to facilitate prompt assignment and follow-up.</span>
- <span style="color: rgb(22, 145, 121);">**Waitlist Reservation Duration**: Set a realistic and fair reservation duration, balancing user convenience with the need to quickly reassign permits if offers are not taken up.</span>
- <span style="color: rgb(22, 145, 121);">**Leverage Reporting**: Use the **Waitlist Report** and export features to analyze demand, identify trends, and refine your permit allocation strategies.</span>

# Setting Permit State for a Lost or Stolen Permit

<p class="callout info">This article describes the process for managing a lost or stolen permit. This involves switching the user to a new permit and then setting the state of the original permit to **Lost** or **Stolen** to remove it from circulation.</p>

### Understanding the Lost or Stolen State

Setting a permit's state to **Lost** or **Stolen** will immediately remove it from active circulation. The permit will no longer be available for:

- Purchase or assignment from the Admin Portal
- Purchase from the User Portal
- Selection within the Permit Switching tool

### Using this Feature

<div _ngcontent-ng-c1390479486="" class="source-inline-chip-container ng-star-inserted" id="bkmrk-"></div>You **must** switch the user to a new permit *before* setting the old permit's state to **Lost** or **Stolen**. Failing to do so will make the old permit unavailable for the switch process. No specific system configuration is required for this process. It utilizes the standard **Quick Search** and permit management tools.

This process is divided into **two distinct parts**: first switching the user to a ne<span class="citation-133 citation-end-133">w permit, and then deactivating the old one.</span>

<div class="confluence-information-macro confluence-information-macro-warning" id="bkmrk--1"><div _ngcontent-ng-c1390479486="" class="source-inline-chip-container ng-star-inserted"></div></div>##### <span style="text-decoration: underline;">Section 1: Switching the User to a New Permit</span>

- Use the **Quick Search** bar to find the permit number that has been reported lost (e.g. PW21).
- From the search results, click the **Switch** button.
- On the permit switch screen, the user's current permit will appear on the left. On the right, use the drop-down menu to select a new, available permit for the user (e.g., PW19).
- Click the **Switch Permits** button to complete the change. A pop-up notice will confirm the switch is complete.

##### <span style="text-decoration: underline;">Setting the Old Permit State to Lost</span>

- Use the **Quick Search** bar again to find the original permit number (PW21).
- From the search results, click the permit number link to open the permit details page.
- Click the **Permit States** drop-down menu and select **Lost** or **Stolen**.
- The system will confirm the update. The old permit is now officially out of circulation and will no longer appear in available permit lists.

---

### <span style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations</span>

- <span style="color: rgb(22, 145, 121);">During busy sales periods, **consider temporarily hiding the new permit** you plan to switch the user into. This prevents another user from purchasing it during the brief moment it is being processed.</span>
- <span style="color: rgb(22, 145, 121);">The **Lost** or **Stolen** state is reversible. If a permit is found, you can navigate back to its details page and change its state back to an active one.</span>


<div class="rich-media-item mediaSingleView-content-wrap image-center cc-1d53ezb" data-layout="center" data-node-type="mediaSingle" data-renderer-start-pos="2910" data-width="760" data-width-type="pixel" id="bkmrk--3"></div>

# Altering the Price of Unpaid Standard Permits

<p class="callout info">This article describes the process for editing the cost of an unpaid standard permit for a specific user. This feature allows administrators with the proper permissions to make one-time price adjustments for a single transaction without affecting the permit's default price for other users. </p>

### Setup &amp; Configuration

For an administrator to use this feature, their user role must have the **Edit Unpaid Permit Cost** permission enabled.

- Go to **System Configuration**, then **Admin Management**, and click **Manage Roles**.
- Select the administrator role you wish to modify.
- Go to the permissions list for that role.
- Locate and enable the **Edit Unpaid Permit Cost** checkbox.
- Save the changes to the role.

### Using this Feature

Once the permission is enabled, the price of an unpaid permit can be changed from two different locations in the Admin Portal.

##### <span style="text-decoration: underline;">Editing During Permit Reservation</span>

- While booking a permit for a user, click the **edit cost** button that appears next to the permit price.
- In the fields that appear, enter the new price and a comment explaining the reason for the change.
- Proceed with booking the permit as normal. The adjusted price will be reflected in the user's cart.

##### <span style="text-decoration: underline;">Editing from the Permit Information Page</span>

- For a permit that is already in a user's cart but remains unpaid, navigate to the cart and click the permit name link to open the **Permit Info Page**.
- Click the **edit cost** button.
- Enter the new price and a comment.
- Click the **Update Permit** button to save the change.

**Viewing Price Change History** All changes made to a permit's price are logged for auditing purposes. You can view these changes in the user's profile under the **Recent History** and **Standard Permit History** sections. Any comments entered during the price change will also be visible in the notes on the **Permit In<span class="citation-160">fo Page</span>**<span class="citation-160 citation-end-160">.<sup class="superscript" data-turn-source-index="1"></sup></span>

<div _ngcontent-ng-c1390479486="" class="source-inline-chip-container ng-star-inserted" id="bkmrk-"></div>
---

### <span class="citation-159 citation-end-159" style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations<sup class="superscript" data-turn-source-index="2"></sup></span>

- <span style="color: rgb(22, 145, 121);">**This feature only affects unpaid permits.** Once a payment has been processed, the price cannot be changed using this tool. Any adjustments for paid permits must be handled through a separate *financial adjustment*.</span>
- <span style="color: rgb(22, 145, 121);">**Always enter a clear and specific comment** when changing a permit price. This provides an essential audit trail for other administrators and for resolving any future billing questions.</span>

# Selling Permits Using Tablet Kiosks with OPSCOM

<p class="callout info">This article provides instructions on how to configure a tablet to act as a dedicated self-service kiosk for selling temporary guest permits. By locking the tablet to a specific guest permit booking page, organizations can offer a streamlined way for visitors to purchase parking without staff assistance or the need for a personal user account.</p>

### Setup and Configuration

Setting up a kiosk involves three main parts: obtaining the unique booking link for the desired parking lot, enabling Kiosk Compatible Mode within OPSCOM, and configuring the physical tablet device to lock it to the booking page.

#### Part One - Obtain the Guest Permit Link

Each lot configured for temporary permits has a unique URL for guest bookings. You will need this link to set up the kiosk.

- Go to **Parking Management**, then **Lot Administration**, and click **Pricing &amp; Lot Admin**.
- Click the name of the lot you want to feature on the kiosk.
- Select the **Temporary Permits** tab.
- Locate the QR code section. The guest permit booking link is displayed directly below the code.
- Copy this URL to use in the tablet configuration step.

##### **The lot must be properly configured to sell temporary permits. Detailed instructions can be found on the [*Pricing &amp; Lot Admin* page](https://opscom.wiki/books/the-opscom-admin-portal/page/pricing-and-lot-admin). You must set prices in the temporary permit section of the lot editor. If left blank, they will be disabled, and users will not be able to pick it as an option.**

[![image.png](https://opscom.wiki/uploads/images/gallery/2025-09/scaled-1680-/image.png)](https://opscom.wiki/uploads/images/gallery/2025-09/image.png)

In the above ***example***, permits will be available for ***free*** for 2 hours**, ***$5*** for **3 hours**, ***$8*** for **12 hours**, and ***$10*** for **24 hours/1 day**.

#### Part Two - Enable Kiosk Compatible Mode in OPSCOM

This system-wide setting optimizes the guest permit workflow for a kiosk environment.

- Go to **System Configuration**, and click **System Settings**.
- Select the **General System Settings** tab.
- Enable the **Enable Kiosk Compatible Mode** toggle.
- Click **Save Settings**.

Enabling this mode makes the following changes **only to guest booking pages**:

- After a successful transaction, the user is returned to the initial booking page instead of a receipt page, making it ready for the next user.
- The main navigation menu, header, and footer are hidden to prevent users from navigating away or attempting to log in on a public device.

<p class="callout warning">**Warning:** Enabling Kiosk Compatible Mode affects **all** guest permit transactions, not just those from a kiosk. Users purchasing a guest permit via a QR code on their personal device will also be redirected to the start page after payment. We recommend enabling this setting only if you intend to use physical kiosks. </p>

#### Part Three - Configure the Tablet Device (Android)

To function as a kiosk, the tablet must be locked to the guest permit URL using third-party apps and built-in operating system features. The following steps provide one example of how to achieve this on an Android device.

##### <span style="text-decoration: underline;">Step A: Install and Configure a Kiosk Browser App</span>

1. On your Android tablet, open the **Google Play Store** and install a kiosk browser application (e.g., **Fully Kiosk Browser &amp; Lockdown**).
2. Open the app to configure its initial settings.
3. Paste the guest permit link from Part One into the **Start URL** field.
4. Enable **Fullscreen Mode**.
5. Disable **Show Action Bar** and **Show Address Bar**.

<p class="callout success">Explore the app's advanced settings, such as **Web Auto Reload** -&gt; **Auto Reload on Idle**. Setting this to 30 or 60 seconds will automatically reset the page for the next user after a period of inactivity. </p>

##### <span style="text-decoration: underline;">Step B: Pin the Kiosk App</span>

Pinning the app prevents users from closing it and accessing other tablet functions. You can do this in device settings, a separate app.

1. Ensure the tablet has a security PIN or password enabled. This can be set in the device's **Settings** app, typically under **Lock screen**.
2. Navigate to **Settings** -&gt; **Security and privacy** -&gt; **More security settings**.
3. Enable the **Pin app** option.
4. Open the kiosk browser app you just configured.
5. Tap the **recent apps** button (on most devices, this is an icon with three vertical bars at the bottom of the screen).
6. Tap the icon appearing above the kiosk app's window and select **Pin this app**.

The device is now locked into the kiosk browser, and the device's PIN will be required to exit the app.

### Using this Feature

Once fully configured, the tablet functions as a locked-down, single-purpose device.

##### <span style="text-decoration: underline;">End-User Workflow</span>

- A user approaches the tablet, which already displays the permit booking page for the designated lot.
- The user cannot navigate to other apps, web pages, or system settings.
- After entering their plate information and completing payment, a confirmation message appears.
- The page then automatically resets to the start of the booking process for the next user.

---

### <span style="color: rgb(22, 145, 121);">Best Practices and Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Physically secure the device.** Use a commercial-grade tablet enclosure or stand to protect the device from theft and damage in a public environment.</span>
- <span style="color: rgb(22, 145, 121);">**The tablet setup process may vary.** The specific menu names and steps for configuring a tablet can differ based on the device manufacturer, OS version, or the specific kiosk app used. The instructions provided should be treated as a general guide.</span>
- <span style="color: rgb(22, 145, 121);">**Test the entire user flow.** Before deploying the kiosk publicly, perform several test transactions to ensure the process is smooth, payment is successful, and the page resets correctly for the next user.</span>

# QR Code User Experience

<p class="callout info">The **QR Code User Experience** allows parkers to quickly purchase a permit for a specific lot by scanning a physical QR code. This feature provides a streamlined checkout process for **OPS-COM administrators** to offer both guest parkers and registered users, facilitating rapid payments via mobile devices.</p>

---

### Using this Feature

The workflow varies slightly depending on whether the parker is a guest or a logged-in user.

#### Guest Checkout

- Tap the QR code link or scan the physical code using a mobile device camera.
- Tap the **Accept** button when prompted by the **Guest Disclaimer**.
- Enter the vehicle information in the **Vehicle Plate** field.
- Tap the **Duration** drop-down menu and select the length of stay.
- Tap the **Payment Method** drop-down menu and choose the supported provider.
- Tap **Make Payment** after entering credit card details on the secure payment page.

#### Registered User Checkout (Accelerated)

- Tap the QR code link or scan the code while logged into the **User Portal**. (could be in a closed tab, as long as your session is still active.)
- Review the pre-populated vehicle and payment information retrieved from your stored account details.
- Tap the **Duration** drop-down menu to choose your stay length.
- Tap the **Make Payment** button to complete the transaction instantly using stored tokens from the payment processor.

<p class="callout info">Logged-in users experience a significantly faster checkout as the system automatically pulls stored **Vehicle Plates** and **Payment Profiles**, removing the need for manual data entry.</p>

#### Key Information Displayed

- **Lot Selection**: Since the QR code is lot-specific, the lot is pre-selected and displayed at the top of the page.
- **Transaction Record**: An on-screen confirmation appears immediately following a successful payment.
- **User Receipt**: A receipt is automatically generated and sent to the user's registered email address (or the one they are required to enter on checkout, as a guest user.

---

### <span style="color: rgb(22, 145, 121);">Best Practices and Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Encourage user registration** to allow parkers to take advantage of the accelerated checkout, which reduces friction and improves compliance.</span>
- <span style="color: rgb(22, 145, 121);">**Verify physical signage** regularly to ensure QR codes are legible and linked to the correct, active lot in the system.</span>
- <span style="color: rgb(22, 145, 121);">**Business Rules**: Organizations should establish a policy for managing guest refunds, as these transactions are not tied to a permanent user profile in the same way as registered accounts.</span>

# Real-Time Parking Map

<p class="callout info">This article describes the setup and use of the Real-Time Parking Map. This feature provides a publicly accessible, interactive map displaying real-time lot availability, allowing users to find parking and purchase temporary permits directly. </p>

### Setup &amp; Configuration

Setting up the map requires creating a public-facing page and then configuring each lot that you want to display on that map.

First, to have this enabled, you will need to contact an OPSCOM support staff member, and have them enable it on your production system.

##### <span style="text-decoration: underline;">Step 1: Adding the Map to any page in OPSCOM</span>

A Map page is now provided by default, at this link: `<strong>[CLIENT NAME].ops-com.com/u/#/realtimemodal</strong>`

**If you would like to display the map on any other system messaging pages, such as the user login screen, or anywhere else, follow the instructions below;**

- Navigate to **System Configuration,** then **Content &amp; Designs** and click **Pages and Content Blocks.**
- Create a new page **(or edit an existing one)** that will host the map.
- In the content area of this page, add the following two shortcodes, each on its own line:
    
    
    - `[real-time-map]`
    - `[real-time-legend]`

##### <span style="text-decoration: underline;">Step 2: Configure Individual Lots </span>

For each lot you want to display on the map, you must configure the following settings.

First, go to [Pricing and Lot Admin](https://tomahawku.test-admin.ops-com.com/admin/config/permits/lot/14/edit).

- **In the Zones and Location tab:**
    
    
    - Select the lot and set a map marker.
    - Enter a public-facing description in the **Location** field.
- **Now that you have set a map marker and location;**
    
    
    - Go to the **Temporary Parking** tab.
    - Set the **Maximum number of Temp Permits**, a 30-day usage setting, and the **Daily Cost** and **Hourly costs**.
    - Enable the **Allow this lot to appear on the Real-Time Parking Map** checkbox.

##### <span style="text-decoration: underline;">Step 3: Optional - Configure Special Spots</span>

1. Go to **Lot Administration** and select **Manage Special Space Types**.
2. Click **Add New** to create informational categories such as 'Electric Vehicle Charging' or 'Handicapped Accessible'.
3. Navigate back to **Lot Administration** and select the lot you wish to update.
4. Go to the **General** tab and enter the number of spaces available for each **Special Space Type**.

### Using this Feature

Once configured, the map is accessible to both the public for finding and purchasing parking, and to administrators for viewing lot statistics.

##### <span style="text-decoration: underline;">Public User View</span>

- The map is accessible to the public at the URL: `https://yourdomain.parkadmin.com/real-time`
- Users can hover over a map marker to see the lot name and description.
- Clicking a marker displays detailed availability, information about special spots, and a **Book Now** button. Clicking this button directs them to the temporary permit purchase screen.

##### <span style="text-decoration: underline;">Administrator View</span>

- Administrators can view the map internally by hovering over **Parking Management** and clicking **Real-Time Map**.
- The admin view is similar to the public map, but clicking on the map markers will di<span class="citation-193 citation-end-193">splay more detailed lot statistics.<sup class="superscript" data-turn-source-index="1"></sup></span>
    
    <div _ngcontent-ng-c1390479486="" class="source-inline-chip-container ng-star-inserted"></div>
- <span class="citation-193 citation-end-193">The Admin view has been updated to show **Pay by Plate machine capacity** in each lot if applicable, all **other spaces availability**, including special spaces such as **handicap** and **pregnancy** spaces.</span>

---

### <span class="citation-192 citation-end-192" style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations<sup class="superscript" data-turn-source-index="2"></sup></span>

- <span style="color: rgb(22, 145, 121);">**The Real-Time Map is designed for temporary parking.** A lot will not appear on the map unless all the required fields on the **Temporary Parking** tab in **Lot Administration** are correctly filled out and the feature is enabled with the checkbox.</span>
- <span style="color: rgb(22, 145, 121);">**Write clear and helpful descriptions** in the **Location** field under **Zones and Locations**. This text is visible to the public when they hover over a map marker and can be used to provide useful information, like 'Visitor Parking - North Campus'.</span>

# QR Code Guest Temporary Permitting

<p class="callout info">This article describes how to configure and use the QR code feature to allow guests to self-register for temporary parking permits. This functionality streamlines the guest parking process for both free and paid scenarios, enabling visitors to quickly obtain a valid permit by scanning a code with their mobile device.</p>

### Setup &amp; Configuration

Proper setup is required at both the system and lot level to enable QR code permitting.

<p class="callout success">QR codes also work for users who are logged into an account already. They must have an active session on the same browser in order to use their stored account information to checkout. (They must also be the correct user type for that lot)</p>

For instance, if you are logged in as user1, and scan the QR code, you will be taken to your account to checkout in that specific lot. If you do not have an active session, you will be checking out as a guest user.

##### <span style="text-decoration: underline;">System-Wide Configuration</span>

These initial steps enable the QR code functionality for your entire OPSCOM system.

- Go to **System Configuration** &gt; **Users** &gt; **Types**.
- Confirm that a user type named **Guest User** exists. If it does not, you must add it.
- Navigate to **System Settings** &gt; **Temp Permits**.
- Enable the **Enable QR Codes** checkbox.

<p class="callout warning">**WARNING:** The **Guest User** type is essential for this feature to function. Without it, you will not be able to assign QR code capabilities to your lots.</p>

- Users who wish to pay for a temporary permit with saved cards must first log in to their account, and go to permits, then click on **Parking map** in order to use the same quick checkout process.

##### <span style="text-decoration: underline;">Lot-Specific Configuration</span>

Follow these steps for each individual lot where you want to offer guest temporary permitting via QR code.

1. Go to **Parking Management** &gt; **Lot Administration** &gt; **Pricing and Lot Admin**.
2. Select the desired lot to configure.
3. On the **General** tab, select **Guest User** as the **User Type** for the lot. Removing this user type will disable the QR code feature for this specific lot.
4. Click the **Temporary Parking** tab.
5. In the pricing section, set the hourly and/or daily costs.
    
    
    - For **free parking**, enter `$0.00` for the applicable timeframes.
    - For **paid parking**, enter the correct amounts for the durations you wish to offer.
6. Click the **Update Lot** button to save all changes.

**Optional:**   
If you wish to use the lot for QR code functionality alone excluding standard and temp permitting through the user portal, you can set the **Visibility to User** as **Hidden but Accessible** in the General tab.  
  
If you wish to use this lot for Temp permits exclusively, enable the **This lot is for temporary parking only** checkbox.

<p class="callout info">**Note:** **Daily Cost** permits expire at midnight on the day of purchase. To offer a true 24-hour permit, use the **Hourly Cost** setting and define a **24-hour** duration instead.</p>

### Using this Feature

<p class="callout info">You can brand the QR code with your organization's logo. First, upload the logo to the media bin. Then, in the **QR code configuration** section on the **Temporary Parking** tab, select your uploaded image from the **Logo** field.</p>

Once configured, the QR code can be deployed for public use. The necessary tools are available within the lot's administration page.

##### <span style="text-decoration: underline;">Accessing &amp; Deploying the QR Code</span>

- Go to **Parking Management** &gt; **Lot Administration** &gt; **Pricing and Lot Admin**.
- Select the configured lot and go to the **Temporary Parking** tab.
- The QR code and its associated links will be displayed in the **QR code configuration** section.

### Available Actions

- **Print QR Code:** Click this button to generate a printable page containing the QR code. This is ideal for quick deployment on physical signage.
- **Download QR Code:** Click this button to download the QR code as an SVG file. This high-quality vector format is best for incorporating into professionally designed signs or digital materials.
- **Direct Link:** Click this icon to copy the unique URL for the guest permit page. This link can be emailed, posted on a website, or sent via text message to provide direct access without scanning a code.

---

### <span style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Always test the QR code** with a mobile device after configuration to ensure it directs users to the correct permitting page.</span>
- <span style="color: rgb(22, 145, 121);">For optimal visibility, **place QR code signage at lot entrances** and other strategic locations where drivers will easily see it upon arrival.</span>
- <span style="color: rgb(22, 145, 121);">If you are offering paid temporary permits, **ensure a payment processor is correctly configured** and linked within your OPSCOM system.</span>
- <span style="color: rgb(22, 145, 121);">The end-user experience is a simple, mobile-friendly process where the guest scans the code, selects a parking duration from the options you configured, enters their license plate number, and completes the payment if required.</span>

# Parking Logix - Parking Sensor Integration

## Enable Parking Logix Integration

Before you can use the Parking Logix integration on your system you will need to navigate to your **Third Party** settings under **System Settings**.

From there you should see the option to enable **Parking Logix Integration**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/3x1image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/3x1image.png)

## Adding the Lot Group

<span class="legacy-color-text-blue3">Next, add a new lot group to your system making sure you include the API code. It is possible but unlikely that there will be multiple API keys if lot access is split over several keys. </span>

<span class="legacy-color-text-blue3">Create a specific group for each lot you will be collecting data from.</span>

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/5JZimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/5JZimage.png)

Once the Lot Group has been configured you would need to assign it to the lot on the **LPR Settings Tab** of the Lot Administration tool.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/3Jzimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/3Jzimage.png)

## Enable the System Task

A system task must be enabled for the Parking Logix sensors to communicate with our system.

This must be enabled by OPSCOM integration staff and you can contact us through support to set this up. Please email <support@ops-com.comcom> for assistance.

Once the system task has been run you should see updated on the lot counts under **Manage Parking Lot Groups**

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/ve5image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/ve5image.png)

## Displaying the Map on the User Side

Finally, enter the short code on the user side to any of your pages using **System Messaging**.

The short code is<span class="legacy-color-text-blue3"> </span>**<span class="error legacy-color-text-blue3">\[parking\_logix\]</span>**<span class="legacy-color-text-blue3"> and you can pass addition parameters such as: *only, show, filter,* or *name.* This will restrict the list to show only specific lots.</span>

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/VXJimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/VXJimage.png)

<span class="legacy-color-text-blue3">By design, it will only show lots that have a group assigned to it that have an API key stored in it.  
</span>

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/6Lhimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/6Lhimage.png)

<span class="legacy-color-text-blue3">  
</span>

# Pay Station Status

<p class="callout info">This article describes the Pay Station Status lookup tool, used for searching and verifying temporary permits issued by pay stations. Its primary purpose is to allow administrators and enforcement personnel to look up a vehicle's pay station status based on various criteria, such as plate number and time. This guide is intended for OPSCOM administrators and enforcement staff.</p>

### Using this Feature

This page allows administrators to filter for pay station transactions and view vehicle details.

This tool is a standard administrative feature and does not require any specific configuration. It relies on a successful integration with your organization's pay station hardware to populate its data.

##### <span style="text-decoration: underline;">Performing a Status Lookup</span>

1. Go to **Parking Management**, then hover over **Temporary Permits**, and click **Pay Station Status**.
2. Enter your criteria into one or more of the following search filters:
    
    
    - **Plate**: Search for a specific license plate.
    - **Valid Date/Time**: Find permits that were valid on or after the selected date and time.
    - **Zones**: Filter the results for specific pay station zones.
    - **Validity Filter**: Use the drop-down menu to show only **Valid**, **Non-Valid**, or **All** records.
3. Select an option from the **Sort Order** drop-down menu to organize the results by a specific column.
4. Click the **Search** button.

##### <span style="text-decoration: underline;">Available Actions</span>

- The **Plate** number in each row of the results list is a clickable link. Click on the plate number to view or edit that vehicle's details.

---

### <span style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Use the Plate and Valid Date/Time filters together for quick enforcement checks.** This allows you to instantly verify if a specific vehicle had a valid pay station permit at the time of an infraction.</span>
- <span style="color: rgb(22, 145, 121);">The data on this page is pulled directly from your integrated pay station system. **Any discrepancies in the data should first be investigated at the pay station terminal or its management software.**</span>

# Zebra Sticker Printers

<p class="callout info">This article provides a comprehensive guide for configuring Zebra sticker printers for use with the OPSCOM Admin Portal. This process involves setting up a custom layout and system message in OPSCOM, as well as configuring local printer and browser settings, to enable the printing of physical permit stickers. </p>

### Setup &amp; Configuration

This is a one-time, multi-phase setup process. It is recommended to complete all phases in the specified order before attempting to print.

##### <span style="text-decoration: underline;">**Phase 1:** Create the OPSCOM Layout Template</span>

1. Hover over **System Config** and click **Templates &amp; Design**.
2. On the **Layouts List** page, click the **Create Layout** button.
3. Enter a descriptive **Name** for the layout (e.g., "Zebra Printing") and click **Save Changes**.
4. On the next screen, click **Toggle Templates** and create a **Styles** section and a **Scripts** section.
5. Copy the provided styling and script code into the corresponding sections for each language you wish to support.

##### <span style="text-decoration: underline;">**Phase 2:** Create the System Message</span>

1. Navigate to **Manage System Messaging** and click the **Create Page/Message** button.
2. Fill in the required fields, ensuring you select the new layout you created in Phase 1 from the **Layout** drop-down menu.
3. In the content editor box, hover over **Tools** and click **Source Code**.
4. Paste the required shortcode HTML into the source code view and click **Save**.

##### <span style="text-decoration: underline;">**Phase 3:** Configure Windows Printer Drivers</span>

1. Open **Windows Settings** and navigate to **Devices**, then **Printers &amp; Scanners**.
2. Select your Zebra printer and click the **Manage** button.
3. Click **Printer Properties** and go to the **Stocks** tab.
4. Click the **New...** button to define a new stock that matches your sticker label dimensions.
5. After creating the stock, navigate to **Printing Preferences** and select the new stock as the default.

##### <span style="text-decoration: underline;">**Phase 4:** Configure Browser Print Settings</span>

Before proceeding, you must temporarily disable the auto-print script. Navigate back to your layout template in OPSCOM (**System Config** -&gt; **Templates &amp; Design**) and comment out the code in the **Scripts** section. This will prevent the sticker from automatically printing and allow you to adjust the browser settings.

- **For Chrome**: Adjust the print settings to match the required configuration, paying close attention to margins and ensuring headers and footers are disabled.
- **For Firefox**: Open the print menu and adjust the page properties to match the required configuration, focusing on orientation, scale, and margins.

### Using this Feature

Once all configuration steps are complete, administrators can print permit stickers from the Admin Portal.

- Go to **Parking Permit Information** page for the desired permit.
- Click the green print button located next to the **Update Permit** button.
- The browser's print dialog will appear, allowing you to print the sticker.
- After confirming the print settings are correct, you can uncomment the code in the **Scripts** section of your la<span class="citation-136 citation-end-136">yout template to re-enable automatic printing.<sup class="superscript" data-turn-source-index="1"></sup></span>
    
    <div _ngcontent-ng-c2892847681="" class="source-inline-chip-container ng-star-inserted"></div>

---

### <span class="citation-135 citation-end-135" style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations<sup class="superscript" data-turn-source-index="2"></sup></span>

## <span style="color: rgb(22, 145, 121);"></span>

<div _ngcontent-ng-c2892847681="" class="source-inline-chip-container ng-star-inserted" id="bkmrk--2"><span style="color: rgb(22, 145, 121);"></span></div>## <span style="color: rgb(22, 145, 121);"></span>

- <span style="color: rgb(22, 145, 121);">**Incorrect Windows driver or browser print settings** are the most common cause of **printing issues.** Double-check that margins, headers/footers, and paper/stock size are configured exactly as required for your specific sticker labels.</span>
- <span style="color: rgb(22, 145, 121);">The **Layout Template** controls the styling and printing action, while the **System Message** controls the content and data that appears on the sticker. **Ensure both are configured correctly** for the integration to work.</span>

# Printing Permit from Home Setup

<p class="callout info">This article provides OPSCOM administrators with the necessary instructions to configure the Permit Printing from Home feature. This functionality allows end-users to print a physical copy of their parking permit directly from the user portal. The setup involves creating a printable permit template using system messaging and then enabling a system-wide setting.</p>

### Setup &amp; Configuration

Configuring this feature is a two-part process. First, the feature must be enabled in the system settings. Second, the templates for ***permitPdf*** and ***permitTempPdf*** must be customized, if desired.

- Go the **System Configuration** and click **System Settings**.
- Select the **Permits** tab. 
    - Click the **Enable User Permit Printing** checkbox.
- Click **Save Settings**.

##### <span style="text-decoration: underline;">Locate the Permit Print Template</span>

The printable permits are generated from a system message.

- Go to **System Configuration**, then **Content and Design**, and click **Pages and Content Blocks**.
- Select the **Messages** tab.
- Edit the messages where the **System Location** column is labled ***permitPdf***, and ***permitTempPdf***

These two pages above, ***permitPdf*** and ***permitTempPdf*** are used to customize the content of either a regular printed permit, or a temporary printed permit, respectively.

### Define the Template Content

Use the content editor to design the layout of your printable permit. You can use a combination of text, images (like your organization's logo), and specific shortcodes to dynamically pull in permit and user information.

##### <span style="text-decoration: underline;">Available Shortcodes</span>

The following shortcodes can be used within the message body to display dynamic permit information:

- `[permitpdf user=fullname]` - Displays the full name of the user.
- `[permitpdf vehicle=all]` - Displays a comma-separated list of up to three associated vehicles.
- `[permitpdf vehicle=1]` - Displays the first vehicle on the permit. You can also use `vehicle=2` or `vehicle=3`.
- `[permitpdf permit=expiry]` - Displays the permit's expiry date.
- `[permitpdf permit=permitno]` - Displays the unique permit number.
- `[permitpdf permit=lotshortname]` - Displays the short name of the associated lot.
- `[permitpdf permit=lotname]` - Displays the full name of the associated lot.
- `[permitpdf permit=location]` - Displays the location associated with the permit.


##### <span style="text-decoration: underline;">Default Template Content</span>

Below is a sample of what should be the default message content;[![image.png](https://opscom.wiki/uploads/images/gallery/2025-08/scaled-1680-/gwrimage.png)](https://opscom.wiki/uploads/images/gallery/2025-08/gwrimage.png)

To use our recommended template, you can leave the content as the default text, but be sure to change any logos or company names to your own.

---

### User Portal Guide

Once enabled, users will see an option to print their permit from the user portal. For a detailed guide on the user-facing process, please refer to the *[Printing Your Parking Permits Made Easy!](https://opscom.wiki/books/OPSCOM-user-portal/page/printing-your-parking-permits-made-easy)* article.

---

### <span style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Always test your template before deploying.** After creating your message, print it out to ensure the layout, shortcodes, and any images appear correctly on a physical page.</span>
- <span style="color: rgb(22, 145, 121);">**Include clear instructions for the user.** It is recommended to add text to the template that instructs the user on how to display the permit (e.g., "Please display this permit face-up on the driver's side of your dashboard").</span>

# Validator Admin Groups

<span data-colorid="wmqzhqcp61">User Level Capabilities within the Validator Tool</span>

Here is a description of what each user level can do with the **Validator Tool**.

1. The **Super Admin** can set up new **Groups** with a **Group Name**, as well as assign **Managers** and **Group Members**. Only the Super Admin can add Managers and Admins.
    
    
    1. Definition: The Super Admin will also be any Primary Admin with permissions in OPSCOM to manage the Validator; they can create groups and have the ability to add users to the group. The permissions that the Super Admin assigns to the individual group members will determine their access level on the system. All permissions must be added or removed by the Super Admin and cannot be done by any other user.
2. The Super Admin will be able to see all current, pending, past and archived (deleted) validations.  
      
    These are the permissions required to use the **Super User Manager** role.   
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/ogCimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/ogCimage.png)
3. Group Managers and Admins will be able to see all of their Groups, current/pending validations and delete future/current validations up to the 15-minute mark of the Start Date. Group Managers can only manage one group at a time. 
    1. Please note that deletions would only be available from the Manage Validations page.  
          
        These are the permissions required to be the **Validator Admin** role:  
          
        [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/9bTimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/9bTimage.png)
4. The Super User will be able to delete any future, current, and past validations. 
    1. Please note that archived is considered deleted. Archived information is not purged from the system. This is due to the need to keep system data integrity.<u>  
          
        </u>These are the permissions required to be the **Validator Entry** role:  
        <u>  
        </u>[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/lTLimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/lTLimage.png)

## User Level Display within the Validator Tool

Here is the description of what each user level can see in the Validator Report and Manage Validations tools.

1. <span class="legacy-color-text-default">The **Super Admin** will be able to see all **Validator Groups** via the drop-down menu of **All/Individual** **Validators** within each group. The Super Admin should be able to delete any entry at any time, pre or post validation.   
      
    </span>
2. <span class="legacy-color-text-default">Group Managers will only be able to see their own Validator Groups within a drop-down of **All/Individual Validators** within their group. They will also be able to delete any entry pre-validation.  
      
    </span>
3. <span class="legacy-color-text-default">**Admins** will only be able to see and delete their own entries pre-validation or within a 15-minute leeway (as described below).   
      
    </span>
4. <span class="legacy-color-text-default">Please set-up a 15-minute grace period on deletions. This will allow a current validation to be deleted up to 15-minutes past the start date, in the case of an input error. (Setting)  
      
    </span>
5. <span class="legacy-color-text-default">**Users** will be able to search for a partial or full plate, by entering the time period. No admin name or lot should be required. If the entry was made within the appropriate time period, it should show accordingly. If an Admin name is required then an **All** Admins option, and individual admins within their group are required.</span>

### Creating a Validator Group

1. Navigate to **System Configuration**, then **Admin Management**, and click on **Manage Groups**.
2. This brings you to the **Manage Administrator Groups** page.
3. To create a Validator group click on the **Parking Validator** module and then click **Add New** in the top right corner under. [![image.png](https://opscom.wiki/uploads/images/gallery/2026-04/scaled-1680-/rMmimage.png)](https://opscom.wiki/uploads/images/gallery/2026-04/rMmimage.png)
    
    The **Adding New Group** window will appear with the following options:
    
    <div class="table-wrap">  
    <table class="wrapped confluenceTable tablesorter tablesorter-default" role="grid" style="width: 100%; height: 267.985px;"><thead><tr class="tablesorter-headerRow" role="row" style="height: 34.1094px;"><th aria-disabled="false" aria-label="Adding a new Group: No sort applied, activate to apply an ascending sort" aria-sort="none" class="confluenceTh tablesorter-header sortableHeader tablesorter-headerUnSorted" data-column="0" role="columnheader" scope="col" style="width: 26.5424%; height: 34.1094px;" tabindex="0">**Options**</th><th aria-disabled="false" aria-label="Info: No sort applied, activate to apply an ascending sort" aria-sort="none" class="confluenceTh tablesorter-header sortableHeader tablesorter-headerUnSorted" data-column="1" role="columnheader" scope="col" style="width: 73.3287%; height: 34.1094px;" tabindex="0">Info</th></tr></thead><tbody aria-live="polite" aria-relevant="all"><tr role="row" style="height: 34.1094px;"><td class="confluenceTd" style="width: 26.5424%; height: 34.1094px;">**1. Group Name**
    
    </td><td class="confluenceTd" style="width: 73.3287%; height: 34.1094px;">The Group Name is how you set the name of a group.</td></tr><tr role="row" style="height: 34.1094px;"><td class="confluenceTd" style="width: 26.5424%; height: 34.1094px;">**2. Module** </td><td class="confluenceTd" style="width: 73.3287%; height: 34.1094px;">The Module is where you can set the purpose of the group.</td></tr><tr role="row" style="height: 55.2188px;"><td class="confluenceTd" style="width: 26.5424%; height: 55.2188px;">**3. Validator Comment** </td><td class="confluenceTd" style="width: 73.3287%; height: 55.2188px;">The Validator Comment is a spot where you can add any comments that you need to.</td></tr><tr role="row" style="height: 55.2188px;"><td class="confluenceTd" style="width: 26.5424%; height: 55.2188px;">**4. Admin Members**</td><td class="confluenceTd" style="width: 73.3287%; height: 55.2188px;">The Admin is the area in which you can add admin members to the group
    
    </td></tr><tr style="height: 55.2188px;"><td style="width: 26.5424%; height: 55.2188px;">**5. Default Validation Hours**</td><td style="width: 73.3287%; height: 55.2188px;">The Default Validation Hours is where you can set a default permit duration.
    
    </td></tr></tbody></table>
    
    </div><p class="callout info">**Note:** There is currently no way to enforce a strict limit or prevent admins from overriding the default duration. The value serves only as an automatically populated preset and can be manually adjusted.</p>
4. When you are finished click the **Save Group** button. You will see your group added to the bottom of the Administrator Groups.

##### <span style="text-decoration: underline;">Adding Members to a Group</span>

1. Navigate to **System Configuration**, then **Admin Management**, and click on **Manage Groups**.
2. Click the Edit button next to the Administrator Group you wish to edit.
3. Click on the **Admin Members** bar to add more members to the group.
4. When finished, click the **Save Group** button found at the bottom of the Editing Group.

## Zones and How They are Assigned

1. Navigate to **System Configuration**, then **Admin Management**, and click on **Edit Admin Users**.
2. Select an **Admin User** which you want to edit and apply the **Parking Validation Lot Zones** they will manage.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/fMDimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/fMDimage.png)
3. Scroll to the bottom of the page to find the **Parking Validation Lot Zones** window. Select the **Zone(s)** in which this admin will be managing validations.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/haeimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/haeimage.png)
4. Click any **Zones** that apply to this Admin and click **Update User** at the bottom of the page to finish.

# Public-Facing Lot Pages

# Overview

Within the system, there is the option to create a custom lots page, which will display a list of lots that users can book from.

The page consists of two subpages:

- Lots List - Contains the list of lots on the system for the user to choose from
- Lot Detail - Contains detailed information pertaining to the lot selected by the user

Setting up these pages requires the use of shortcodes within the system.

## **Page Setup**

The custom pages can be setup from the **Pages and Content Blocks** page.

It can be found under **System Configuration → Content &amp; Designs → Pages and Content Blocks**

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-05/scaled-1680-/mbSimage.png)](https://opscom.wiki/uploads/images/gallery/2024-05/mbSimage.png)

## Pages and Content Blocks

The pages and content blocks section, or system messaging, allows the setup of custom user pages.

## Shortcodes

A shortcode is a bit of text that has been coded to return a specific value when placed within the body of the page layout.

The value it returns can be anything from single variable, to a module laid out within a template, like a table or a form.

A shortcode looks like this: **\[lots\_list\]**

In this case, the shortcode returns a list of the lots in the system.

By placing the shortcode in the body of the message, it will show up on the corresponding page in that location. Shortcodes will be used to create the layout of the lot subpages.

# Lot List Page

The first subpage that must be created is the page where the list of lots will appear.

It does not need to have a dedicated page, and the lot list can be placed on any custom page that is wanted.

In this example, the lots list will be placed on a custom page.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-05/scaled-1680-/uZGimage.png)](https://opscom.wiki/uploads/images/gallery/2024-05/uZGimage.png)

The path that is chosen here is what the path will be in the url. This would make the lots\_list module show up when the address has /lots at the end of the base <span data-highlighted="true"><span class="_11q7k1zt _5pio5fkk _189eyh40 _1il9nqa1 _19lclxqc _d0altlke acronym-highlight" data-testid="acronym-highlight">URL</span></span>.

The lots list is a module, meaning its appearance is fixed and cannot be modified further. Only its location on the site can be customized.

### Lot List Shortcode

The shortcodes must be typed exactly as they appear, or they will not work.

There is only one short code relevant to the lot lists page:

<div class="pm-table-container with-shadow-observer" data-layout="custom" id="bkmrk-shortcode-descriptio"><div class="cc-12efcmn"><div class="fixed-table-div-custom-table-resizing cc-ltvs76" data-testid="sticky-table-fixed" mode="stick"><div class="pm-table-container is-sticky with-shadow-observer" data-layout="default"><div class="pm-table-sticky-wrapper"><table data-number-column="false" data-table-width="760" data-testid="renderer-table"><colgroup><col></col><col></col><col></col></colgroup><tbody><tr><th aria-sort="none" class="ak-renderer-tableHeader-sortable-column__wrapper" colspan="1" rowspan="1">**Shortcode**

</th><th aria-sort="none" class="ak-renderer-tableHeader-sortable-column__wrapper" colspan="1" rowspan="1">**Description**

</th><th aria-sort="none" class="ak-renderer-tableHeader-sortable-column__wrapper" colspan="1" rowspan="1">**Additional Options**

</th></tr></tbody></table>

</div></div></div></div><div class="pm-table-wrapper"><div class="sentinel-left">  
</div><table data-number-column="false" data-table-width="760" data-testid="renderer-table"><colgroup><col></col><col></col><col></col></colgroup><tbody><tr><th aria-sort="none" class="ak-renderer-tableHeader-sortable-column__wrapper" colspan="1" rowspan="1">**Shortcode**

</th><th aria-sort="none" class="ak-renderer-tableHeader-sortable-column__wrapper" colspan="1" rowspan="1">**Description**

</th><th aria-sort="none" class="ak-renderer-tableHeader-sortable-column__wrapper" colspan="1" rowspan="1">**Additional Options**

</th></tr><tr><td colspan="1" rowspan="1">\[lots\_list\]

</td><td colspan="1" rowspan="1">Displays a list of the currently available lots. Can be placed on any page.

</td><td colspan="1" rowspan="1">\[lots\_list include\_hidden=1\]

- By default, lots set as not visible will not appear in the list. This option will include those lots in the list.

\[lots\_list only\_text2parkme=1\]

- This will restrict the list to only show lots that have Text2ParkMe enabled.

</td></tr></tbody></table>

<div class="sentinel-right">  
</div></div></div>Additional options are modifiers that can be added to the base shortcode to influence the output. Multiple can be chained together at once. For instance, both additional options can be included in the lot list shortcode by writing it like this:

- **\[lots\_list include\_hidden=1 only\_text2parkme=1\]**

## Lot Detail Page

The specific lot detail page is set up a bit differently from the lot list page, in that it is coded to only work if the path is set as **--lots-detail**.

This will make the details for the individual lot that is selected appear for the path /lots/{id}, with the id supplied being passed to the page to fetch the correct lot information.

The information that goes on this page can be customized to include anything from the relevant shortcodes, but should at least include the permit cost and buy now button.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-05/scaled-1680-/8R0image.png)](https://opscom.wiki/uploads/images/gallery/2024-05/8R0image.png)

### Lot Details Shortcodes

Here is a list of the shortcodes that are related to the lot details page.

The shortcodes must be typed exactly as they appear, or they will not work.

<div class="pm-table-container with-shadow-observer" data-layout="custom" id="bkmrk-shortcode-descriptio-1"><div class="cc-12efcmn"><div class="fixed-table-div-custom-table-resizing cc-ltvs76" data-testid="sticky-table-fixed" mode="stick"><div class="pm-table-container is-sticky with-shadow-observer" data-layout="default"><div class="pm-table-sticky-wrapper"><table data-number-column="false" data-table-width="760" data-testid="renderer-table"><colgroup><col></col><col></col></colgroup><tbody><tr><th aria-sort="none" class="ak-renderer-tableHeader-sortable-column__wrapper" colspan="1" rowspan="1">**Shortcode**

</th><th aria-sort="none" class="ak-renderer-tableHeader-sortable-column__wrapper" colspan="1" rowspan="1">**Description**

</th></tr></tbody></table>

</div></div></div></div><div class="pm-table-wrapper"><div class="sentinel-left">  
</div><table data-number-column="false" data-table-width="760" data-testid="renderer-table"><colgroup><col></col><col></col></colgroup><tbody><tr><th aria-sort="none" class="ak-renderer-tableHeader-sortable-column__wrapper" colspan="1" rowspan="1">**Shortcode**

</th><th aria-sort="none" class="ak-renderer-tableHeader-sortable-column__wrapper" colspan="1" rowspan="1">**Description**

</th></tr><tr><td colspan="1" rowspan="1">\[values show=lotname\]

</td><td colspan="1" rowspan="1">Displays the name of the lot.

</td></tr><tr><td colspan="1" rowspan="1">\[values show=lottype\]

</td><td colspan="1" rowspan="1">Displays the initial of the lot's type.

</td></tr><tr><td colspan="1" rowspan="1">\[values show=lotnameid\]

</td><td colspan="1" rowspan="1">Displays the lot's id.

</td></tr><tr><td colspan="1" rowspan="1">\[values show=defaultcost format=currency\]

</td><td colspan="1" rowspan="1">Displays how much renting a permit for the lot costs.

</td></tr><tr><td colspan="1" rowspan="1">\[values show=location\]

</td><td colspan="1" rowspan="1">Displays the location set for the lot. It is an address or a short description.

</td></tr><tr><td colspan="1" rowspan="1">\[values show=textcode\]

</td><td colspan="1" rowspan="1">The Text2ParkMe code for the lot.

</td></tr><tr><td colspan="1" rowspan="1">\[values show=ratePer10Min format=currency\]

</td><td colspan="1" rowspan="1">The Text2ParkMe rate for the lot.

</td></tr><tr><td colspan="1" rowspan="1">\[lot show=buy\_now\]

</td><td colspan="1" rowspan="1">Displays a button that will take the user to the page to purchase a permit for the lot. Will take the user to the login screen if they are not logged in or do not have an account.

</td></tr><tr><td colspan="1" rowspan="1">\[lot show=map\]

</td><td colspan="1" rowspan="1">Displays a small map with the lot's location according to the latitude and longitude values that are stored for it.

</td></tr><tr><td colspan="1" rowspan="1">\[lot show=photo\]

</td><td colspan="1" rowspan="1">Displays the photo that has been selected for the lot. A photo can be assigned from the Lot Administration page /admin/config/permits/lot/{id}/edit.

</td></tr></tbody></table>

<div class="sentinel-right">  
</div></div></div># User-Side Results

# The Lot List Page

The lot list from the example appears on the website like this:

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-05/scaled-1680-/kiiimage.png)](https://opscom.wiki/uploads/images/gallery/2024-05/kiiimage.png)

## The Lot Detail Page

The lot detail page from the example would appear on the website like this:

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-05/scaled-1680-/3RFimage.png)](https://opscom.wiki/uploads/images/gallery/2024-05/3RFimage.png)

# Validate Parking Report

1. To access the report, the admin responsible for parker validation would need "**View Validator Report**" set as a permission.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/1dsimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/1dsimage.png)
2. To run the report, go into the **Parking Management** menu and select **Parking Validation Report.** [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/K8Vimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/K8Vimage.png)
3. The **Validate Parking Report** search tool opens.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/brbimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/brbimage.png)
4. Here, you enter the date range you wish to report on. In this case we are looking at **March 1st through to March 14, 2018.**   
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/tdaimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/tdaimage.png)
5. Click on **search** to bring up the record listing that can be viewed onscreen or exported as an Excel file.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/64Cimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/64Cimage.png)

# Managing Validator Records

In this example, we will add a validation for a vehicle with the plate number **BIRCH** in the **GARAGE L1 Lot** starting **June 4th** and expiring on **June 4th**.

Enter the **plate number**  
Choose Garage L1 as the **Lot Zone**  
Enter your time frame and click on **Validate**

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/nrHimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/nrHimage.png)

Once we have created the record, it will appear in the **Validate Parking Report**.  
  
If the entry was done in error, it can be removed through the **Manage Validation** tool.  
To do so, hover over **Parking Validation** under the **Parking Management Menu** and select **Manage Validations** from the drop down menu.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/Lz0image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/Lz0image.png)

In the management tool, enter the **Plate Number** in question along with the **Lot Zone** you wish to view.  
To delete the record click on the **Delete** button associated with the record to highlight it with the check mark.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/NFLimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/NFLimage.png)

You will be prompted to confirm the archiving of the record. Click **Archive** to continue.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/5w3image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/5w3image.png)

A pop-up message will confirm the deletion of the record.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/ri9image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/ri9image.png)

Once the record is deleted, you will notice it will be removed from the **Validator Parking Report**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/KUwimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/KUwimage.png)

# Branding the Validator Tool

## Accessing the Validator Pages to Edit the Look and Feel

From the **System Config** Menu click on **System Messaging**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/wilimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/wilimage.png)

A page with two tabs will appear. Click on the **Messages** tab to access the list of editable messages.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/cQMimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/cQMimage.png)

There are three messages to edit for the Validator Tool.  
  
They are:

The Validator Entry message  
The Validator Manage message  
The Validator Report message  
  
Each of these pages represent the three Validator Tool Pages.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/MsHimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/MsHimage.png)

Here's what they look like in the **Message System Editor**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/nC3image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/nC3image.png)

To edit the message click on the **Edit** button

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/XGoimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/XGoimage.png)

The edit page will display.

On this screen you will enter a title for your page as well as an identifier. This identifier must be unique.  
You may also select a language setting for your page.

The page can be edited in the WYSIWYG editor where you can visually design the page.

***NOTE:** The main graphic image used in our example measures **1448 pixels in width and 227 pixels in height**.  
**Best practice** would be to **maintain the same width** but the **height can be your preference**. Upload the preferred image to your **Files Folder** using the **Manage Files** functionality.*

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/96Bimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/96Bimage.png)

It is also possible to edit the page in straight **HTML**. To do so go to the **Tools** menu and click on **&lt;&gt;Source Code.**

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/Ujyimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/Ujyimage.png)

A popup will appear with the code presented.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/tC1image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/tC1image.png)

## Sample Code

<div class="code panel pdl conf-macro output-block" data-hasbody="true" data-macro-id="ab8e2de5-81c4-4175-a414-38799e2804ef" data-macro-name="code" id="bkmrk-validator-entry%C2%A0expa"><div class="codeHeader panelHeader pdl hide-border-bottom">**Validator Entry**<span class="collapse-source expand-control"><span class="expand-control-icon icon"> </span><span class="expand-control-text">Expand source</span></span></div></div>The Resulting Page

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/ol3image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/ol3image.png)

# The Validator - a Parking Validation Utility

You must create a new role to apply the permissions correctly. For more information refer to this article on Roles and Permissions

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/14Simage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/14Simage.png)

In our example, we created a Role entitled **Parking Validator**. The new role will appear in the list of roles.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/wW3image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/wW3image.png)

You must add the "**Create Temp Permit Entries**" permission to the role you just created.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/hGYimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/hGYimage.png)

Create or edit an Admin user who will manage the parking validation.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/zpFimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/zpFimage.png)

Select the **lot zone(s)** this Admin will manage and save the user. These will be the lots that you intend to use with the **Parking Validator** utility.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/RbLimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/RbLimage.png)

<p class="callout info">**Note:** These zones have to be set in the lots you wish to validate. In Lot Administration go to the Zone &amp; Location tab to select the zone associated with the lot.  
</p>

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/pH0image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/pH0image.png)

## Accessing the Validator Tool

Log in as this user. Only one menu item entitled '**Create Validations**' will be available.

<p class="callout info">**Note:** The following screen represents the view of the validation tool that would be used by admins who have restricted access to the OPSCOM system and would have access to the Validation Tool Only.</p>

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/Ynnimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/Ynnimage.png)

The Validate Parking screen will appear.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/iLiimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/iLiimage.png)

Click '**Create Validations**'. From this page you can:

1. Enter plate number(s)
2. Enter a comment
3. Select the lot zone in which you want to validate the vehicle
4. Select the date range you wish the validation to be in effect.
5. Set the Valid Time Frame (These blocks represent a full hour. In our example below we are setting the Valid times between 7am and 7pm).
6. Select the Valid Days you wish to have the validation in effect.
7. Click Validate to apply the validation.

<p class="callout info">In this example we are validating the plate ABC123 on March 21st, between 7am and 7pm, if the day happens to fall on a weekday. If the Valid Between Dates was set from March 21st, to March 26th, it would be valid from Monday to Friday, during that week, 7am to 7pm.</p>

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/LrBimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/LrBimage.png)

The list of validated vehicles appears below the submit form.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/u82image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/u82image.png)

#### <span data-colorid="rqp2ynr2t4">Advanced Features</span>

With full access to the tool within OPSCOM there are several additional features to take into account. Not only do you have the validator tool, you also have the ability to run reports and Manage validations.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/dMeimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/dMeimage.png)

# How Do Temporary Validated Parkers Appear on the Handheld Devices

Parkers who are validated through this tool will appear as a "**Temp Parker**<span class="legacy-color-text-blue3">" on the Android version of</span> **OPS-<span class="legacy-color-text-blue1">COM</span>.**

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/V0Kimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/V0Kimage.png)

By tapping on the plate number you will get an expanded view with further detailed information. In our example, we see the parker has a **Validator** created permission to park in the **Day Care Lot Zone**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/cbIimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/cbIimage.png)

To see even finer detail on this permission, tap the green rectangle labelled **Validator - Day Care**. A pop up will appear showing a **reference number** and the **Expiry date** of the permission.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/3Uiimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/3Uiimage.png)

A closer look:

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/405image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/405image.png)

# Apply Temp Permit to User Vehicles

1. To begin, you must set the ability to apply the permit to multiple vehicles in **Lot Administration** under the **Temporary Parking** Tab.  
    You must enable the following items:  
     **- Allow temp permits to be used over 30 days.**  
     **- Allow All Vehicles on profile to receive permit.**  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/qiXimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/qiXimage.png)
2. Once this is set, you are ready to issue a temporary permit to multiple vehicles.   
    To begin, go to the user's profile and click on the **Parking Tab**.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/D3Dimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/D3Dimage.png)
3. Select **Temporary Parking Permit**.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/QyQimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/QyQimage.png)
4. The **Temporary Parking Permit Registration** window opens.   
    In our example, we will select the **Green Staff Lot East** where we had configured the ability to apply the permit to all vehicles (Step 1 above)  
    Set the **start date** and **end date**. The date range must be for a period longer than 30 days in order to activate the **Apply to all Vehicles** button.  
    Click the button to apply the permit to all vehicles.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/bT2image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/bT2image.png)
5. Click **Confirm This Permit** to proceed to the Confirmation window.   
    You can verify the information before proceeding to purchase the permit.   
    *Note: the two vehicles are listed in the Vehicle list.*  
    Click **Purchase this Permit** to continue.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/22uimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/22uimage.png)
6. The payment screen displays. Start the purchase process.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/Dvoimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/Dvoimage.png)
7. Select your method of payment and click the **Submit Payment Information** button.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/bT4image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/bT4image.png)
8. Select **Confirm Payment Information** to proceed.   
    Click **Process Manually** to complete the purchase.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/MlTimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/MlTimage.png)
9. You will be taken to the **Transaction Details** screen, where you can see a final record of your purchase.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/NrRimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/NrRimage.png)

# LPR Audit Log

## Viewing the LPR Audit Log

To access the LPR Audit Log, go to the **Violations** menu and hover over **LPR and Chalking**. Select **View Audit Log** from the resulting drop down menu.

[![image.png](https://opscom.wiki/uploads/images/gallery/2026-05/scaled-1680-/HN6image.png)](https://opscom.wiki/uploads/images/gallery/2026-05/HN6image.png)

The initial screen will display with the option to **Toggle More Options**

[![image.png](https://opscom.wiki/uploads/images/gallery/2026-05/scaled-1680-/VzPimage.png)](https://opscom.wiki/uploads/images/gallery/2026-05/VzPimage.png)

## Filtering Results

Search results can be filtered to display specific information. The two filter fields are Camera selection and Event type when clicking **Toggle More Options**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2026-05/scaled-1680-/011image.png)](https://opscom.wiki/uploads/images/gallery/2026-05/011image.png)

Event type refers to one of five selections:

Any Event  
Entry Events  
Exit Events  
Patrol Events (These are LPR chalking records from a Patrol Officer's hand held unit.  
Tracking (These could be cameras that track movement such as moving from one floor of a multilevel garage to another floor.

# Viewing and Editing LPR Events

1. Go to **Violations**, then **LPR and Chalking**, and click **View Events**.  
    
    - A list of Events will appear. The following information is displayed:
        
        
        - Plate Image
        - Plate Number
        - Province
        - Score (relates to how accurate the system analyzes the capture to be)
        - Km/h (Speed, as well as direction - approaching or going away from the camera)
        - Recorded (Date and Time of capture)
        - Events (How many times this plate has been captured)
        - Status (Valid or Invalid)
        - Lot Group
        - Violations
2. If the admin wants to refine their search more, they can enter the date and time range that is being reported on, by entering values in the recorded on and Up to and including field.
3. To search for partial plates, turn on the Perform fuzzy search option then enter the partial plate into the license plate text box.
4. The admin has the ability to correct plate reads that are wrong or partial. To correct the plate number, click on the **pencil icon** to edit the entry.
5. Enter the Correct Plate Number.
6. Select the appropriate province.
7. Click the **Blue Icon** to save the changes.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/uiKimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/uiKimage.png)

### **<span class="legacy-color-text-blue1">Other Information that can be viewed from this interface.</span>**

---

1. Hover over the **thumbnail in the record** and the full image capture can be displayed.  
      
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/kHCimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/kHCimage.png)

# Improve LPR Read Rates

## <span data-colorid="bvfydzznzv">What is the optical range for the reader?</span>

<span data-colorid="varj9i5kqa">The sweet spot for plate reads is 1.5 to 2.5 meters between camera and plate. </span><span data-colorid="a9ow7r24v9">Also check to make sure the lens is clean. </span><span data-colorid="agzgmjd69e">Another issue may be camera angle. The o</span><span data-colorid="k60ku80hl8">ptimum angle for the camera is straight on (parallel) to the plate</span>

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/VJUimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/VJUimage.png)

## <span data-colorid="r9zqjxmlek">Fuzzy Searching</span>

<span data-colorid="w5vuso8rms">The PL8-RDR system supports fuzzy searching based on user supplied values.</span>

<span data-colorid="hstu289quf">In the case of the LPR system "seeing" **ABC123**, it will also validate against **A8C123** and **ABC128** or **A8C12B**.</span>

## Manual Corrections

<span data-colorid="tfc9edn5pz">You can improve plate reads by making corrections and verifying correct plates on the system. </span>OPSCOM has an algorithm that includes the human updates as part of the read score. Therefore, if a plate is misread and corrected, it is very probable that the system will return the (human) updated version.

Further, the system does fuzzy searching... this means it will look for a plate in the system that matches a pattern. For example, a plate of ABC123 may be read as A8C128. With fuzzy searching and based on time of day etc. the system will return ABC123 if that plate has a permit (but will also note that it was a "fuzzy" read of the plate).

<span data-colorid="pjh1rupyxk">If you see a score of 100% in the LPR report that means that the system determined a human updated version was the best match since a score of 100% is theoretically impossible with LPR cameras.  
  
</span>

As an Example here's a tweak you can do for Ontario users once the camera is setup...

Go into the Web Interface Page Plate Reader Camera OCR and set the following Characters dimensions:

CHAR SIZE Min W: 10 Max W: 50 Min H:30 Max H: 100

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/AsGimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/AsGimage.png)

## Improving Exposure

For dark plate reads:

Set Max Shutter to 500  
Set Max Gain to 256 (If images are too dark this setting can be increased. <span class="legacy-color-text-default">However it is not recommended to go over 1000.)</span>  
Set Iris Level to 15

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/4Pdimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/4Pdimage.png)

<span data-colorid="zrmhsrcgu7">Adjusting the Bounding Box</span>

The LPR camera has the ability to customize the area that is being analyzed during the plate read. This article explains how to adjust the read area (Bounding Box).  
The bounding box refers to the area that can be adjusted to narrow the view or area that is analyzed by the LPR camera.

  
The settings involved are located in the Plate Reader Settings.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/9ISimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/9ISimage.png)

  
The default settings for full frame are as follows. Measurements for height are always considered the distance from the top of the screen. Measurements for width are based on distance from the left of the screen

Win MinX Pixel - 0 *(From the left)*  
Win MinY Pixel - 0 *(from the top)*  
Win MaxX Pixel - 1279 *(From the left)*  
Win MaxY Pixel - 1023 *(from the top)*

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/zALimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/zALimage.png)

  
To view the location of the bounding box go into the Camera OCR tab.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/bk0image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/bk0image.png)

  
  
Here is the full frame view of the bounding box. See the red outlined box in the image below.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/8j0image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/8j0image.png)

## Adjusting Height

To adjust the box edit the number in the settings. In this case we will narrow the bounding box in height to restrict the read area.  
  
Here are the settings:

Win MinX Pixel - 0 *(from the left)*  
Win MinY Pixel - **100** *(from the top)*  
Win MaxX Pixel - 1279 *(from the left)*  
Win MaxY Pixel - **700** *(from the top)*

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/Of4image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/Of4image.png)

IMPORTANT

Once the settings are changed and you click on Apply, the camera will reboot. This process will take a couple of minutes to complete before you can navigate away from the page.

The resulting Bounding Box will look like this:

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/ul6image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/ul6image.png)

Let's now say we want to lower the box in the view. I would have to increase the values in both Y axis settings.

Here are the settings

Win MinX Pixel - 0 *(from the left)*  
Win MinY Pixel - **200** *(From the top)*  
Win MaxX Pixel - 1279 *(from the left)*  
Win MaxY Pixel - **800** *(From the top)*

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/rqeimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/rqeimage.png)

Here is the resulting bounding box:

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/LYjimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/LYjimage.png)

## Adjusting Width  
  


Additionally you can narrow the width of the bounding box if need be. In this case we will narrow the bounding box by 100 pixels on both sides.

Here are the settings

Win MinX Pixel - **100** *(from the left)*  
Win MinY Pixel - 200 *(From the top)*  
Win MaxX Pixel - **1179** *(from the left)*  
Win MaxY Pixel - 800 *(From the top)*

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/7cgimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/7cgimage.png)

  
  
Here is the resulting bounding box.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/fcqimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/fcqimage.png)

By selective use of these settings you can customize the area that is processed by the LPR read. As a result LPR reads could be faster and more accurate since the camera is reading a smaller more focused area and ignores anything outside of the bounding box.

<span data-colorid="iods2ti1z2">  
</span>

<span data-colorid="snb1pgeemk">On the Handheld</span>

<span data-colorid="ad95y2463y">For NOREADs you can check the setting in **System Settings** to see if that can be reduced.   
It may mean more noise, but it may also help with determining what is going on (ie. reading but not seeing it as a **READ** result)</span>

<span data-colorid="e7p9me7acx">To adjust this setting go into system settings and tap on Include NOREAD (ie. vanity) Results  
  
</span>

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/OTsimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/OTsimage.png)

<span data-colorid="bi2z7eadta">Set the percentage to 50% to start. We can tweak it once we see how the system reacts.</span>

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/kX0image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/kX0image.png)

# Text2ParkMe - Active Permits

1\. In **Parking Management**, hover over the **Permit Management** icon and select **Text2ParkMe - Active Permits.**

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/vsqimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/vsqimage.png)

2\. This will take you to the **Text2ParkMe - Active Permits** page that automatically displays all Text2ParkMe permits that are currently active and not yet expired.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/BYCimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/BYCimage.png)

3\. You can filter this listing by entering the data that you want to filter by in the search criteria above. This report can be filtered by ***User, Plate, or Lot Name***.

Select the **Filter Report** button to bring up the new report using the filters entered.

- The **Username link** will take you to the user's profile.

# Text2ParkMe - Usage

In **Parking Management**, hover over **Permit Management, Temporary Permits,** and click '**Text2ParkMe**' then '**Current Usage'**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/zF0image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/zF0image.png)

This will take you to the **Text2ParkMe - Usage** page where you can enter information to get the usage report that you want to view.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/5oPimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/5oPimage.png)

Enter in the information that you want to search - ***User, Plate, Lot, and/or start/end date***.

Select the **Search** button to create the report. The report will appear below where the search criteria were entered.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/WO6image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/WO6image.png)

The **Username link** will take you to the user's profile.

# Refundable Parking Deposits

## Setup Deposit Options

Setup and manage your Deposit options.

## Apply Deposit Types

Now that your deposit types are in place, they can be applied to specific lots. To do so, go to the **Parking Management Menu** and hover over **Lot Administration**, then click on **Pricing and Lot Admin**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2025-05/scaled-1680-/Au3image.png)](https://opscom.wiki/uploads/images/gallery/2025-05/Au3image.png)

Once in **Pricing and Administration**, select the lot you wish to apply the deposit to by clicking on the lot name.

[![image.png](https://opscom.wiki/uploads/images/gallery/2025-05/scaled-1680-/image.png)](https://opscom.wiki/uploads/images/gallery/2025-05/image.png)

Once in **Lot Administration**, select the **Standard Permits** tab to view the available deposit <span class="inline-comment-marker" data-ref="e47d95f8-1dcc-4b29-9323-cc52757dd482">types.</span>

[![image.png](https://opscom.wiki/uploads/images/gallery/2025-05/scaled-1680-/Iq9image.png)](https://opscom.wiki/uploads/images/gallery/2025-05/Iq9image.png)

From the list of **Deposits**, click the deposit you wish to apply. You can select more than one deposit type by holding the **Ctrl** or **Shift** key and selecting the deposits you wish to apply.

Once the deposit type is associated to a lot, it will then be included in the purchase of a permit in that lot for admins only.

Let's have a look at a permit purchase with deposits in place. Go to a user's profile and select the **Parking** tab.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/C2Nimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/C2Nimage.png)

Click on **Standard Parking Permit** to begin the permit purchasing process.

Select the lot you wish to register the client to. In this case we select the **Green Staff Lot East**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/ZWRimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/ZWRimage.png)

Once the lot is selected, click on **Register Permit**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/Jf3image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/Jf3image.png)

The **Confirm Parking Permit Registration** window will appear. Note the two deposits are included and listed in the **Total Owing** costs.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/RQrimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/RQrimage.png)

Click on **Purchase this Permit** to begin the payment process.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/xdBimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/xdBimage.png)

## Editing Assignable Text

In this step, the admin can record the access card and hang tag numbers. To do so, click on the **Deposit Item** name.

In this case click on **Access Card Deposit: Enter access card number here**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/w6iimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/w6iimage.png)

In the **Deposit Information** pop-up window, enter the access card number in the **Assigned Text** field and click **Update Deposit**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/2j4image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/2j4image.png)

Once entered, the number will now appear on the **Payments** screen under **Deposits**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/PPuimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/PPuimage.png)

You may now proceed with the purchase in the usual manner.

# Access Cards - Search

1\. In **Parking Management,** hover over the **'Permit Management**' icon and click **'Access Cards**' then '**Search**'.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/EZYimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/EZYimage.png)

2\. The '**Access Card Search**' screen is displayed. Select the **Lot name** that you want to search. Note, only lots that have access cards associated with it will be listed in the Lot Name drop-down menu.

Enter the **Access Card Range** and click the '**Retrieve'** button. Any access cards that match your search will appear below the search criteria.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/nU0image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/nU0image.png)

# Hang Tag Printing

In **Parking Management**, hover over the **Permit Management** icon, and click **Hang Tag Printing.**

The **Vehicle Hang Tag Printing** screen will display.

- Select the **Semester** from the drop-down menu.
- Select the files that you want to retrieve for printing.
- Enable the checkbox *if you only to print tags for which the payment has been fully processed*.
- Select the **Permit Lot Name** from the drop-down menu or enable the checkbox to disregard the lot type.
- Select the distribution method and the permitted range.
- Click the **Retrieve** button to submit the search criteria.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/xg6image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/xg6image.png)

The results will display below the search criteria. Note, <span class="legacy-color-text-default">permits paid by Payroll Deduction will be highlighted.</span>

- <span class="legacy-color-text-default">Click the **Username** link to see an overview of the user. You can select the User Profile icon to open the user profile.</span>
- <span class="legacy-color-text-default">Click the **Permit Number** link to see parking permit information.</span>

<span class="legacy-color-text-default">Enable the Email checkbox(es) to chose users to send the hang tag by email to. Click the **Email Selected** button, then fill in the details of your email. </span>

<span class="legacy-color-text-default">To </span>**print hang tags**<span class="legacy-color-text-default">, enable the **P**</span><span class="legacy-color-text-default">**rint checkbox(es)**. If you wish to print hang tags for all users, click the **Select All** button. Click the **Deselect All** button to clear all selections. If you do not want to include an expiry date on the permits being printed, ensure that the 'Do not print date' checkbox is enabled. Otherwise, select the expiry date to be printed on the hangtag and click the **Print Selected Hang Tags** button.</span>

<span class="legacy-color-text-default">This will open up a new window displaying the username and address (positioned to fit in a windowed envelope) in the top left, the lot long name and permit number in the top right as well as the actual permit at the bottom.</span>

<span class="legacy-color-text-default">Note, some organizations use perforated paper to make it easier to remove the permits to be laminated. The empty space on both sides of the paper can be pre-printed to provide parking information, rules and regulations to your users. Some organizations will also purchase holograms to go on the permit as well.</span>

## <span class="legacy-color-text-default">Expected Results</span>

Important

In order for the correct address to display on the hangtag, you will need to have the **Mail Permit to** selected on the user's profile, and the appropriate address filled out. For example, if you select **Local Mailing Address** and the user only has their **Personal Mailing Address** completed, the user's address will not be printed to the hangtag. (See **Edit User Profile - Profile Tab**)

<span class="legacy-color-text-default">After printing the hangtag and placing it in its cover, the completed print job could look something like this:   
</span>

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/eakimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/eakimage.png)

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/GnWimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/GnWimage.png)

<span class="legacy-color-text-default">Select the print option from your browser (Ctrl+P is the print shortcut). A sample printed parking permit front and back would look similar to this:  
</span>

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/bGlimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/bGlimage.png)

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/vVIimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/vVIimage.png)

## Printer Settings 

Below are sample margin settings.

<div class="table-wrap" id="bkmrk-margins-inches-milli"><table class="wrapped confluenceTable tablesorter tablesorter-default" role="grid"><thead><tr class="tablesorter-headerRow" role="row"><th aria-disabled="false" aria-label="Margins: No sort applied, activate to apply an ascending sort" aria-sort="none" class="confluenceTh tablesorter-header sortableHeader tablesorter-headerUnSorted" data-column="0" role="columnheader" scope="col" tabindex="0">Margins

</th><th aria-disabled="false" aria-label="Inches: No sort applied, activate to apply an ascending sort" aria-sort="none" class="confluenceTh tablesorter-header sortableHeader tablesorter-headerUnSorted" data-column="1" role="columnheader" scope="col" tabindex="0">Inches

</th><th aria-disabled="false" aria-label="Millimetres: No sort applied, activate to apply an ascending sort" aria-sort="none" class="confluenceTh tablesorter-header sortableHeader tablesorter-headerUnSorted" colspan="1" data-column="2" role="columnheader" scope="col" tabindex="0">Millimeters

</th></tr></thead><tbody aria-live="polite" aria-relevant="all"><tr role="row"><td class="confluenceTd">Left

</td><td class="confluenceTd">0.88

</td><td class="confluenceTd" colspan="1">22.35

</td></tr><tr role="row"><td class="confluenceTd">Right

</td><td class="confluenceTd">0.254

</td><td class="confluenceTd" colspan="1">6.45

</td></tr><tr role="row"><td class="confluenceTd">Top

</td><td class="confluenceTd">0.96

</td><td class="confluenceTd" colspan="1">24.38

</td></tr><tr role="row"><td class="confluenceTd" colspan="1">Bottom

</td><td class="confluenceTd" colspan="1">0.169

</td><td class="confluenceTd" colspan="1">4.29

</td></tr></tbody></table>

</div>Do not select "Shrink to Fit" and instead always use "100%".

# Temporary Permit Printing

1\. In **Parking Management**, hover over the **Permits** icon and click '**Temp Permit Printing**'.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/zUDimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/zUDimage.png)

2\. In the **Retrieve** drop-down menu, select the permits that you want. Select the **Permit Lot** that you want. Enter the Start Date and the Up to and Including date and select the **Retrieve** button. The results will appear below the search criteria.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/jxqimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/jxqimage.png)

3\. Select the checkbox for the permits you wish to print and press “**print selected hang tags**” button. Below is a sample Temp Permit.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/RENimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/RENimage.png)

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/A1Uimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/A1Uimage.png)

Note, temp permits can also be printed by going to a user's history. Under the Temp Permit section, under the Permit #, select the printer icon to print just that one permit.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/Kzximage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/Kzximage.png)

# Releasing a Permit

1. If you know the permit number perform a permit search. If you do not know the permit number, go to the user profile for whom you wish to release a permit.  
    Click on the **permit number** on the user dashboard.  
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/Qt7image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/Qt7image.png)
2. From the permit detail click on the **permit number.**  
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/xpNimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/xpNimage.png)
3. You will be taken to permit search where you can release the permit  
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/oKzimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/oKzimage.png)
4. It is advisable to leave a comment in order to track the reason the permit was released. Click **Release This Permit.**  
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/tssimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/tssimage.png)
5. A pop up window will appear. Click **OK** to confirm the release of the permit.  
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/booimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/booimage.png)
6. A confirmation message will appear.  
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/ftSimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/ftSimage.png)
7. Now when you search the permit it will appear as available.  
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/Dv3image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/Dv3image.png)

# Clearing Items Awaiting Payment - Midnight List

<p class="callout info">If enabled, there is a System task that will clear all permits that are sitting in user's carts without any payments or promises to pay on them. Permits that have been **rolled over (renewed)** or permits assigned through **managed waitlist** are <span style="text-decoration: underline;">**excluded**</span> from this process. Additionally, **Zero dollar** items will <span style="text-decoration: underline;">not</span> be able to be cleared this way. Instead, use the **Mark Items as Paid** functionality to clear these payments. </p>

<span style="color: rgb(0, 0, 0); font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Oxygen, Ubuntu, Roboto, Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; font-size: 2.333em; font-weight: 400;">Viewing Permits without Payments</span>

1. Click **Parking Management**, hover over **Reports,** and click **Midnight List**.
2. On the report you can see all users with permits in their cart that do not have a payment associated. You can do the following from this report:

- - See items to be cleared
    - Email the affected users
    - Clear their flag to take them off the list and update the list  
          
        [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/SSuimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/SSuimage.png)

### Viewing Lockers without Payments

1. Click **Locker Management**, and click **Midnight List**.
2. On the report you can see all users with permits in their cart that do not have a payment associated. You can do the following from this report:

- - See items to be cleared
    - Email the affected users
    - Clear their flag to take them off the list and update the list

### Setting Up to Automatically Clear Permits without Payments

<p class="callout warning">If you do not see the settings mentioned below, please contact <support@ops-com.com> to have them enabled for you. You will need the permission of your Primary Admin.</p>

1. Click **System Configuration**, hover over **System Setting,** and click **Permits**.
2. Click to toggle **Clear Unpaid Permits** on.
3. Click **Payments**.
4. Change the **Clear Payments After X Hours** value to the number of hours you want to allow items to remain in the user's cart. Use numbers only
5. Follow the instructions in [this wiki article](https://opscom.wiki/books/setup-configuration-for-admins/page/managing-recurring-and-onetime-system-tasks) to toggle on the **Clear - No Payment** scheduled task.

### Setting Up to Automatically Clear Lockers without Payments

<p class="callout warning">If you do not see the settings mentioned below, please contact <support@ops-com.com> to have them enabled for you. You will need the permission of your Primary Admin.</p>

1. Click **System Configuration**, and hover over **System Settings.**
2. Click **Lockers**.
3. Click to toggle **Clear Unpaid Lockers at Midnight** on.
4. Change the **Clear Payments After X Hours** value to the number of hours you want to allow items to remain in the user's cart. Use numbers only
5. Follow the instructions in [this wiki article](https://opscom.wiki/books/setup-configuration-for-admins/page/managing-recurring-and-onetime-system-tasks) to toggle on the **Clear - No Payment** scheduled task.

# Permit Waitlist Feature Overview

<p class="callout info">**Welcome to the OPSCOM Waitlist Feature!**  
This feature allows administrators to manage users waiting to purchase a permit in a specific lot or in a lot category. If enabled, this feature can save your team significant administrative time and ensure a fair allocation process.</p>

#### How Does the OPSCOM Waitlist Work?  


There are two different ways you can leverage the Waitlist. You can use the waitlist report or you can enable the Managed Waitlist functionality.

##### [Basic Waitlist Report](https://opscom.wiki/books/the-opscom-admin-portal/page/using-the-basic-waitlist-report)

When a user joins a waitlist, Admins can access a report to see the waitlists by lot, link to the user's profile or email users individually or in bulk.

##### [Managed Waitlist Functionality](https://opscom.wiki/books/the-opscom-admin-portal/page/managed-wait-list)

If Managed Waitlist is enabled, the Admin will be notified when a permit becomes available to be assigned to users on a waitlist. It will automatically be reserved to be assigned to the users on the waitlist. The admin will be able to choose who to assign this permit to add it to the user's cart. The Admin will email the user and give them a specific amount of time to pay for the permit before it expires and can be given to someone else.

Go to the linked pages to explore how to setup and work with either the Basic or Managed Waitlist functionality.

# Rollover: Auto Selection and Automatically Processing Payments

## <span data-colorid="l6u8mz9s8b">Using Credit Cards on File to Purchase Recurring Permits</span>

There are two prerequisites to this function working correctly for credit card purchases on rollover. The user **must have a valid credit card registered in the system,** and the card must be **designated as the Prime Credit Card**.

<p class="callout info">If you are accepting Credit cards that you wish to charge on rollover, you must have a Gateway that allows you to charge client cards directly. This cannot work for a system that is set for Hosted Payments only.</p>

### Performing Permit Rollovers

Hover over **Permits**, then select **Process Payments for Rollovers**.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/jAmimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/jAmimage.png)

The **Rollover Payment Processing** page will be displayed as seen in the image below.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/mBUimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/mBUimage.png)

To select which payments will be done click the check box with the payment type. If the invoice or permit says "None Set" then the user must process the payment to get the permit in the next sales window.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/6Foimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/6Foimage.png)

Select the '**Process Payments for Rollovers**' button

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/ZTcimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/ZTcimage.png)

##### Visual Cues &amp; Status Indicators

- **Lock Pad Icon**: Displayed on the right side of the **Process Payments for Rollover** screen. This indicates that a previous payment attempt was initiated but did not reach a finalized "Paid" or "Cancelled" state, often due to a **Declined - Retry later** response from the processor.

### Resolving a Locked Permit

If a permit is locked and cannot be processed through the standard rollover screen, follow these steps to clear the lock and complete the transaction:

1. Navigate to the **User Profile** of the individual associated with the locked permit.
2. Access the user's **Cart** or **Pending Items**.
3. Select the permit item that is currently locked in the rollover report.
4. Proceed to **Checkout** and manually process the payment using the user's preferred method (e.g., Credit Card, Cash, or Account Credit).
5. Verify the transaction is successful. Once the item is marked as paid in the user's account, it will automatically be removed from the locked status in the **Process Payments for Rollover** screen.

---

### <span style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations</span>

<p class="callout warning"><span style="color: rgb(0, 0, 0);">A locked permit indicates an incomplete transaction. Do not attempt to re-process the payment through the rollover screen until the lock has been cleared via the user's account, as this may result in errors.</span></p>

- **Monitor rollover reports monthly** to identify any lock pad icons, ensuring that all recurring permit payments have been successfully captured.
- **Investigate "Declined" messages** immediately by contacting the user to verify their credit card information or suggesting they contact their bank.
- **Redirect payment to the User Profile** when a lock occurs; manual intervention through the user's cart is the primary method for clearing a processing lock.
- **Allow for processing time** if a generic error occurs, as some records may take a short period to clear the payment gateway's communication buffer before they can be re-attempted.
- **Confirm successful payment** in the user's transaction history before attempting any further administrative actions on the permit to ensure data integrity.

# Preventing Permit Rollover after Cancellation

Purchase a permit as an Administrator for any user. Locate the permit on the **Profile** page and click the permit button to reveal the **Parking Permit Information** window.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/1OPimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/1OPimage.png)

 Change the **Rollover State** to **Prevent Rollover**. Enter a comment to explain why you are changing the state. This is mandatory.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/ZWcimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/ZWcimage.png)

Click Update Permit.

A message will display to let you know you have changed the flag.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/5tMimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/5tMimage.png)

You should also add notes to indicate why the flag was changed.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/KBsimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/KBsimage.png)

The process is almost the same for the user portal. An end user can set their permit to not renewing. Simply find the permit on the User Dashboard and click on the permit button.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/5suimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/5suimage.png)

Select **Not Renewing** from the dropdown list in Permit Information.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/Cucimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/Cucimage.png)

When you process the rollovers, this permit will not show up in the list. Instead, it will show up in a separate list called **"Permits that will not be rolled over."**

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/0EDimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/0EDimage.png)

# Enabling Permit Rollovers without Previous Payment

1. Hover over the **System Config** menu and click **System Settings**.  
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/aGsimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/aGsimage.png)
2. The '**Manage System Settings**' window is displayed. Click **Permits** and disable the checkbox next to '**Require Payment for Rollovers**'. This setting will be on by default.  
    [![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/Jftimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/Jftimage.png)
3. Click the **'Save Settings**' button.
4. Proceed with Rollovers to the next allocation period.

# Feature Overview - Rollover/Renew Permits

<p class="callout info">**Permit rollovers**, also referred to as **renewals**, describe the process of transitioning an existing permit from its current, expiring validity period to a subsequent, new sales window. This procedure effectively establishes a new duration for which the permit remains valid and involves the requisite charge for this extended period.   
  
This is crucial for maintaining continuous parking access for patrons, especially those on payroll deduction or with credit cards on file that can be automatically charged. It's designed to manage active permits from a current sales window into a future sales window, establishing a new duration for which the permit remains valid and involving the requisite charge for this extended period.   
  
For instance, consider a monthly permit holder. Their permit is initially configured within a January sales window, granting validity from January 1st to January 31st, at a cost of $100 for the month. In late January, this permit can be rolled over into a February sales window. This action sets the permit's new valid period from February 1st to February 28th, with an additional charge of $100 applied to the permit holder for the month of February.</p>

The rollover process in OPSCOM involves several key steps and configurations:

- **Sales Window Setup**: Before any rollover can be performed, ensure your new sales window has a start date equal to or greater than the end date of the previous sales window.
- **Permit Renewal Initiation**: Administrators use the Permit Renewals utility to select which sales windows and user types will be included in the rollover.
- **Permit Selection &amp; Exclusions**: Administrators can review and select specific lots and even individual permits to include or exclude from the rollover process.
- **Payment Processing**: For users with payment subscriptions (payroll deduction, EFT, credit card) set up, payments can be processed automatically as part of the rollover.
- **User Notifications (Implicit)**: While not explicitly detailed as a setup, users with payment subscriptions can have their payments processed automatically, implying a streamlined experience. Users who need to make manual payments will be required to do so to secure their permit.
- **Prevention**: Both administrators and users have options to prevent specific permits from rolling over.

To ensure a smooth permit rollover, you'll need:

- A new sales window set up correctly. [Refer to the Sales Window wiki article](https://opscom.wiki/books/the-opscom-admin-portal/page/permit-sales-window-management) to learn more.
- Permits marked as renewable in the previous sales window.

Before attempting rollovers, please follow the steps in these wiki articles to ensure you have activated the correct Sales Window and that you have your information correctly set up for automatic payments.

For parkers with subscriptions, automatic payments can be processed as part of the rollover. This applies to patrons who pay by payroll deduction or credit card.

**For Credit Card Payments:** For automatic credit card processing on rollover, the user must have a valid credit card registered in the system, and it must be set as their **Prime Credit Card**. Note that your payment gateway must allow direct charging of client cards; this won't work with hosted payments only.

Automatic Permit Payments on Rollover/Renewal

Parkers with subscriptions setup in their account

Patrons who pay by payroll deduction or through credit card purchases can also have their payments processed automatically as part of the rollover process.

### Performing Permit Rollovers

To begin a rollover:

1. Hover over **Permits** (Clock icon) and click **Sales Window**.
2. Click the **Rollover** button to open the **Permit Renewal** page**.**

<p class="callout warning">Before a rollover can be performed you must make sure that the new sales window you are rolling into has a start date that is equal to or greater than the end date of your previous sales window.</p>

##### <span style="text-decoration: underline;">Select Rollover Options</span>

1. From the permit Renewal window select the current sales window you are rolling over **from** (From Sales Window) on the left side of the form.
2. Then select the Sales Window you wish to roll the permits into. In our example we are rolling permits from the October Sales Window to the November Sales Window.
3. Select what user types we wish to roll over, or simply leave it as the default of **All User Types.**
4. Click on **Show Lots** to list all lots that can be rolled over in the selected Sales Window. The list of lots will appear below the search form.

##### <span style="text-decoration: underline;">Managing Individual Permits for Rollover</span>

You can choose to include or exclude specific permits from the rollover.

1. To see the list of permits you can toggle for renewability, click either the **Holders** or **Renewing** button.
2. A list of permits in that lot will appear, allowing you to toggle whether they should be renewable or not. For example, if permits STAFF1000 and STAFF1001 are not renewing, they shouldn't roll over.
3. Click **Update Permits** to save your changes.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/PLRimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/PLRimage.png)

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/tk9image.png)](https://opscom.wiki/uploads/images/gallery/2024-06/tk9image.png)

6\. Click **Update Permits** to save your changes.

Here's the logic for permit rollover states:

<div class="columnLayout single" data-layout="single" id="bkmrk-state-current-permit"><div class="cell normal" data-type="normal"><div class="innerCell"><div class="table-wrap"><table class="relative-table wrapped confluenceTable tablesorter tablesorter-default" role="grid" style="width: 103.929%; height: 542.406px;"><colgroup><col style="width: 11.919%;"></col><col style="width: 11.5614%;"></col><col style="width: 10.1311%;"></col><col style="width: 10.2499%;"></col><col style="width: 56.1387%;"></col></colgroup><thead><tr class="tablesorter-headerRow" role="row" style="height: 139.656px;"><th aria-disabled="false" aria-label="State: No sort applied, activate to apply an ascending sort" aria-sort="none" class="confluenceTh tablesorter-header sortableHeader tablesorter-headerUnSorted" data-column="0" role="columnheader" scope="col" style="height: 139.656px;" tabindex="0">State</th><th aria-disabled="false" aria-label="Current Permit Renewing(prevent_rollover = 0): No sort applied, activate to apply an ascending sort" aria-sort="none" class="confluenceTh tablesorter-header sortableHeader tablesorter-headerUnSorted" data-column="1" role="columnheader" scope="col" style="height: 139.656px;" tabindex="0">Current Permit Renewing  
(prevent rollover = 0)</th><th aria-disabled="false" aria-label="User exists in target Sale Window: No sort applied, activate to apply an ascending sort" aria-sort="none" class="confluenceTh tablesorter-header sortableHeader tablesorter-headerUnSorted" data-column="2" role="columnheader" scope="col" style="height: 139.656px;" tabindex="0">User exists in target Sale Window</th><th aria-disabled="false" aria-label="Permit exists in target Sale Window: No sort applied, activate to apply an ascending sort" aria-sort="none" class="confluenceTh tablesorter-header sortableHeader tablesorter-headerUnSorted" data-column="3" role="columnheader" scope="col" style="height: 139.656px;" tabindex="0">Permit exists in target Sale Window</th><th aria-disabled="false" aria-label="Notes: No sort applied, activate to apply an ascending sort" aria-sort="none" class="confluenceTh tablesorter-header sortableHeader tablesorter-headerUnSorted" data-column="4" role="columnheader" scope="col" style="height: 139.656px;" tabindex="0">Notes</th></tr></thead><tbody aria-live="polite" aria-relevant="all"><tr role="row" style="height: 55.2188px;"><td class="confluenceTd" style="height: 55.2188px;">Renewing</td><td class="confluenceTd" style="height: 55.2188px;">True</td><td class="confluenceTd" style="height: 55.2188px;">False</td><td class="confluenceTd" style="height: 55.2188px;">False</td><td class="confluenceTd" style="height: 55.2188px;">Neither the user, nor the permit exists, but the current permit is set to be renewed.</td></tr><tr role="row" style="height: 118.547px;"><td class="confluenceTd" style="height: 118.547px;">Blocked</td><td class="confluenceTd" style="height: 118.547px;">True</td><td class="confluenceTd" style="height: 118.547px;">False</td><td class="confluenceTd" style="height: 118.547px;">True</td><td class="confluenceTd" style="height: 118.547px;">The permit exists in the target sale window, but the user doesn't. This means anywhere for any permit in the lot. If the user has multiple permits and some of them renewed, then they technically are not blocked. If the user has been given a different permit, they also are not blocked.</td></tr><tr role="row" style="height: 76.3281px;"><td class="confluenceTd" style="height: 76.3281px;">Renewed</td><td class="confluenceTd" style="height: 76.3281px;">True</td><td class="confluenceTd" style="height: 76.3281px;">True</td><td class="confluenceTd" style="height: 76.3281px;">N/A</td><td class="confluenceTd" style="height: 76.3281px;">The user is considered renewed when they exist in the target sale window. Just like the note for blocked, it's not intended to be good for users with multiple permits.</td></tr><tr role="row" style="height: 76.3281px;"><td class="confluenceTd" style="height: 76.3281px;">Not Renewing</td><td class="confluenceTd" style="height: 76.3281px;">False</td><td class="confluenceTd" style="height: 76.3281px;">False</td><td class="confluenceTd" style="height: 76.3281px;">N/A</td><td class="confluenceTd" style="height: 76.3281px;">The user was not found in the target sale window and their permit is also not renewing. This is the expected scenario.</td></tr><tr role="row" style="height: 76.3281px;"><td class="confluenceTd" style="height: 76.3281px;">Not Renewing, but Exists</td><td class="confluenceTd" style="height: 76.3281px;">False</td><td class="confluenceTd" style="height: 76.3281px;">True</td><td class="confluenceTd" style="height: 76.3281px;">N/A</td><td class="confluenceTd" style="height: 76.3281px;">The user WAS found and their permit is not renewing. This could use some investigation to make sure that the user is supposed to have that permit or not.</td></tr></tbody></table>

</div></div></div></div>Once you've completed this process for all lots you want to include in the rollover, click **Renew Permits** to continue. The screen will refresh and update the permit counts. Permits you toggled for rollover will appear as rolled over, while those marked as not renewing will remain in the "Not Renewed" column and will be available for new users.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/2WIimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/2WIimage.png)

### Permit Processing

The system automatically rolls over permits paid through gateway payment types like Mastercard, Visa, or Payroll Deduction. Users whose permits are rolled over but don't have an active payment subscription will need to make a payment to secure their permit. These Parkers will see the permit show up in their cart on the User Portal as unpaid. However, if a user has a [payment subscription set up](https://opscom.wiki/books/the-opscom-admin-portal/page/payment-management-subscriptions), their permit will be rolled over, and the payment will be processed automatically.

The **Process Payment** option will be automatically toggled on, and the **Credit Card Type** will appear for users whose payments can be processed automatically. <span style="background-color: rgb(251, 238, 184);">If someone isn't continuing to park in a lot, simply uncheck the corresponding checkbox under **Rollover** to exclude them.</span>

Click **Rollover Permits** to complete the process. Remember, you'll need subscriptions set up for payroll deductions, EFT, or credit card payments. You can prevent permits from rolling over by setting their renewable flag.

## Exporting Users to Rollover

After clicking the **Rollover Permits** we can also choose to export an excel spreadsheet of all the users that are associated with the lot we have selected. To do this we click **Export Users** on the **Permit Rollover** page.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/MyRimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/MyRimage.png)

This will open a new window that generates the excel document for us to open depending on the browser you are using. You may be warned that the file is corrupt in some way however you should still be able to view the output in Excel's protective view.

---

## Automated User Notifications

To streamline the renewal experience and reduce manual support inquiries, OPSCOM now includes automated email triggers that fire upon the completion of the rollover task.

### User-Facing Notifications

When the system task processes the rollover, users are automatically notified based on the outcome of their transaction. These templates can be customized via the **Email Templates** page:

- **Payment Success:** If the payment (Credit Card, Payroll, etc.) is successful, the user receives a confirmation email along with their digital receipt.
- **Payment Failure:** If a payment is declined (e.g., expired card, insufficient funds), the user receives a failure notification advising them of the error so they can take manual action to secure their permit.
- **Audit Trail:** A record of these emails is associated directly with the user’s account profile, allowing administrators to verify communication history if a patron claims they were not notified.

### Administrative Alerts for Email Failures

In the event that a user’s permit is processed but they have an **invalid or missing email address**, the system ensures the administrator is kept in the loop.

The administrator who initiated the rollover will receive a summary email containing a list of all users who did not receive their receipts or alerts. This administrative digest includes:

- **Direct Links:** Clickable links to the affected user accounts.
- **Transaction Details:** Links to the specific payments via confirmation codes for quick reconciliation.

### Important Technical Notes

- **Task Processing Delay:** Please note that the rollover action is executed by a background system task. Emails are not sent the instant you click the button; there will be a short delay between clicking **Rollover Permits** and the dispatch of the success/failure notifications.

---

### <span style="color: rgb(22, 145, 121);">Tips for a Smooth Rollout</span>

1. <span style="color: rgb(22, 145, 121);">**Configure Templates:** Before performing your next rollover, visit the **Email Templates** page to update the wording for the two new permit renewal templates.</span>
2. <span style="color: rgb(22, 145, 121);">**Verify Admin Email:** Ensure your administrator account has a valid email address, as this is where the "Failure to Deliver" summary will be sent.</span>
3. <span style="color: rgb(22, 145, 121);">**Check Payment Gateways:** Remember that automatic credit card receipts only trigger if your payment gateway supports direct charging (as opposed to hosted-only payments).</span>

---

## Related Video

<iframe class="youtube-player conf-macro output-block" data-hasbody="false" data-macro-id="f5e659b8-dbe4-4c0f-896e-0e56beabc3d5" data-macro-name="widget" frameborder="0" height="268" src="https://www.youtube.com/embed/R02qrltP3RM?wmode=opaque" style="width: 536px; height: 268px;" width="536"></iframe>

# Single Allocate

<p class="callout info">This allows you to add individual permits to lots instead of adding an entire range as in the previous section.</p>

##### **Quick Steps:**

1. Hover over **Parking Management** then **Lot Administration** and Select **Allocate**.
2. Find the lot to add the permit to.
3. Click **Add Permits To Lot**.
4. Enter the permit number.
5. Click **Add Permits**.

##### **Step-by-Step Instructions:**

1. **Navigate to Permit Number Allocation page**: Hover over the **Parking Management** icon in the system and then hover over **Lot Administration**, then click on **Allocate**.
2. **Locate the Desired Lot**: On the **Permit Number** **Allocation** page, find the lot you want to add a permit to.
3. **Add Permit to Lot**: Click the **Add Permits To Lot** button.
4. **Enter Permit Information**: In the **Add Permits** screen, type in the permit number. For example, you could add permit **0023** to the **123 Main Street Lot**.
5. **Confirm Addition**: A pop-up message will confirm that your changes were successfully made.
6. **Check the Permit List**: Once the permits are added, your lot will display them in the **Permit Search** utility.

# Setting Up A Lot To Be Visible and Available To The End User

<p class="callout info">This article outlines the six critical factors that determine a lot's visibility and availability to end-users when they are purchasing permits in OPSCOM. Understanding and configuring these settings correctly is essential for OPSCOM administrators to ensure that parking lots are accessible to the intended user groups.</p>

### Setup &amp; Configuration

##### <span style="text-decoration: underline;">System-Wide Visibility Setting</span>

1. 1. Hover over **System Configuration** and click **System Settings**.
    2. Click on the **Permits** tab.
    3. Locate the **Show Only Visible lots** setting. 
        - **Enable** this checkbox to only view lots marked as "Visible" across the system.
        - **Disable** this checkbox to view both visible and non-visible lots in administrative views.

##### <span style="text-decoration: underline;">Lot Visibility and User Type Settings</span>

1. Hover over **Parking Management**, **Lot Administration** and click **Pricing &amp; Lot Admin**.
2. Click **Add New Lot** (or click an existing **Lot Name** to edit).
3. On the **General** tab: 
    - Enable the **Visible** radio button in the **Visibility to User** setting.
    - In the **Lot Access** section, select the appropriate **User Types** that are allowed to see and purchase permits for this lot. Hold the **Ctrl** key to select multiple user types.
    - Click **Update Lot**.
4. On the **Temporary Permits** tab:
    
    
    - Disable the T**his lot is for temporary parking only** checkbox.

##### <span style="text-decoration: underline;">Allocate Permits to the Lot</span>

1. Follow the steps [in this wiki article](https://opscom.wiki/books/the-opscom-admin-portal/page/adding-permits-to-a-lot) to add and verify your permits.

##### <span style="text-decoration: underline;">Set Up a Permit Sales Window</span>

1. Follow the steps [in this wiki article](https://opscom.wiki/books/the-opscom-admin-portal/page/permit-sales-window-management) to setup your Sales Window.
2. 

##### <span style="text-decoration: underline;">Test with a User</span>

1. Hover over **User Management** and click on **User Registration** (to create a new test user) or **User Search** (to find an existing one).
2. Ensure that the test user's **User Type** (e.g., Full Time Staff) matches one of the user types you allowed to access the lot you setup.
3. Click **Login as User** for your test user.
4. On the User-Side Dashboard, navigate to **Permits**.
5. Check if the lot you created is available to be reserved. If the user type you are testing does not match the lot's allowed user types, the lot will not be visible on the user side.

---

### <span style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Test Thoroughly**: Always perform a **Login as User** test with various user types after configuring a new lot or modifying its settings. This ensures that visibility and availability match your intentions.</span>
- <span style="color: rgb(22, 145, 121);">**User Type Alignment**: The most common reason a lot isn't visible is a mismatch between the lot's **User Types** setting and the logged-in user's actual user type. Double-check this setting carefully.</span>
- <span style="color: rgb(22, 145, 121);">**Sales Window Dates**: Ensure your permit sales windows are always current. An expired sales window will make the lot unavailable, even if all other settings are correct.</span>
- <span style="color: rgb(22, 145, 121);">**Permit Allocation**: A lot without allocated permits, even if visible, will not allow users to purchase permits, as there's nothing to sell. Always allocate permits after lot creation.</span>
- <span style="color: rgb(22, 145, 121);">**Clear Naming Conventions**: Use descriptive **Lot Names** and **Lot Short Names** that clearly indicate the lot's purpose or location to users.</span>

# Permit Sales Window Management

<p class="callout info">**Permit Sales Windows** in OPSCOM define the specific timeframes during which parking permits can be purchased and when they are valid. This article guides OPSCOM administrators through the process of creating and activating new permit sales windows, ensuring that permits are available for sale and valid for use according to your organization's academic terms or operational periods.</p>

The **Manage Permit Sales Window** page allows you to create, configure, and activate sales windows.

### Creating a New Sales Window

1. Hover over **Parking Management**, and click **Sales Windows**.
2. Click the **+Add Sale Window** button.
    
    
    - Enter a Name for your sales window.
    - Choose your allocation type: Will it be Monthly, Yearly, Semester or Other?
    - Enter your Sale Start Date, Permit Start Date and End Date (see the **Defining your Key Dates** section below).
    - Choose a color for your sales window.
3. Click **Save Changes** to save your information. The newly created sales window will now appear in the list on the **Manage Permit Sales Window** page.

[![image.png](https://opscom.wiki/uploads/images/gallery/2025-05/scaled-1680-/DGAimage.png)](https://opscom.wiki/uploads/images/gallery/2025-05/DGAimage.png)

##### <span style="text-decoration: underline;">Defining your Key Dates</span>

When creating a new sales window, you will need to define the following key dates:

- **Sale Start Date**: 
    - **Purpose**: This is the first day that permits associated with this sales window will be available for purchase by users.
    - **Example**: December 29, 2025.
- **Permit Start Date**: 
    - **Purpose**: This is the first day the purchased permit becomes officially valid and usable (e.g., scannable, recognized by LPR). This allows for pre-selling permits before their validity period begins.
    - **Example**: January 1, 2026.
- **End Date**: 
    - **Purpose**: This is the official last day permits can be sold within this sales window, and also the date on which the permits become invalid.
    - **Example**: December 31, 2026.

<p class="callout info">**Example Scenario**: If a sales window is configured with a **Sale Start Date** of December 29, 2025, a **Permit Start Date** of January 1, 2026, and an **End Date** of December 31, 2026:  
 • Permits can be purchased anytime between December 29, 2025, and December 31, 2026.  
 • These permits would be *valid* from January 1, 2026, to December 31, 2026.</p>

---

### Activating the Sales Window

Once a sales window has been configured, it needs to be made **Active** for permits to be sold.

1. Locate the sales window you wish to activate on the **Manage Permit Sales Window** screen.
2. In the **Active** column, click the dropdown menu for that sales window.
3. Choose **Active**.

<p class="callout warning">**Note:** If you activate a yearly sales window, other existing yearly sales windows will automatically switch to **Inactive** to prevent conflicts.</p>

---

### <span style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Overlap Prevention**: Carefully manage sales window dates to avoid unintended overlaps that could confuse users or create accounting issues.</span>
- <span style="color: rgb(22, 145, 121);">**Future Planning**: Create sales windows well in advance of the sale start date to allow ample time for configuration, testing, and marketing of permits.</span>
- <span style="color: rgb(22, 145, 121);">**Expiration Management**: Regularly review the **End Date** of your sales windows. Past sales windows will be located under **Past Permit Sales Window** and cannot be reactivated; a new sales window must be created if similar dates are needed.</span>
- <span style="color: rgb(22, 145, 121);">**Clarity in Naming**: Use clear and descriptive names for your sales windows (e.g., "Fall 2025-2026 Annual Permit Sales," "Spring Semester 2026").</span>

# Adding Permits to a Lot (Allocation)

<p class="callout info">This article outlines the process for OPSCOM administrators to add permits to specific parking lots. Permits can be added individually, as a sequential range, or with custom prefixes/postfixes, enabling efficient management of your permit inventory and ensuring lots have available permits for sale.</p>

### Using this Feature

1. Hover over **Parking Management**, **Lot Administration** and click **Allocate**.
2. The **Permit Number Allocation** page lists all configured parking lots.
3. Locate the specific lot to which you want to add permits and click the **Add Permits to Lot b**utton.
4. Within the next window, you have several options for entering permit numbers: 
    - **Individual Permit Numbers**: Enter specific, non-sequential permit numbers, separated by commas (e.g., **Staff01, Staff02, Visitor123**).
    - **Range of Permit Numbers**: Enter a numerical range using "to" (e.g., **1 to 20** or **50 to 200**). The system will generate all numbers within that range.
    - **Prefix or Postfix (Optional)**: 
        - **Prefix**: Enter text in the **Prefix** field (e.g., "Staff"). This text will be added *before* each generated permit number (e.g., Staff01, Staff02).
        - **Postfix**: Enter text in the **Postfix** field. This text will be added *after* each generated permit number (e.g., 01-East, 02-East).

##### <span style="text-decoration: underline;">Add Permits</span>

1. Enter the desired permit numbers, ranges, or prefixes/postfixes into the provided fields within the **Add Permits to Lot** utility.
2. Click the **Add Permits** button.
3. A confirmation pop-up will appear. Click **Add Permits** again to confirm and finalize the process.
4. A success message will confirm that your changes were successfully made.

##### <span style="text-decoration: underline;">Viewing Added Permits</span>

After permits are added, you can verify their details by navigating to the **Permit Search** utility.

1. Hover over **Permits,** and click **Permit Search**.
2. Filter by the relevant lot to view the newly added permits.

---

### <span style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Planning Permit Ranges**: Before adding large batches of permits, plan your numbering scheme to ensure consistency and avoid conflicts.</span>
- <span style="color: rgb(22, 145, 121);">**Unique Identifiers**: While OPSCOM handles uniqueness, consider using prefixes or postfixes for different types of permits or lots for easier identification.</span>
- <span style="color: rgb(22, 145, 121);">**Verify Allocation**: Always perform a quick check in the **Permit Search** utility after adding permits to confirm they have been correctly allocated to the desired lot.</span>
- <span style="color: rgb(22, 145, 121);">**Bulk vs. Individual**: For small, specific additions, individual entry is efficient. For larger inventories, using ranges and prefixes/postfixes will save significant time.</span>

# Setup Lots to Use Text2ParkMe

<p class="callout info">**Text2ParkMe (T2P)** allows users to pay for temporary parking via SMS (text) messaging. Text2ParkMe will also send out reminders when their parking time is about to expire and allow users the option to extend their parking time. Text messaging fees <u>**do**</u> apply based on individual phone plans.</p>

<p class="callout info">If you have purchased Text2ParkMe, you must have a gateway provider setup to accept T2P payments. You must work with our project manager to ensure this gateway is configured and tested to work with your system. </p>

<p class="callout info">You will also <u>require</u> a T2P phone number that your users will text to obtain temporary parking. The **Operations<span class="legacy-color-text-red2">Commander</span>** Support team will ensure this number is setup and tested for you.</p>

##### **Quick Steps:**

1. Hover over **Parking Management**, then **Lot Administration** and click **Pricing &amp; Lot Admin**.
2. Click a **Lot Name** to open its settings.
3. Select the **Temporary Permits** tab.
4. Fill out all fields in the red box (especially the **Text Code**).
5. Click **Update this Lot** to save.

##### **Step-by-Step Instructions:**

1. **Navigate to the Lot Administration page:** Hover over **Parking Management** in the main menu. Click **Lot Administration** and then select **Pricing &amp; Lot Admin**.
2. **Locate your lots settings:** In the window, **click on a Lot Name** to open the specific lot's settings.
3. **Click on Temporary Permits:** Select the **Temporary Permits** tab. You will see several fields. Be sure to fill out **all the items in the red box**, as these are required. The **Text Code** is the display name that users will see when choosing this lot to park in.
4. **Save Changes:** Once all required fields are filled out, click the **Update Lot** button to save your changes.

# Permit Allocations

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-06/scaled-1680-/bVKimage.png)](https://opscom.wiki/uploads/images/gallery/2024-06/bVKimage.png)

- [Adding Permits to a Lot](https://opscom.wiki/books/the-opscom-admin-portal/page/adding-permits-to-a-lot-allocation)
- [Single Allocate](https://opscom.wiki/books/the-opscom-admin-portal/page/single-allocate)
- [Archiving and Restoring Permits](https://opscom.wiki/books/the-opscom-admin-portal/page/archiving-and-restoring-permits)

# Planning Lot Groups and Lot Zones

<p class="callout info">**Lot Groups** allows you to group similar lots together to be seen as a single entity in OPSCOM. A lot may only belong to **one** group. A lot group **is not required**<u>,</u> it exists to allow similar lots.</p>

<p class="callout info">**A Lot Zone** is a grouping mechanism **allowing validation parameters** to be applied to a lot.</p>

##### **Quick Steps:**

1. Hover over the **Parking Management,** then **Lot Administration,** and select **Pricing &amp; Lot Admin**.
2. Click on the **Lot Name**. In the **Edit Lot** page click on the **General tab.**
3. In the **General tab** select the lot group you wish to apply to your lot.
4. Hover over **System Configuration,** then **Parking,** and click **Mange Lot Zones.**
5. Click on **Add Lot Zone** and enter a long and short name.
6. Return to the **Edit Lot** page and click on **Zone &amp; Location.**
7. Choose a **Zone** to add to the lot.
8. Set the valid days/times for the zone under **Days or Range with Sales Window** and **Start Time and End Time**.
9. The lot is now linked to the zone.
10. You can assign the same zone to multiple lots (e.g., “RED Zone” to both the **Red Lot** and **Green Lot**).
11. Patrols can select either a **Lot Group** or **Lot Zone** during enforcement.

<p class="callout success">Zones allow enforcement based on time/dates, and Groups allow enforcement across multiple lots.</p>

##### **Step-by-Step Instructions:**

1. **Locate Pricing &amp; Lot Admin:** Hover over the **Parking Management,** then **Lot Administration,** and select **Pricing &amp; Lot Admin**.
2. **Locate the General Tab:** Click on the **Lot Name**. In the **Edit Lot** page, click on the **General tab.**
3. **Adding a Lot Group:** In the **General tab** select the lot group you wish to apply to your lot.
4. **How to Create a Zone:** Hover over **System Configuration**, then **Parking**, and click **Manage Lot Zones.**
    1. **Create Zone:** Click on add **Lot Zone** and enter a long and short name.
    2. **Return to the Edit Lot page:** Return to the **Edit Lot** page by going to **Pricing &amp; Lot Admin**, then click on the **Lot Name.**
    3. **Navigate to the Zone &amp; Location tab:** Click on **Zone &amp; Location.**
    4. **Select a zone:** Use the dropdown on the left to select the zone you wish to apply to the lot.
    5. **Select Days or Range within Sales Window:** Specify when the zone is valid using **Days or Range within Sales Window** and the **Start Time and End Time**.
    6. **Confirm:** Ensure any permits tied to the lot reflect the same zone settings.

# Setting Up for Event Parking

<p class="callout info">OperationsCommander has a feature that will allow you to setup for Event Parking in a unique way. Using Lot Visibility and Passwords, an event lot can only be booked by users who have been given the direct link to the lot. A direct link may be provided by email or from scanning the lot QR code.</p>

To setup your Lot Visibility settings [refer to this page](https://opscom.wiki/books/the-opscom-admin-portal/page/lot-visibility-options).

To setup your Lot Passwords, [refer to this page](https://opscom.wiki/books/the-opscom-admin-portal/page/lot-passwords).

# Pricing and Lot Admin

<p class="callout info">The **Pricing and Lot Admin** page is a central management tool for OPSCOM administrators to create new parking lots, define their characteristics, and configure pricing and permit settings. This page allows for comprehensive control over lot visibility, access, permit types (standard, temporary, flex), and advanced features like waitlists and LPR settings, helping administrators efficiently manage their parking inventory.</p>

### Pricing &amp; Lot Admin Main Page

To access the **Pricing &amp; Lot Admin** page:

1. Hover over **Parking Management,** then Lot Administration,** and click **Pricing &amp; Lot Admin**.
2. The **Permit Pricing &amp; Lot Administration** screen opens so you can manage all lot details.

<p class="callout success">**Tip:** Before setting up new lots, consider your organization's permit types, pricing structures, and any specific access restrictions (e.g., faculty-only lots, temporary parking areas).</p>

##### <span style="text-decoration: underline;">Key Information Displayed</span>

- **Lot Name**: The full name of the lot and its associated permit sales window (e.g., Monthly, Semester, Yearly, Other).
- **User Types**: The specific user types permitted to book permits for the lot.
- **Visibility**: Indicates the lot's visibility to users (e.g., **Not visible**, **Visible**, **Not visible but available**).
- **Price**: The standard base price for permits in the lot.
- **Permit types**: Icons representing the types of permits enabled for the lot (e.g., standard, temporary, flex).
- **Visible to User**: The number of permits in the lot currently available for user purchase.
- **Usage**: The number of permits currently booked or in use within the lot.

##### <span style="text-decoration: underline;">Available Actions &amp; Buttons</span>

- **Show Archived**: Click this button to view or edit lots that have been archived.
- **Add Lot**: Click this button to create a new parking lot configuration.
- **Lot Name (link)**: Click on the **Lot Name** of any listed lot to open its detailed edit page, where you can modify various settings across different tabs.
- **Export**: Click the **Export** button at the far right of each lot line to export the lot's information to an Excel file.
- **Search**: Click the **Search** button on each lot line to navigate to the permit search page and view all permits associated with that specific lot.

[![image.png](https://opscom.wiki/uploads/images/gallery/2025-04/scaled-1680-/image.png)](https://opscom.wiki/uploads/images/gallery/2025-04/image.png)

### Lot Edit Page Tabs

When you click on a **Lot Name**, the **Lot Edit Page** opens, divided into several tabs for detailed configuration:

##### <span style="text-decoration: underline;">General Tab</span>

- **Archive the Lot**: Enable the **This lot is archived** checkbox to archive the lot, making it unavailable for new sales but retaining historical data.
- [**Visibility to Users**](https://opscom.wiki/books/the-opscom-admin-portal/page/lot-visibility-options): Select one of the following options: **Visible**, **Not Visible**, or **Hidden but Accessible**.
- **Lot Name**: Enter the full, descriptive name for the lot.
- **Lot Short Name**: Enter an abbreviated name for the lot.
- [**Lot Group**](https://opscom.wiki/books/setup-configuration-for-admins/page/lot-groups-management): A<span class="legacy-color-text-blue3">llows you to group similar lots together to be seen as a single entity in OPSCOM. </span>
- **Lot Access**: Choose between: 
    - [**Common Lot**](https://opscom.wiki/books/setup-configuration-for-admins/page/common-lots): Any user type can park here.
    - [**User Type Lot**](https://opscom.wiki/books/setup-configuration-for-admins/page/user-types): Restrict access by specific user types. Hold **Ctrl** to select multiple user types from the dropdown.
- **[Lot Password](https://opscom.wiki/books/the-opscom-admin-portal/page/lot-passwords)**: Setting a password on a lot prevents users from booking a permit in that lot unless they enter the password. This is useful for event parking.
- **Special Parking Spaces:** Fill this out if your lot has special spaces like EV charging or ADA spaces.

Click **Update Lot** after making changes in this tab.

##### <span style="text-decoration: underline;">Zone &amp; Location Tab</span>

- **Location Description**: Enter a description of the lot's physical location, which will appear on the user interface.
- **Image**: Upload an image that will be displayed next to the lot name; users can click it to enlarge.
- **Zone**: Configure a zone for this lot by selecting a zone and specifying days or a range within the sales window, along with a start and end time.
- **Map Detail**: Move or **Create a Map Marker** to pinpoint the lot's location on a map. Once the marker is set, the GPS coordinates will automatically populate.

Click **Update Lot** after making changes in this tab.

##### <span style="text-decoration: underline;">Standard Permits Section</span>

- **Default Cost**: Enter the base cost for standard permits in this lot.
- **Prorated Sales**: Choose **Enabled**, **Use Default Setting**, or **Disabled** as required for prorated permit sales.
- **Multiple Permits**: Enable the **This lot can be used for a second permit** checkbox to allow users to purchase multiple permits for this lot.
- **WaitList Options**: 
    - Enable the **Allow the use of Waitlist with this lot** checkbox if you want the waitlist to be available to be joined.
    - Enable the **Only Allow Waitlist after lot is full** checkbox if you want a waitlist to become active when permits for this lot are sold out.
- **Waitlist Lot Category**: Group multiple lots together onto the same waitlist by selecting a category. This is a text field only, so use care when creating this. 
    - If a user joins a waitlist that is part of a **Lot Category**, they will be automatically added to **ALL** individual lot waitlists that are associated with that specific group.
    - Crucially, they will be assigned the **same ranking** across all these grouped waitlists. This ensures that if a permit becomes available in *any* one of the lots within that category, the user is eligible to purchase that permit.
- **Lot Sales Window**: Choose the sales window type for term permits that will be sold here (e.g., Yearly, Monthly).
- **Hang Tag Settings**: Enable settings for printing physical hang tags if required for this lot.

Click **Update Lot** after making changes in this tab.

##### <span style="text-decoration: underline;">Temporary Parking Tab</span>

- **Temporary Parking Only**: Enable the **This lot is for temporary parking only** checkbox if the lot is exclusively for temporary parking.
- **Max Permits per Day**: Set the maximum number of temporary parking permits available per day for this lot.
- **Permit Duration**: 
    - Enable **Allow temp permits up to 30 days** to limit temporary permits to 30 days.
    - Enable **Allow temp permits to be used over 30 days** to permit temporary parking for periods exceeding 30 days.
- **Permit Application to All Vehicles**: Enable **Allow all vehicles on profile to receive the permit** to automatically apply the temporary permit to all vehicles on a user’s profile.
- **Daily Cost**: Enter the maximum fee for parking beyond 6 hours (if applicable).  
    ***Note:*** *If you do not wish to have a daily fee, disable any Permit Duration settings. You can still configure hourly cost as described below.*
- **Hourly Costs**: Enter the hourly fee for parking. If the lot has a flat rate, leave these fields blank.
- **Over 30 Days Monthly Cost**: Enter the monthly cost for parking permits that extend beyond 30 days.
- **Real-Time Map**: Enable **Allow this lot to appear on the Real-Time Parking Map** to display this lot on the *Real-Time Parking Map* feature.
- **QR Code**: 
    - View the **QR Code** for this lot.
    - Access the **Link** to the QR Code.
    - **Download or Print** the QR Code directly from this page.
    - Add a **Logo Image** to be displayed in the center of the QR Code.

Click **Update Lot** after making changes in this tab.

Here is an ***example*** of how you may want to configure your temporary pricing:

[![image.png](https://opscom.wiki/uploads/images/gallery/2025-09/scaled-1680-/image.png)](https://opscom.wiki/uploads/images/gallery/2025-09/image.png)

In the above ***example***, permits will be available for ***free*** for 2 hours**, ***$5*** for **3 hours**, ***$8*** for **12 hours**, and ***$10*** for **24 hours/1 day**.

##### <span style="text-decoration: underline;">Flex Permits Tab</span>

This tab allows for flexible pricing based on specific times and days.

- **Using Flex Permits**: Click the checkbox to **Enable Flex Permits**.
- **Add New**: Click **Add New** to create a new **Time Slot** with a specified **Price** and a choice for **Colour** coding. Click **Save Changes** when complete.
- **View &amp; Edit**: You can **Edit** existing **Time Slots**, **Pricing**, or **Colours** individually by clicking the appropriate **Edit** button. Alternatively, use the **Time Slot Chart** and the **Select** button to click and drag time slot information to apply to multiple times and dates simultaneously.
- **Clear**: Click the **Clear** button to remove all pricing configurations from the chart.
- **Fill**: Click the **Fill** button to populate the chart with all the same pricing.
- **Reload**: Click **Reload** to revert the information to your previously saved settings.

Click **Update Lot** after making changes in this tab.

##### <span style="text-decoration: underline;">Lot LPR Settings Tab</span>

- **Free Parking Time**: Set a grace period during which patrons can register their license plate with a pay-by-plate meter without incurring a charge.

Click **Update Lot** after making changes in this tab.

##### <span style="text-decoration: underline;">Additional Settings Tab</span>

- **Banner Detail Code**: This field is for use strictly with the **Banner** system for specific integrations.

Click **Update Lot** after making changes in this tab.

---

### <span style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Consistent Naming**: Establish a consistent naming convention for your lots (e.g., "Lot A - Faculty," "Visitor Parking Garage") to improve clarity for both administrators and users.</span>
- <span style="color: rgb(22, 145, 121);">**Visibility Control**: Carefully consider the **Visibility to Users** setting for each lot. A lot marked **Not visible but available** is useful for administrative purposes or specific user groups, while still being accessible if the direct link is provided.</span>
- <span style="color: rgb(22, 145, 121);">**Waitlist Management**: If using waitlists, organizations should develop a clear business rule for when to remove a user from the waitlist, such as after a permit has been offered or after a user has been emailed.</span>
- <span style="color: rgb(22, 145, 121);">**QR Code Usage**: If utilizing QR codes for temporary parking, ensure they are prominently displayed and easily scannable at the lot location.</span>
- <span style="color: rgb(22, 145, 121);">**Regular Review**: Periodically review lot configurations, especially pricing and sales windows, to ensure they remain current and aligned with organizational policies.</span>

# Lot Visibility Options

<p class="callout info">OPSCOM provides enhanced control over parking lot visibility and accessibility, allowing administrators to define how and when users can view and book permits for specific lots. This article explains the three lot visibility options and their implications for both administrators and end-users, ensuring that lots can be precisely tailored for various scenarios, including event parking and restricted access.</p>

### Setup &amp; Configuration

Lot visibility is configured within the **Lot Edit Page** or the **View All Lots Page** by selecting one of three distinct options.

##### <span style="text-decoration: underline;">Configuring Visibility on the Pricing &amp; Lot Admin Page</span>

1. Hover over **Parking Management**, **Lot Administration** and click **Pricing &amp; Lot Admin**.
2. Click on the **Lot Name** you wish to configure.
3. On the **General** tab, under **Visibility to Users**, you will find three radio buttons. Select the desired option (details below).
4. Click **Update Lot** to save your changes.

##### <span style="text-decoration: underline;">Configuring Visibility on the View All Lots Page (Bulk Action)</span>

1. Hover over **Parking Management**, **Lot Administration** and click **Pricing &amp; Lot Admin**.
2. On this page, locate the **Visibility** column for each lot.
3. Click the current visibility icon next to the desired lot(s) to change the status using the radio buttons that appear.
4. This allows you to change the visibility status of multiple lots at once.[![image.png](https://opscom.wiki/uploads/images/gallery/2024-10/scaled-1680-/NMoimage.png)](https://opscom.wiki/uploads/images/gallery/2024-10/NMoimage.png)

<div id="bkmrk--3"></div>#### Legend

- ![image.png](https://opscom.wiki/uploads/images/gallery/2024-10/scaled-1680-/rNFimage.png) - lot is not visible.
- ![image.png](https://opscom.wiki/uploads/images/gallery/2024-10/scaled-1680-/PXbimage.png) - lot is visible.
- ![image.png](https://opscom.wiki/uploads/images/gallery/2024-10/scaled-1680-/HHrimage.png) - lot is hidden but accessible.

---

### Using this Feature

The three lot visibility options provide granular control over user access:

- **Not Visible**:
    
    
    - The lot is **not visible** to end-users on the permit booking page or the real-time map.
    - Users <span style="text-decoration: underline;">**cannot book permits**</span> from this lot, even with a direct link. This option is typically used for lots under construction, maintenance, or no longer in use.
- **Visible**:
    
    
    - The lot is **visible** to end-users on the permit booking page and may appear on the real-time map (if configured).
    - Users **<span style="text-decoration: underline;">can book permits</span>** from this lot, provided they meet any other access criteria (e.g., user type, sales window). This is the standard setting for publicly available lots.
- **Hidden But Accessible**:
    
    
    - The lot is **not visible** to end-users on the general permits page or the real-time map.
    - Users <span style="text-decoration: underline;">**can book permits**</span> from this lot *if* they access it through a direct link. This link can be provided via email, a webpage, or by scanning the lot's QR code.

---

### <span style="color: rgb(22, 145, 121);">Best Practices &amp; Considerations</span>

- <span style="color: rgb(22, 145, 121);">**Event Parking**: The **Hidden But Accessible** option is ideal for event parking. You can provide a direct link to event attendees, allowing them to book permits without the lot being generally visible to all users.</span>
- <span style="color: rgb(22, 145, 121);">**Combined with Passwords**: For enhanced security, combine **Hidden But Accessible** with lot passwords. This ensures that only users with both the direct link and the correct password can book permits for the lot.</span>
- <span style="color: rgb(22, 145, 121);">**User Communication**: If using **Hidden But Accessible** lots, clearly communicate how users can access the lot (e.g., "Scan this QR code," "Click the link in your email").</span>
- <span style="color: rgb(22, 145, 121);">**Audit Regularly**: Periodically review the visibility settings of your lots to ensure they align with current operational needs and access policies.</span>

<div class="notranslate" id="bkmrk--15" style="all: initial;"></div>

# Using Permit Proration

<p class="callout info">**Proration** is a permission that can be given to an admin user. It allows them to sell a permit to a user that is valid for a shorter portion of the active sales window and have the system adjust the cost of the permit accordingly. A good example is a student parker starting to park a vehicle halfway through a year or semester. </p>

##### **Quick Steps:**

1. Hover over the **Parking Management** then **Lot Administration** and select **Pricing &amp; Lot Admin**.
2. Click on the **Lot Name**.
3. In the **Edit Lot** page click on **Standard Permits** and enable **Proration** for the desired lot. Click **Update Lot** to save.
4. Hover over **User Management** and click **User Search.** find the user’s profile and click on their **username** then click on the **Parking** tab.
5. Select the **Standard Parking Permit** for the desired lot.
6. Choose the **permit number** and **start date**.
7. The cost will be prorated and display as **prorated**.
8. Click **Purchase this Permit** to finalize the purchase.
9. The adjusted cost will appear in both the Admin and User's portals.

##### **Step-by-Step Instructions:**

1. **Locate Pricing &amp; Lot Admin page:** Hover over the **Parking Management** then **Lot Administration** and select **Pricing &amp; Lot Admin**. 
    1. **Configuration/Setup:** In **Lot Admin &amp; Pricing**, select the lot you want to set up for proration.
    2. On the **Standard Permit** tab, check Proration **Enabled**. The lot is now set for proration.
2. Hover over **User Management** and click **User Search.**
    1. **Using Proration for Permits:** Search for the user and open their profile by clicking on their **username**.
    2. **Locate the Parking Tab:** Click on the **Parking** tab to begin purchasing a permit. The **Parking Permit Registration** screen will appear.
    3. **Selecting Standard Parking:** Select the **Standard Parking Permit** for the lot where the user will park. The full price of the permit will be displayed.
    4. **Configuring the** **Confirm Parking Permit Registration** **page:** Choose the **permit number** for the user and select the **start date** for the permit.
    5. **Confirm the Prorated Cost:** After selecting the permit number and start date, the cost will be prorated, and the **prorated** label will appear. Confirm that the cost has been prorated.
    6. Click **Purchase this Permit** to complete the process. The adjusted permit cost will now show in both the Admin Portal and the User's Portal.

# Archiving and Restoring Permits

<p class="callout info">Lot Allocation allows you to remove and restore permits in any given lot. Permits are removed through archiving. Archived permits are not permanently deleted and can be restored from their archived state**.**</p>

##### **Quick Steps:**

1. Hover over **Parking Management** then **Lot Administration** and click **Allocate**.
2. Locate the lot you wish to archive/restore permits for.
3. Click **Archive Permits** and Choose either **Selected Permits** to archive a portion of the permits or **All Permits** to archive them all.
4. Select the permits you wish to archive.
5. Click **Remove** and confirm with **Remove** again.
6. To restore permits click **Add Permits To Lot**.
7. Choose individual permits or a range (TL2-01 to TL2-05).
8. Click **Add Permits** then confirm by clicking **Add Permits** again.
9. Wait for the completion popup.

##### **Step-by-Step Instructions:**

1. **Navigate to the Lot Administration**: Hover over **Parking Management** in the menu then **Lot Administration** and then click **Allocate**.
2. **Select the Lot**: Locate the lot you wish to remove/restore permits for.
3. **Choose Permits to Archive**: Click on the **Archive Permits** dropdown menu. Select **Selected Permits** to archive only specific permits or click **All Permits** to remove them all.
4. **Select Permits to Archive**: Choose the permits you want to archive. Click **Remove** to start the archiving process.
5. **Confirm the Archive**: A confirmation screen will appear. Click **Remove** again to complete the process.
6. **Completion Message**: A popup message will confirm that the archiving process is complete.
7. **Check the Lot**: Refresh the list of permits. You’ll see that TL2-01 through TL2-05 have been removed from the lot.
8. **Add Permits Back to the Lot**: To restore permits, click on **Add Permits To Lot**.
9. **Choose a Method to Add Permits**: You can add permits back either individually or as a range: To individually add permits type the permit number in the **Permits** text box. To add by range add the **prefix** and **postfix** (if any) then add the starting and ending numbers for example 01-10 would add permits 1 to 10.
10. **Start the Process**: Click **Add Permits** to begin the restoration process.
11. **Confirmation Message**: A confirmation popup will appear. Note that the message will indicate the permits are "restored," not "created," as they were previously archived.
12. **Completion Message**: A popup message will confirm that the restoration process is complete.
13. **Check the Lot**: Refresh the list of permits. You’ll see that TL2-01 through TL2-05 have been restored.

# Flex Permits

<p class="callout danger">This feature is currently under development and has not yet been released. The wiki article serves as a placeholder outlining the intended future functionality.</p>

## Introduction

Flex permits allow clients to specify variable prices for a lot, with the possibility of a different price for every hour. This allows more options for the customization of permit prices, useful for situations like making permits more expensive during peak hours.

Flex permits are counted as type of temp permit, as an addition to the existing daily and hourly permits. They function most similarly to hourly permits and their uses have some overlap.

It is intended for a site to choose between hourly permits and flex permits and not use both, although clients are not restricted from using both at the same time if they choose to.

## Flex Permits Tab  


Flex permits and related sections can be accessed on the lot edit page, from the new flex permits tab.

[![Untitled.png](https://opscom.wiki/uploads/images/gallery/2024-07/scaled-1680-/untitled.png)](https://opscom.wiki/uploads/images/gallery/2024-07/untitled.png)

<div data-color="#091e4224" data-mark-type="border" data-size="2" id="bkmrk--2" style="--custom-palette-color: var(--ds-border, #091E4224);"></div>The page consists of three sections:

- An options section
- A time slot section, used for defining prices
- An hourly grid, used to assign prices to hours in the week

### Options

<div data-color="#091e4224" data-mark-type="border" data-size="2" id="bkmrk-a-list-of-options-re" style="--custom-palette-color: var(--ds-border, #091E4224);">A list of options related to flex permits.</div>[![image.png](https://opscom.wiki/uploads/images/gallery/2024-08/scaled-1680-/v9Eimage.png)](https://opscom.wiki/uploads/images/gallery/2024-08/v9Eimage.png)

<div data-color="#091e4224" data-mark-type="border" data-size="2" id="bkmrk-there-is-only-one-op" style="--custom-palette-color: var(--ds-border, #091E4224);">There is only one option for flex permits.</div><div data-color="#091e4224" data-mark-type="border" data-size="2" id="bkmrk-enable-flex-permits-" style="--custom-palette-color: var(--ds-border, #091E4224);">- **Enable flex permits** - this will enable the use of flex permits for this lot. 
    - If not enabled, users will not have the option to selected flex permits for this lot, even if the hourly grid is filled out.

</div><div data-color="#091e4224" data-mark-type="border" data-size="2" id="bkmrk-" style="--custom-palette-color: var(--ds-border, #091E4224);"></div><div data-color="#091e4224" data-mark-type="border" data-size="2" id="bkmrk--4" style="--custom-palette-color: var(--ds-border, #091E4224);"></div>### Time Slots

Flex permits are controlled by a grid of customizable timeslots, which are configured for each lot from the lot edit page.

The time slot section is located below the options section.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-08/scaled-1680-/o2Pimage.png)](https://opscom.wiki/uploads/images/gallery/2024-08/o2Pimage.png)

Time slots created by the admin are located here.

- **Name** - a user-friendly name to identify what the slot should be used for
- **Price** - the price of booking a permit for the selected hour
- **Colour** - the colour that the time cells in the week grid will be marked with when they are assigned this price

<div data-layout="wide" data-node-type="mediaSingle" data-width="900" data-width-type="pixel" id="bkmrk--7"></div>### Time-slot Creation

Click the add new button to bring up the add time slot modal.

Fill in the required fields and press save changes to save the new time slot.

[![3.png](https://opscom.wiki/uploads/images/gallery/2024-07/scaled-1680-/5gK3.png)](https://opscom.wiki/uploads/images/gallery/2024-07/5gK3.png)

The time slot selection menu will reload and the saved item will appear.

The modal will also be brought up when editing the details of an existing time slot.

Once a time slot has been created, there is no way to delete it .

### Hourly Cell Grid

Below the time slot section, the hourly cell grid can be found. This is a representation of each hour within the week.

[![4e.png](https://opscom.wiki/uploads/images/gallery/2024-07/scaled-1680-/4e.png)](https://opscom.wiki/uploads/images/gallery/2024-07/4e.png)

Here, each hour time slot within a week can be assigned a specific cost. When a user books a permit for a number of hours, the final price will be calculated using the prices associated to each hour selected within the booking.

Above the cell grid, several buttons can be found.

- **Clear** - will clear the grid of all filled cells
- **Fill** - will fill in the grid with the selected colour
- **Reload** - will reload the grid data stored within the database, erasing any changes that were made

### Hourly Price Assignment

To fill in the cell grid, first select one of the prices to assign to cells on the grid.

This can be done by clicking on the one of the selectable colours.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-08/scaled-1680-/E3Pimage.png)](https://opscom.wiki/uploads/images/gallery/2024-08/E3Pimage.png)

This will change the active colour to the colour selected, as indicated by the blue outline.

Cells on the grid can now be filled in by clicking and dragging the mouse across the cells.

[![2024-04-08_13-35-56.gif](https://opscom.wiki/uploads/images/gallery/2024-07/2024-04-08-13-35-56.gif)](https://opscom.wiki/uploads/images/gallery/2024-07/2024-04-08-13-35-56.gif)

The grid can be filled in using any number of time slots.

Note that any sections left blank (using the default option) will be set to free.

[![8.png](https://opscom.wiki/uploads/images/gallery/2024-07/scaled-1680-/rU68.png)](https://opscom.wiki/uploads/images/gallery/2024-07/rU68.png)

Cell price layouts will only be saved upon clicking the update lot button.

## User-Side Permits

Once the flex permits have been filled in, they will begin to appear for sale on the user side.

On lots where flex permits are enabled, the permits page will show a preview of flex permits as a price range.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-08/scaled-1680-/vc9image.png)](https://opscom.wiki/uploads/images/gallery/2024-08/vc9image.png)

<div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk-flex-permit-options-">Flex permit options will now be available as a separate option to the page.</div><div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk--17"></div>[![image.png](https://opscom.wiki/uploads/images/gallery/2024-08/scaled-1680-/YMAimage.png)](https://opscom.wiki/uploads/images/gallery/2024-08/YMAimage.png)

<div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk--19"></div><div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk-selecting-the-flex-o">Selecting the flex option will show the input requirements to book a permit.</div>[![image.png](https://opscom.wiki/uploads/images/gallery/2024-08/scaled-1680-/WFtimage.png)](https://opscom.wiki/uploads/images/gallery/2024-08/WFtimage.png)

Flex permit inputs:

- **Date** - the day the permit is being booked for.
- **Start Time** - The time the booking will start at. 
    - Flex permits are limited to booking on the hour. They do not currently support proration, meaning if a user arrives during the middle of an hour, they must pay for the entire price of the hour.
- **Duration** - the number of hours to book the permit for. 
    - A permit can be booked for a limit of 12 hours. If the booking would go beyond the bounds of the day, the user will be required to pick a shorter duration.
- **Vehicle** - like normal for temp permits, the user can either select a vehicle on their account or enter a new plate as a guest vehicle.

<div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk--21"></div><div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk--22"></div><div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk-selecting-an-option-">Selecting an option in the date input will cause the prices for that day of the week to appear in a box to the left side of the page. </div><div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk-if-the-user-selects-">- If the user selects one of the other options after selecting flex, the flex prices box should disappear again.
- Selecting flex again should make it reappear.

</div><div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk--23"></div><div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk--24"></div><div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk--25"></div><div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk--26"></div><div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk--27"></div><div data-alt="image-20240307-201614.png" data-collection="contentId-53117828" data-context-id="53117828" data-file-mime-type="" data-file-name="file" data-file-size="1" data-height="314" data-id="fbeb8243-7c62-4b61-ba54-90c00dff3925" data-node-type="media" data-renderer-start-pos="4088" data-type="file" data-width="336" id="bkmrk--28"></div>[![image.png](https://opscom.wiki/uploads/images/gallery/2024-08/scaled-1680-/X8yimage.png)](https://opscom.wiki/uploads/images/gallery/2024-08/X8yimage.png)

Selecting a different day will cause the flex prices box to reload with the new day's prices.

[![2024-08-08_16-29-39.gif](https://opscom.wiki/uploads/images/gallery/2024-08/2024-08-08-16-29-39.gif)](https://opscom.wiki/uploads/images/gallery/2024-08/2024-08-08-16-29-39.gif)

The cost of the permit will be calculated using the prices of each hour in the selected range added together.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-08/scaled-1680-/AUqimage.png)](https://opscom.wiki/uploads/images/gallery/2024-08/AUqimage.png)

Pressing to reserve the permit, the permit will be added to the user's cart.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-08/scaled-1680-/22Nimage.png)](https://opscom.wiki/uploads/images/gallery/2024-08/22Nimage.png)

### Real-Time Map

On the real-time map, the flex permits range of cost will be listed under rental costs.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-08/scaled-1680-/0YDimage.png)](https://opscom.wiki/uploads/images/gallery/2024-08/0YDimage.png)

Clicking here to book a permit will take the user to the guest checkout page, the same place as if they had scanned a QR code to access the lot.

If enabled, the user does not need to be logged in to access this page.

In the case where a lot group is used as an icon in place of a single lot, it will also show the range on the lot groups page.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-08/scaled-1680-/8P2image.png)](https://opscom.wiki/uploads/images/gallery/2024-08/8P2image.png)

### QR Code / Guest Checkout

Similar to the standard temp permit checkout, the flex permit prices for the day will be displayed to the left side of the page.

As guest checkout permits are intended for immediate bookings, the day and time will be limited to the current date.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-08/scaled-1680-/fVcimage.png)](https://opscom.wiki/uploads/images/gallery/2024-08/fVcimage.png)

Upon filling in the information, the permit cost will be calculated and the user will be able to checkout immediately.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-08/scaled-1680-/gN4image.png)](https://opscom.wiki/uploads/images/gallery/2024-08/gN4image.png)

Clicking on make payment, the user will be redirected to their selected payment gateway to make a payment.

<div class="notranslate" id="bkmrk--37" style="all: initial;"></div>

# Lot Passwords

### Introduction

The ability to lock lots with a password has been added. Setting a password on a lot prevents users from booking a permit in that lot unless they enter the password.

In support of event parking, this can be used to make a lot intended for an event that can only be booked from by users who have been given the password for the lot.

This can be used in combination with lot visibility settings to make a lot that can only be booked from by users given a direct link and password to the lot.

---

<div id="bkmrk-added-the-ability-to"></div>### Lot Edit Page

Passwords can be managed from the lot edit page.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-10/scaled-1680-/lq4image.png)](https://opscom.wiki/uploads/images/gallery/2024-10/lq4image.png)

There are two settings related to lot passwords:

- **Password** - the password that must be entered to access permit booking for the lot.
- **Use Lot Password** - enables or disables the application of the password on the lot.

Even if a lot has a password set, the password input will not be enforced unless the lot has password use enabled.

Passwords cannot be enabled for a lot if there is no password set for it.

---

### View all Lots Page  


Password usage will be indicated by a lock icon beside the lot on the lot admin page.

[![image.png](https://opscom.wiki/uploads/images/gallery/2024-10/scaled-1680-/3Llimage.png)](https://opscom.wiki/uploads/images/gallery/2024-10/3Llimage.png)

---

### Usage  


- When a lot is password-locked, users trying to access it will be forced to a password input. They will need to enter the password in order to be able to get to the permit reservation page.
- Once the password had been input, the user will not need to enter the password again for that single lot until their session data is cleared.
- This will only apply to the single lot the password was entered for. Other lots with passwords will still prompt the user for the password.
- When a lot has a password on it, a lock icon will appear next to the lot name in places where it appears, including the real-time map.
- Admins are not restricted by lot passwords on the admin-side, and will not need to enter the password to book a permit for a user.