Skip to content

Administration & Utilities


The Administration section provides system-wide configuration for users, roles, permissions, and integrations. The Utilities section contains operational tools and reference data used across multiple modules.


  • User — A login account that can access the application. Each user has an email (login), display name, optional employee link, and one or more assigned roles. Users are created by administrators and receive an invitation email to set their password.

  • Role — A named collection of permissions that controls what a user can see and do. Roles are designed around job functions (e.g., “AP Clerk”, “Service Manager”, “Administrator”). A user can have multiple roles, and their effective permissions are the union of all assigned roles.

  • Permission Override — A fine-grained access control rule that allows or restricts read or update access to a specific record field beyond what the role grants. Overrides apply to individual fields only — they cannot open a screen or grant access to a whole record. Override sets attach to roles, never to an individual user. They are for edge cases — for example, a narrowly scoped role that lets its holders read salary fields the broader role hides.

  • Custom Field — An organization-specific data field added to a standard record type (Customer, Work Order, Job, Employee, etc.) without code changes. Custom fields support these selectable types: String, Decimal, Date, Model (an entity lookup), Boolean, and Enum. They appear on create/edit/view screens and can be required.

  • Tag — A color-coded label applied to records for categorization and filtering. Tags are cross-module — a single tag definition can apply to customers, work orders, leads, and equipment. Unlike custom fields (which store structured values), tags are lightweight grouping mechanisms.

  • Integration — A connection to a third-party service (Stripe, RingCentral, Podium, Ask The Seal). Integrations are configured in Administration and extend the application’s capabilities — for example, Stripe enables online payment collection on work orders, and RingCentral enables cloud telephony.


Upstream — Administration is a prerequisite for all modules:

  • Users and Roles → Every module requires authenticated users with appropriate permissions. The AP Clerk role controls access to Accounts Payable, the Service Manager role controls access to Service, etc.
  • Custom Fields → Custom fields defined here extend data models across all modules. A custom field on the Customer model appears in AR, Service, CRM, and Job Costing.
  • Tags → Tag definitions apply cross-module. A “VIP” tag created here can be applied to customers in AR, leads in CRM, and work orders in Service.

Downstream — Administration controls access everywhere:

  • Role Permissions → Every screen, button, and action in every module checks the user’s role permissions. Creating a new role or modifying permissions immediately affects what users see.
  • Scheduling Boards → Board configurations determine which technicians appear on the Service dispatch and scheduling boards.
  • Form Templates → Templates defined here are used by the Service module for work order data collection forms.
  • Integrations → Connected services affect other modules — Stripe payments appear in AR, RingCentral calls appear in CRM communications.

Key Integration Point — Role-Based Access Control: The role system is the security backbone. When Kevin (Admin) creates a new user and assigns the “AP Clerk” role, that user immediately gains access to vendor management, invoice posting, and payment processing — but cannot access payroll, GL settings, or job costing. Modifying a role’s permissions instantly updates access for every user assigned to that role.


Navigate to Administration in the main sidebar to access system configuration.


Manage the system user accounts that can log in and access the application.

ColumnDescription
AvatarUser profile image
EmailUser’s login email address
Display NameName shown throughout the application
TitleJob title or role description
Employee NumberLinked employee record (if applicable)
StatusNew, Active, Inactive, or Invitation Pending
RolesComma-separated list of assigned roles
ExtInternal phone extension
FieldRequiredDescription
EmailYesLogin email address (max 255 characters; read-only when editing)
Display NameYesName displayed in the application (max 255 characters)
TitleNoJob title or description (max 255 characters)
Phone ExtensionNoInternal extension
EmployeeNoLink this user to an employee record
RolesNoOne or more roles to assign — determines what the user can access
ActionDescription
Create UserAdd a new user (sends an invitation email)
Edit UserModify user details and role assignments
Delete UserPermanently remove the user account
Resend InvitationResend the invitation email to a user with Invitation Pending status
Reset PasswordSet a new password directly or trigger a password-reset email

Choose one of two methods:

OptionDescription
Initial PasswordEnter and confirm a new password (minimum 8 characters) directly
EmailSend the user a password-reset link via email

Roles control what each user can see and do. Assign one or more roles to each user.

Displays all defined roles. Each row shows the role name and actions.

FieldRequiredDescription
NameYesRole name (max 255 characters)

After creating or opening a role, use the Permissions section to configure exactly what the role can do. Permissions are organized by category (module). Toggle individual permissions on or off using the checkboxes. Each category has a header checkbox — check it to grant every permission in that category at once, or clear it to remove them all (it shows a mixed state when only some are on).

The Create / Edit Role dialog has two tabs that determine what the role grants:

TabPurpose
PermissionsToggle the individual permissions the role grants, organized by category (module). This is the tab described above.
OverridesAttach one or more Permission Override Sets to the role, applying their field-level rules to everyone who holds the role.

The Overrides tab lists every defined override set with its Name and an Enabled checkbox. Check a set to attach it to the role; uncheck it to remove it. For a brand-new role, all sets start unchecked; when you open an existing role, the checkboxes reflect which sets are already attached.

  1. Open Administration → Roles and create a new role or click Edit on an existing one.

  2. Enter or confirm the role Name, then select the Overrides tab.

  3. Check the Enabled box next to each override set you want this role to apply, and uncheck any you want to remove.

  4. Click Save. The selected override sets are attached to the role (and any you unchecked are detached), and they take effect for every user assigned the role.

ActionDescription
Create RoleDefine a new role
Edit RoleModify the role name and permissions
Copy RoleAfter a confirmation prompt, create a duplicate of an existing role with all its permissions and assigned override sets. The copy is automatically named <Original Name> - Copy (rename it afterward via Edit Role). Copying requires both permissions: Edit Role enables the Copy Role button, and Create Role authorizes saving the copy. A user who holds only one of the two cannot complete the copy
Delete RoleRemove the role — users assigned only this role will lose the associated access

The Edit All Roles action opens a full-screen matrix for comparing and changing the same permission across every role at once. Use it when you want to grant or revoke a specific permission for several roles together, rather than opening each role one at a time.

Navigation: Administration → Roles → Edit All Roles (pencil button in the top-right of the role list, next to Create Role)

The matrix lists one row per permission and one column per role:

ColumnDescription
CategoryThe module/category the permission belongs to. Rows are grouped by category, and the Category and Name columns stay pinned to the left as you scroll across roles.
NameThe individual permission (for example, the Create / View / Edit / Delete entries for a model).
One column per roleA checkbox for each role. Check the box to grant that permission to that role; clear it to revoke it. The column header shows the role name, and columns are ordered by role name.
  1. From the role list, click the Edit All Roles (pencil) button in the top-right header.
  2. Scroll to the permission row you want to change. Rows are grouped by category to help you find related permissions.
  3. Check or clear the checkbox in each role’s column to grant or revoke that permission for that role.
  4. Click Save to apply the changes to all roles at once, or Close to discard them.

Permission Override Sets allow fine-grained access control beyond the standard role system. They can enable or disable read or update access to specific model fields. Override sets are assigned to roles (via the Overrides tab of the role editor) and apply to field-level controls only. A user is affected only through the roles assigned to them; override sets cannot be attached directly to an individual user.

Displays all defined override sets by name.

FieldRequiredDescription
NameYesDescriptive name for this override set

Override Rules — Each set contains one or more rules:

FieldDescription
ModelThe data model this rule applies to
FieldThe specific field within the model
ValueAllow or Deny
PermissionRead or Update

A new override row appears automatically when you start filling in (focus) the last row. Use the delete (trash) icon at the end of each row to remove that rule.


Scheduling Boards define which users and schedulable employees appear on each board in the scheduling interface.

Displays all boards by name.

FieldRequiredDescription
NameYesBoard name

Users — Add system users who can view and interact with this board. Each row shows display name, username, and title.

Employees — Add schedulable employees (technicians/staff) who appear as resources on this board.

Use the Add User and Add Employee buttons to assign members. Use the row delete button to remove them.


Form Templates define the structure of custom data-collection forms that can be attached to work orders, service records, and other documents.

ColumnDescription
NameTemplate name
DescriptionDescription of the template’s purpose
Form TypeThe type of form (determines where it can be used)
Signature RequiredWhether the form requires a signature to submit
Enforce RequiredWhether required fields block submission if empty
ActiveWhether the template is currently available for use

Header Fields

FieldRequiredDescription
NameYesTemplate name
DescriptionNoDescription of the template’s purpose
Form TypeNoClassification that determines where this form appears
Require SignatureNoWhether the form requires a signature to submit
Enforce RequiredNoWhether required fields block submission if empty
Is ActiveNoWhether the template is available for use

Field Editor

The field editor has two panes. The left Fields pane lists the fields on the form — drag rows to reorder them, click a row to select it, and use Add Field to add a new one. Selecting a field opens the Configure Field pane on the right, where you set:

SettingRequiredDescription
Field TypeYesData type — see options below
LabelYesDisplay label shown to the user
Field NameNoInternal identifier for the field. Editable only when the Form Type is PDF; for other form types it is read-only
Is RequiredNoWhether this field must be filled before submission
MetaNoType-specific configuration (options for radio buttons, precision for decimals, etc.)

PDF Template Upload

In addition to manually defining fields, you can upload a PDF template file to a form template. The system extracts the fillable form field names from the PDF and stores them with the template. When this form is attached to a work order, the extracted PDF fields are automatically populated with data from the work order (customer name, site address, work order details, etc.), reducing manual data entry.

  1. Set the Form Type to PDF — the upload control only appears for PDF form templates.
  2. Click Upload PDF (it becomes Re-upload PDF once a PDF is attached).
  3. Select a PDF file containing fillable form fields.
  4. The system reads the PDF and extracts the form field names, reporting how many were detected.
  5. The extracted field names become available to associate with the template’s fields.

Field Types

TypeDescription
stringText input
decimalDecimal number
moneyCurrency amount
dateDate picker
intInteger number
booleanYes/No checkbox
percentPercentage value
timeTime input
emailEmail address
pictureImage upload
radioRadio button group (configure options in Meta)
equipmentEquipment selector
ActionDescription
Create Form TemplateDefine a new form template
Edit Form TemplateModify the template name, fields, and settings
Copy Form TemplateAfter a confirmation prompt, create a duplicate of an existing form template with all its fields and settings. The copy is automatically named <Original Name> - Copy
Delete Form TemplateRemove the form template

Form Type is not a free-text classification — it is a two-option radio that switches the template between two distinct modes. Choose the mode when you first create the template.

Form TypeWhat it does
ChecklistA plain data-collection form built only from the fields you define. No PDF is involved, and the Field Name mapping and Require Signature options stay disabled.
PDFBacks the template with an uploaded fillable PDF (AcroForm). This enables the Upload PDF control, the Require Signature checkbox, and the per-field Field Name mapping used to tie each of your fields to a field in the PDF.

The Require Signature checkbox can only be turned on for a PDF template; switching the Form Type away from PDF automatically clears Require Signature and removes any Field Name mappings you had entered.

4.5.2 Per-Field Validation (Field-Specific Configuration)

Section titled “4.5.2 Per-Field Validation (Field-Specific Configuration)”

When you select a field in the Configure Field pane, a Field-Specific Configuration area appears below the field type and label. The controls shown here depend on the field type, and they let you set validation limits beyond just marking the field required:

Field TypeField-specific configuration
stringMin Length and Max Length (character counts)
decimal, money, percentMin, Max, and Decimal Places
int (Number)Min and Max
dateMin Date and Max Date
radioOptions editor — use Add Option to add a choice, type each option’s label, and use the delete icon to remove an option
boolean, time, email, picture, equipmentNo additional configuration (the pane shows “No additional configuration required for this field type”)

The template will not save while a field’s limits are inconsistent. Saving is blocked, and an error naming the field is shown, when: a Min is greater than or equal to its Max, a minimum length/value is negative, a maximum is zero or less, a Min Date falls after its Max Date, or a radio field has no options or an option with a blank label.

For PDF templates, after you upload a PDF the system extracts its fillable field names and offers them when you configure each field, so you can map your form’s data onto the PDF.

  1. Set Form Type to PDF and upload a PDF (see PDF Template Upload above). The detected field names become selectable.
  2. Select a field in the Fields pane.
  3. In the Field Name box, pick a PDF field name from the list (or type one). A name already used by another field is marked (in use) in the dropdown.
  4. For a field whose type is equipment, map three PDF fields instead of one — Model Field, Serial Field, and Manufacturer Field — so the equipment’s model, serial number, and manufacturer each fill their own PDF field.

To see which PDF field names ServiSuite can auto-fill, open the Mapping Legend (the book icon in the template list header). It lists each recognized PDF Field Name with its description, type, and category; name the form fields in your PDF to match these values so they auto-fill during invoice generation. A search box filters the list.

Custom Fields lets you add organization-specific data fields to standard system records without code changes.

Displays all models that support custom fields. Click any model to expand and manage its fields.

Each row in the field grid is editable:

ColumnRequiredDescription
NameNoField identifier displayed in the UI
TypeNoData type: String, Boolean, Date, Model, Decimal, or Enum
MetaNoType-specific config: for Model — which model to look up; for Decimal — decimal places; for Enum — the list of selectable options
Default ValueNoPre-filled value when a new record is created
Is RequiredNoWhether the field must be filled before saving the record

To add a field, click into the blank row at the bottom of the grid; a new blank row appears automatically. Use the row delete button to remove a field, then click Save to persist all changes.


Tags are color-coded labels that can be applied to records across multiple modules for categorization and filtering.

ColumnDescription
LabelTag name
ColorDisplayed as a colored swatch
Applicable ModelsThe record types this tag can be applied to
FieldRequiredDescription
LabelYesTag name (max 255 characters)
ColorYesHex color selected via a color picker
Applicable ModelsNoOne or more models where this tag can be used (e.g., Customer, Work Order, Lead, Equipment)

Attachment Access Classes control which roles can view specific uploaded documents. Assign an access class to an attachment to restrict visibility.

Displays all defined classes by name.

FieldRequiredDescription
NameYesDescriptive class name
RolesNoRoles that are permitted to view attachments in this class

Only users in the assigned roles will be able to open or download attachments tagged with this class.


View and manage all currently active login sessions.

ColumnDescription
Session IDUnique identifier for the session
UserDisplay name of the logged-in user
ExpirationDate and time when the session will automatically expire

Kill Session — Immediately terminates the selected session, logging out that user. A confirmation prompt is shown before the action is taken.

Sessions are filtered by your current organization, so you only see sessions belonging to users in your organization.

This screen is read-only except for the Kill Session action. It is useful for security incident response or when a user needs to be forced out of the system.


Configure network printers used for check printing, label printing, and other document output.

ColumnDescription
NamePrinter friendly name
HostHostname or IP address
PortNetwork port number
TypePrinter type classification
DPIDots per inch resolution
ActionDescription
Create PrinterAdd a new printer configuration
Edit PrinterModify an existing printer’s settings
Delete PrinterRemove the printer — requires confirmation

Send a bulk internal email to all users in one or more roles.

FieldRequiredDescription
RolesYesOne or more roles to send to — select All Roles to target everyone, or choose individual roles. At least one must be selected.
Only Active UsersNoWhen checked, the email is sent only to users who are currently logged in (have an active session), not to all users whose account status is Active
SubjectYesEmail subject line
BodyYesEmail body text

Click Send to deliver the email. A confirmation notification appears on success and the form resets.


Navigation: Administration → Integrations

Connect third-party services to the application. The Integrations screen displays a card-based layout — each integration appears as a card showing the service logo, a status badge (Connected in green or Available in blue), and the relevant action buttons. Connected integrations are indicated by the green Connected badge along with Configure and Unlink buttons.

Accept online payments through Stripe. Connects via Stripe OAuth.

ActionDescription
ConnectInitiates the Stripe OAuth authorization flow — redirects to Stripe’s hosted authorization page where you sign in and grant access
ConfigureOpens configuration settings for the Stripe integration (available only when connected)
Unlink (icon)Removes the Stripe account link immediately (no confirmation prompt)

Stripe Configuration

FieldRequiredDescription
Stripe Payment TypeNoAR payment type used for automatically created cash receipts; a cash receipt is created whenever it is set

When Stripe is connected, the following capabilities are enabled across the application:

  • Customer Payment Links — ServiSuite can generate and email a customer payment link for service contract renewals. The customer opens a ServiSuite-hosted payment page (which uses Stripe to capture the card) and, when paid, the payment is automatically recorded and applied to the contract’s underlying invoices.
  • Work Order Payments — Service technicians can collect credit card payments on work orders through the mobile app using the connected Stripe account.
  • Automatic Cash Receipts — When a Stripe Payment Type is set, a Stripe payment automatically creates a cash receipt in AR, applying it to the corresponding invoice.
  • Email Stripe Receipts — After a successful Stripe payment, payment receipts can be emailed to customers directly from the application.

The Stripe OAuth flow redirects to Stripe’s authorization page, where the administrator signs in with their Stripe account credentials and grants the application access. Upon successful authorization, the integration status changes to Connected and the Configure button becomes available.

Cloud phone-system integration. Connecting RingCentral turns on click-to-dial, incoming-call screen pops, automatic call logging into CRM communications, call-recording playback, optional AI call summaries, and marketing-line call reporting across the application.

ActionDescription
ConnectStarts the RingCentral authorization flow — redirects to RingCentral’s sign-in page, where an administrator signs in and grants access. On return you see a success (or failure) message and, on success, the card shows the green Connected badge.
ConfigureOpens the Manage RingCentral Integration dialog (see below). Shown while the connection is working.
ReconnectReplaces the Configure button when the stored authorization has failed or expired. Click it to run the authorization flow again and restore the connection.
UnlinkImmediately removes the RingCentral account link (the unlink icon; no confirmation prompt).

Connection health

When RingCentral is connected, the card shows a live health panel:

  • A status chip: Connection Healthy, Connection Failing, Reconnect Required (the connection must be re-authorized — the Reconnect button appears in place of Configure), or No health data yet (nothing has reported in yet).
  • A Webhooks down chip appears when RingCentral is no longer delivering call events; incoming-call features stop working until the connection is restored.
  • Last webhook activity — when the application last received an event from RingCentral (or “No webhook activity yet”).
  • A recording-backlog line — how many call recordings are still waiting to download and how old the oldest one is. RingCentral deletes recordings roughly 90 days after the call, so this line turns amber as the backlog ages and warns that recordings will be lost if the backlog is not cleared.

Manage RingCentral Integration dialog (Configure)

FieldRequiredDescription
AI Call SummariesNoWhen on, recorded calls are transcribed and a summary and customer sentiment are written onto each call’s communication. Billed at $0.03 per recorded minute from your organization’s wallet. Applies only to calls that end after you turn it on — past calls are never billed or summarized. Requires call recording to be enabled in RingCentral; if the feature is on but no recordings have arrived, the dialog warns you to check that call recording is turned on in your RingCentral admin console.
Handler Talk Time Threshold (seconds)YesA call is credited to the person who talked the longest, provided they talked at least this long. This keeps a quick answer-and-transfer from counting as handling the call. Whole seconds, 0–600 (default 45).
Marketing Attribution Window (hours)YesWhen a work order is created within this many hours of a call to one of your marketing numbers, reporting credits the booking to that call. Each call can be credited to at most one inferred booking, earliest unclaimed call first. Whole hours, 1–720 (30 days); default 48.

Saving is disabled until the dialog finishes loading your organization’s current settings.

Marketing Lines

Inside the Configure dialog, the Marketing Lines section maps advertised tracking phone numbers to campaigns (lead sources). Calls to a mapped number are credited to that campaign in Phone Reports (see the CRM guide).

  1. In the Phone number field, pick one of your organization’s RingCentral numbers, or type any number.

  2. In Campaign (lead source), choose the campaign the number advertises.

  3. Click Add. The number appears in the list above; use the unlink icon on a row to remove a mapping.

When RingCentral is connected, the following capabilities are enabled across the application:

  • Click-to-dial — Phone numbers shown on customer and related records become clickable. Clicking one asks RingCentral to ring your own RingCentral desktop app or desk phone first and then connect the customer, so the call runs on your extension and is captured like any other call. See Click-to-Dial in the CRM guide for details and requirements.
  • Incoming-call screen pop — When a call comes in, an Incoming Call card appears (while ringing or when you answer, per each user’s screen-pop setting) with the caller’s number and, when matched, their customer details and account balance, plus quick actions.
  • Automatic call logging — When a call ends, if it matched a customer or lead the application creates one CRM communication for it (inbound and outbound; missed calls and voicemails included, and flagged for follow-up).
  • Caller-ID matching — Incoming calls are matched by phone number to existing customer, customer-site, and customer-contact records. When a customer matches, their newest open lead (if any) is surfaced as well.
  • Call-recording playback — RingCentral records each leg of a call. The call’s communication offers per-person recording playback.
  • AI call summaries (optional) — When enabled in the Configure dialog, recorded calls are transcribed and a summary and sentiment are written onto the call’s communication.
  • Phone Calls and Phone Reports screens — CRM gains a Phone Calls screen (recent and unmatched calls) and a Phone Reports screen (campaign and CSR performance). See Phone Calls and Phone Reports in the CRM guide.

Connecting, configuring, reconnecting, or unlinking RingCentral is done on the Integrations screen, which requires the Manage API Integrations permission.

Third-party service integration for dispatch notification and tracking.

ActionDescription
ConnectOpens the ATS configuration dialog
Unlink (icon)Removes the ATS connection

ATS Configuration

FieldRequiredDescription
Account IDYesAccount ID provided by Ask The Seal

When connected, the ATS integration sends appointment scheduling details (start and end times) and the assigned technician’s name to Ask The Seal when an appointment is dispatched. This enables real-time technician tracking and customer-facing ETA notifications through the ATS platform.

Customer messaging and review platform integration.

ActionDescription
ConnectOpens the Podium configuration dialog
Unlink (icon)Removes the Podium connection

Podium Configuration

FieldRequiredDescription
Location IDYesLocation ID provided by Podium
TokenYesAuthentication token provided by Podium

Navigation: Available via Actions → Audit on supported record screens (Jobs, Customers, Vendors, Work Orders, Employees, etc.)

The Audit Trail provides a timestamped log of all changes made to a record. It shows who changed what, when, and what the old and new values were.

ColumnDescription
TimestampWhen the change occurred (displayed in local time)
UserDisplay name of the user who made the change
DescriptionSummary of the change (e.g., “Updated Job”, “Created Contract”)
  • Filter entries by Start Date/Time and End Date/Time (defaults to the last 1 month).
  • Click the expand arrow on any row to see the Transaction Details — individual field-level changes with old and new values.
ColumnDescription
DescriptionThe field or relationship that changed
Old ValueThe previous value (formatted by type — currency, date, percent, etc.)
New ValueThe updated value

Change types include simple field updates, related record changes (e.g., changing the assigned customer), and one-to-many relationship changes (e.g., adding a contract line).


The main application sidebar includes the following utility links:

  • Documentation — Opens the in-app documentation site in a new tab, providing access to user guides and process references.
  • System Status — A status indicator dot and link that connects to the system’s uptime monitoring page (via Instatus integration), showing current service availability and any ongoing incidents.

ID Formats let you design the human-readable identifiers ServiSuite prints on records — sales order numbers, invoice numbers, purchase order numbers, and more — from reusable building blocks, so a new record is numbered to match your business’s conventions. Navigate to Administration → ID Formats.

Each format is tied to one Entity (the kind of record it numbers) and is built from an ordered list of sections that render left to right. Only one format can be active for an entity at a time.

ColumnDescription
NameThe format’s name
EntityThe record type this format numbers
PatternA preview of the assembled pattern (each section shown in order)
ActiveYes when this is the live format for its entity; blank otherwise

Click a row (or the edit icon) to open a format for editing; use the + icon in the grid header to create one. Archived formats are hidden from the list.

FieldRequiredDescription
NameYesA label for the format
EntityYesThe record type to number. Chosen only when creating — it cannot be changed after the format is saved
DescriptionNoFree-text notes about the format
ActiveNoWhether this format is the live one for its entity. Only one format per entity may be active
Ignore date sections when incrementingNoControls whether the counter runs continuously or restarts (see Increment behavior below)

Below the header fields is the sections grid. Each row has a Type, a Configuration area whose controls depend on the type, and a delete button. Drag the Seq handle to reorder rows — sections render left to right in the order shown. Use Add Section to add a row. Exactly one Increment section is required.

TypeWhat it contributes
TextFixed text that prints exactly as entered (for example, a SO- prefix)
DateDate tokens filled from the record’s creation date (see the token legend below)
IncrementAn auto-incrementing counter — the number that makes each ID unique
ConditionA value chosen by branching rules read from the record itself (see Condition sections)

Date tokens. In a Date section’s configuration box, type date tokens; hover the box for the built-in legend. Separators such as - or / print as-is; other letters and digits are not allowed.

TokenPrintsExample
YYYY4-digit year2026
YY2-digit year26
MMMMonth nameAug
MM2-digit month08
MLSingle-letter month (A = Jan … L = Dec)H
MMonth8
DD2-digit day05
DDay5
QQuarter3

An Increment section has three settings:

SettingRequiredDescription
StartYesDigits only. Its length sets the minimum zero-padded width — 0000 means “at least 4 digits” (0001, 0002, …). It is a padding width, not a ceiling: once the counter passes the width it simply renders wider (0000 → … → 9999 → 10000).
ByNoThe step between numbers. Defaults to 1; must be at least 1
EndNoAn optional cap. When set, it must be greater than or equal to Start, and it is the only thing that stops the sequence — once the counter would exceed End, creating a record fails with an “out of numbers” message. Leave it blank for an unbounded sequence.

Continuous vs. restarting. The Ignore date sections when incrementing switch decides how the counter buckets numbers:

  • On — the counter runs as one continuous, unbroken sequence regardless of any Date sections.
  • Off — the counter restarts whenever the rendered date sections change. For example, with a YY Date section the counter starts over each year.

A Condition section outputs a value chosen by rules that read the record being created — for example, printing RM- or FG- depending on a product’s type. Click Edit Conditions in the section’s configuration to open the editor.

  • Add one or more clauses. Each clause picks a field (or a related record’s field) on the entity, an operator (is, is not, starts with, contains, greater than, and so on), and a value; when the clause matches, it supplies an output built from Text and Date pieces.
  • Clauses are checked top to bottom against the record, and the first match wins. Reorder them with the up/down arrows.
  • The Otherwise output is used when no clause matches (it may be left empty, in which case the section renders nothing).
  • Separate number sequence per output — when on, each distinct output runs its own counter (so RM-000001 and FG-000001 advance independently); when off, every branch draws from one shared sequence.

For a shared numbering sequence (such as the AR Invoice Number, which numbers several kinds of records from one sequence), a Condition can only use fields that every one of those record types has in common.

Click Test to see sample IDs the format would produce (the preview does not consume any numbers). Fix any reported problem — for example, a non-digit Start, an End below the Start, a missing Increment section, or a second active format for the same entity — then Save.

To retire a format, first clear its Active switch (or leave it inactive), then use the archive (trash) icon in its row. A format must be deactivated before it can be archived — the archive icon stays disabled while the format is active. Archiving removes the format from the list.

The Entity dropdown lists the record types that support configurable IDs. These currently include Appointment, AR Invoice Number (a shared sequence), Certification, Customer, Customer Site Address, Discount Code, Employee, Flat Rate, Incentive, Inventory Count Sheet, Job, Job Contract, Lead, Pallet, Product, Proposal, Purchase Order, Sales Order, Sales Order Shipment, Service Contract, Service Contract Type, Shipment, Trait Type, Vendor, and Work Order.


API Tokens are credentials your organization mints so outside systems can read your ServiSuite data through the public REST API. A token grants read-only access, limited to exactly the data areas (scopes) you pick, and is tied to your organization. Navigate to Administration → API Tokens.

The screen header includes an API documentation link that opens the live, always-current API reference — use it for the exact list of available data, fields, filters, and request details. This guide covers only how to create and manage tokens, not the API’s data structures.

ColumnDescription
NameThe name you gave the token
TokenA masked preview of the token (only a short prefix is shown; the full value is never displayed again)
ScopesThe data areas the token can read. A scope granted at the elevated tier is marked (internal)
Requests (24h / 7d)How many API requests the token has made in the last 24 hours and last 7 days
Last UsedWhen the token was last used (or Never)
ExpiresThe expiration date, or Never
StatusActive, Expired, or Revoked. Revoked tokens are hidden by default — widen the Status filter to see them
  1. Click the + (Create API Token) icon in the grid header.
  2. Enter a Token Name (for example, “Warehouse Integration”).
  3. Optionally set an Expiration Date. Leave it blank for a token that never expires; if set, it must be a future date.
  4. Under Scopes, choose what the token may read. Each data area (resource) offers two checkboxes:
    • Read — grants the standard fields for that resource.
    • Internal Fields — additionally exposes internal-only fields such as cost, margin, and internal notes. Granting Internal Fields automatically includes Read. Grant it only to integrations that genuinely need those fields. You must select at least one scope.
  5. Click Create.

The available resources span several modules — Service (work orders, appointments, equipment, service contracts, and more), Customers / AR (customers, invoices, payments, leads, proposals), Vendors / AP & Purchasing (vendors, vendor invoices and payments, purchase orders, products), Jobs (jobs, expenses, contracts, invoices, estimates), and General Ledger (accounts and postings). See the in-app API documentation link for the current, complete list and what each returns.

Click the revoke (shield) icon on a token’s row and confirm. Revocation takes effect immediately — any integration using that token loses access at once — and cannot be undone. A revoked token stays on the list (visible once you widen the Status filter) for reference but can never be reactivated.


Navigation: Administration → Texting

The Texting screen configures organization-wide two-way SMS with customers. It is available to users with the Manage Texting Settings permission.

The texting phone number is provisioned per organization by ServiSuite and cannot be edited here; until it is set up the screen shows “not provisioned — contact ServiSuite support to set up texting.”

Texting

FieldRequiredDescription
Texting EnabledNoMaster switch for two-way texting. When off, no texts send or receive.
Texting number—The organization’s provisioned texting number (read-only).

Appointment Reminders

Automated reminders send a customer a text a set number of hours before their appointment. Reminders are configured as reusable rule sets that you then apply to service types.

FieldRequiredDescription
Automated Reminders EnabledNoMaster switch for automated appointment reminders.
Set nameYesName of a rule set (for example, “Standard — 48h + day-of”).
Hours BeforeYesHow many hours before the appointment this rule sends (must be greater than 0).
Confirmation Settings (wording)YesWhich Appointment Confirmation Settings bundle supplies the message wording.
Applies toNoThe service types this set is assigned to (shown as chips; add with + Service type). A service type belongs to at most one set, and a type with no set assigned sends no reminders.

For each rule, an appointment that is not yet confirmed receives the bundle’s confirmation ask (the reply YES/NO message); an already-confirmed appointment receives the bundle’s informational reminder variant. Message wording itself is edited on the Appointment Confirmation Settings bundles under Service → Settings → Appointment Confirmation Settings, not here.

Quiet Hours

FieldRequiredDescription
Start (HH:mm)NoStart of the window (24-hour, organization local time).
End (HH:mm)NoEnd of the window.

Automated reminders never send inside the quiet-hours window; staff-initiated texts are unaffected. Leave both blank for no quiet hours.

Compliance

Customers can opt out at any time by texting STOP and back in by texting START; opted-out numbers are blocked from all sends automatically. Staff can mark a number opted out from the customer’s Texts tab, but only the customer’s own START text can opt it back in.

Text and picture messages consume credits from the organization’s credit wallet, and message costs are tracked per organization for usage reporting.


Navigation: Administration → Business Settings

Business Settings holds your organization’s company identity — the name, address, contact details, and logo that appear on every customer-facing document (invoices, pay applications, statements, and reports). It is available to users with the Manage Business Settings permission; without it the fields and the Save button are read-only.

Company

FieldRequiredDescription
Company NameYesThe organization’s legal or trading name. Cannot be blank.
Name Line 2NoAn optional second line printed under the company name.
Address / Address 2NoStreet address lines.
City / State / Zip / CountryNoThe rest of the company address.
Main PhoneNoPrimary business phone shown on documents.
FaxNoBusiness fax number.
Sales EmailNoThe organization’s sales email address. It is also used as the “from” address on some customer-facing emails, such as customer portal invitations.

Documents & Compliance

FieldRequiredDescription
Report NameNoThe company name used in report output.
License NumbersNoContractor or business license numbers to print on documents.
DUNS NumberNoThe organization’s DUNS number.
EINNoThe organization’s Employer Identification Number.

Company Logo

Upload a PNG logo (up to 1 MB) with the Upload PNG button. The logo is shown at the top of your customer-facing documents. Only PNG images are accepted.


Navigation: Administration → Customer Portal

The Customer Portal screen turns on and configures the self-service portal where your customers sign in to view their invoices and balances, pay online, and see their service records. It is available to users with the Portal Administration permission (the screen is labeled Customer Portal, while the permission that grants it appears as Portal Administration in the role editor). The portal stays invisible to customers until the master switch is on.

Access

FieldRequiredDescription
Portal enabled (master switch)NoMaster switch for the whole portal. While off, no customer can sign in and no invites can be sent.
Allow self-enrollmentNoLets customers enroll themselves (they must have an email on file and enter a matching invoice number to prove account ownership).

Two link buttons sit on the Access section:

  • Copy portal link — copies a durable sign-in link that never expires. Put this in email templates and on your website; it shows your branding on the sign-in page and offers enrollment to new customers.
  • Copy self-enroll link — copies a link that goes straight to the enrollment form. It expires after 30 days.

Modules

Choose which sections a signed-in customer sees. All are on by default:

ModuleShows the customer
PaymentsPay invoices online (requires the Stripe integration).
QuotesTheir quotes/proposals.
Service HistoryPast service records.
AppointmentsUpcoming and past appointments.
AgreementsTheir service agreements.
EquipmentEquipment on file for their account.

Branding & Support

FieldRequiredDescription
Accent Color (hex)NoA hex color (for example #1A73E8) used as the portal’s accent color.
Support PhoneNoSupport phone number shown to customers.
Support EmailNoSupport email address shown to customers.
Terms / Fine PrintNoText shown in the portal footer.

Portal Logo

Upload a PNG (up to 1 MB) shown on the portal sign-in page. If none is uploaded, the portal uses your company logo from Business Settings.

Individual customers are enrolled and revoked from the Portal Access tab on the customer record, not here — see Portal Access. When a customer pays through the portal, the receipt posts to AR automatically; see Customer Portal Payments.


Navigation: Administration → Online Booking

Configures the public online-booking experience: whether it is on, what customers can request, how far ahead and during what hours they can book, and who is notified. It is available to users with the Booking Administration permission. The requests customers submit are worked by dispatchers on Service → Booking Requests (see Online Booking).

Availability

FieldRequiredDescription
Online booking enabledNoMaster switch. When off, the booking link is unavailable to customers.
Copy booking link—Mints and copies the public booking URL to share on your website or in messages. The link is also shown on screen so you can select it if the browser blocks the copy.
Customer time selectionYesHow customers pick a time: Date (day only), Time of day (named windows), Arrival window (fixed-length windows), Specific start time (exact times you list), or Week (whole week).
Opening time / Closing timeYesThe daily booking window. Closing must be after opening.
Minimum notice (hours)YesThe least advance notice a customer must give; times inside this window are not offered.
Booking horizon (days)YesHow far into the future customers can request. Must exceed the minimum notice.
Daily request limitNoCaps how many requests are accepted per day. Leave blank for no limit.
Require technician shift coverage for work-order requestsNoWhen on, a day is offered for work-order services only if an on-shift technician could absorb the visit.
Require technician shift coverage for lead requestsNoThe same coverage check for estimate (lead) services.

Depending on the Customer time selection, extra settings appear:

  • Arrival window — a Window length (minutes) (15–1440) that must fit inside booking hours.
  • Time of day — up to 16 named windows (Label, Start, End). Windows must be ordered, non-overlapping, inside booking hours, and have unique labels; at least one is required.
  • Specific start time — up to 96 exact start times, each inside booking hours and unique; at least one is required.

Estimate Defaults

FieldRequiredDescription
Lead sourceNoThe lead source stamped on leads created from estimate booking requests (the “came from online booking” marker). Lead department and default stage come from the estimate service’s lead type.

Submission Message

FieldRequiredDescription
MessageNoShown to the customer on the confirmation screen after they submit a request.

Booking Services

The services customers can choose from. Each row shows the service name (with its optional icon), its type (Work order or Lead), and the roles notified when a request for it arrives. Drag rows to reorder how they appear to customers; use the row actions to edit or delete a service, and the + in the header to add one. Deleting a service stops customers requesting it.

Each service is defined with:

FieldRequiredDescription
Service nameYesWhat the customer sees.
DescriptionNoOptional detail shown to the customer.
Appointment typeYesWork order or Lead (estimate). Cannot be changed after creation.
Service typeYes (work order)The service type a converted work order uses (supplies default status, duration, and arrival window).
Lead typeYes (estimate)The lead type a converted lead uses (supplies default duration, department, and stage).
Notify rolesNoRoles emailed when a request for this service arrives.
IconNoAn optional icon shown next to the service.

Navigation: Administration → Scan Devices

Scan Devices are the copiers and scanners you register so they can send scanned documents straight into a document queue, where they are reviewed and filed to records. Each device files over HTTPS using its own login, which you set up on the copier as a file repository. This screen is available to users with the Manage Scan Devices permission.

Each device files into either the Service document queue (scans become documents to file against work orders) or the AP document queue (scans become documents to file to, or post as, vendor invoices).

ColumnDescription
NameThe name you gave the device
UsernameThe device’s login username (used in its copier file-repository setup)
Default QueueWhere the device’s scans land — Service invoices or AP invoices — for scans whose document path does not already specify one
Last SeenWhen the device last filed a scan, or Never

Use the Add Scan Device (+) button in the grid header to register a device. Each row has Edit, Issue a new password, and Retire this device actions.

FieldRequiredDescription
NameYesA label for the device (for example, “Front office Xerox”)
Default queueYesService invoices or AP invoices — used for scans whose document path is not explicitly “service” or “ap”

The screen shows a Copier setup panel with the values the copier’s file-repository form needs — Protocol, Host, Port, Script path, and the Document path for each queue. On a Xerox, add a file repository under Workflow Scanning using these values, then create one scan button per queue using its document path. The device signs in with its own username and password.

When you add a device or Issue a new password, a Copier Login dialog shows the device’s username and its password. The password is shown only once — enter it on the copier immediately, as it cannot be retrieved later, only replaced.


Navigation: Administration → Wallet

The Wallet is your organization’s shared credit balance that funds usage-based features — the AI assistant (and AI-generated call summaries, which bill from the wallet) and text messaging. You buy credits here, and features draw them down as they are used. This screen is available to users with the Wallet & Billing permission; without it, the Wallet entry is hidden from the Administration menu (and opening the screen directly shows a message instead of the balance).

The screen is organized into the following sections:

SectionWhat it shows
BalanceThe current balance in dollars and in credits, with the per-credit price. A Buy Credits button opens the purchase dialog (it requires card payments to be configured for the installation; in the dialog you can charge the saved card or enter a new one). If the balance reaches zero, features that use credits can become unavailable.
Payment MethodThe card on file, with Add card / Replace card and Remove, plus how much auto top-up has spent this month.
Automatic Top-UpA switch to Buy credits automatically with three fields — When balance falls below, Amount to buy, and Monthly funding limit (a cap on what can be auto-charged per month). All three are required while auto top-up is on. Auto top-up needs a card on file to run.
Budgets (per feature)One section per metered feature (for example, the assistant and texting), each with a Monthly budget, a When the budget is reached choice (Block — stop the feature, or Warn — keep going but flag it), and a rate card showing what one unit costs. A $0.00 budget turns that feature off; an empty budget means no limit.
UsageA chart of credits used per day for the selected month.
TransactionsA table of credit purchases for the selected month — Date, Type, Status, Credits, Amount, Bought By, and Note — with a month selector in the header.

Credit purchases and auto top-ups are paid by credit card through Stripe. If card payments are not configured for the installation, the balance and history are still visible but credits cannot be bought here.


The Utilities section provides operational tools and shared reference data.


Define the reasons that can be used when placing a sales order, shipment, or vendor invoice on hold. Navigate to Utilities → Settings → Hold Reasons.

ColumnDescription
ReasonThe hold reason text
Applies To Sales OrderWhether this reason can be used on sales orders
Applies To Sales Order ShipmentWhether this reason can be used on shipments
Applies To Vendor InvoiceWhether this reason can be used on vendor invoices
FieldRequiredDescription
ReasonYesHold reason text (max 255 characters)
Applies To Sales OrderNoCheckbox
Applies To Sales Order ShipmentNoCheckbox
Applies To Vendor InvoiceNoCheckbox

Define reusable email templates that pre-fill the subject and body when you email a document. Navigate to Utilities → Settings → Email Templates.

When you email a document (for example, an invoice or a customer statement), only templates whose Type matches that document are offered in the Email Template picker. Picking a template fills in the subject and body: the template’s subject replaces the pre-filled one, and — when Use User Email Signature is on and you have an email signature set — your signature is appended to the body.

ColumnDescription
NameThe template name
TypeThe document type the template applies to
SubjectThe subject line the template fills in
User Email SignatureWhether the sender’s personal email signature is appended when the template is used
FieldRequiredDescription
NameYesTemplate name (max 255 characters)
TypeYesThe document type this template applies to. One of: Bill Of Lading, Customer Statement, Invoice, Order Acknowledgement, Packing List, Pick Ticket, Purchase Order, or Receiving Form. Only templates whose type matches the document being emailed are offered.
SubjectNoThe email subject the template fills in (max 255 characters). It replaces the default subject when the template is chosen.
BodyNoThe email body the template fills in.
Use User Email SignatureNoWhen on, the sender’s personal email signature (from User Settings) is appended to the body — but only if the sender has one set.

Use the delete (trash) icon on a row to archive a template (a confirmation prompt is shown); archived templates no longer appear in the list or the email picker.


Find and merge duplicate customer accounts or site addresses. Navigate to Utilities → Manage Customer Duplicates.

FieldDescription
Account TypeSearch for duplicate Customer accounts or duplicate Site addresses
Grouping MethodGroup duplicates by Address similarity or Name similarity

Click Get Duplicates to run the search. Results appear in the grid below the search controls.

ColumnDescription
(checkbox)Select records to include in a merge
Cust IDCustomer ID — click to open the customer record
Site IDSite address ID
NameCustomer or site name
AddressStreet address
Apt #Secondary address line (apartment/suite)
CityCity
StateState
ZipZIP code
Home PhoneHome phone number
Cell PhoneCell phone number

Select two or more records, then click Merge Accounts. In the dialog, choose which record is the master (Select Account to Merge Into) and click Next. The Data Moving with Transfer screen then lists the related-record counts (AR transactions, work orders, invoices, contracts, etc.) that will move into the master. Click Merge to consolidate. This action is irreversible — review the counts carefully first.


An amortization calculator for loan and financing analysis. Navigate to Utilities → Financial Calculator.

FieldDescription
Solving ForSelect the unknown variable: Payment, Principal, Term, or Interest Rate — the selected field will be calculated from the others
PrincipalLoan amount ($)
Interest RateAnnual interest rate (%)
PaymentPeriodic payment amount ($)
TermNumber of monthly payments
Start DateDate of the first payment

Select the variable to solve for in the Solving For control. That field becomes disabled and is calculated automatically from the other values as you enter them. Click Generate Table to produce the amortization schedule, or Clear to reset all fields.

ColumnDescription
Date/PeriodPayment date or period number
PaymentTotal payment amount
Interest PaidInterest portion of the payment
Principal PaidPrincipal portion of the payment
Principal RemainingLoan balance after the payment
Cumulative InterestTotal interest paid to date
Cumulative PrincipalTotal principal paid to date
Cumulative TotalTotal amount paid to date

The schedule includes yearly subtotal rows and a final grand total row summarizing total interest and principal paid.


Many grid screens throughout the application support data import and export functionality.

Screens with a data-import button (Document Posting, Manage Budget Amounts, and AP Post Invoice) support bulk-loading data from external files.

ActionDescription
Download TemplateDownloads a blank CSV/Excel template with the correct column headers for this screen’s data format
Upload DataUpload a completed CSV or Excel file to import rows into the grid

The upload shows a progress indicator (0–100%) during processing. Imported data replaces or appends to the current grid contents depending on the screen.

Most grid-based list screens include an export tool panel with three output formats:

FormatDescription
ExcelExports the current filtered/sorted grid data as an .xlsx file
CSVExports as a comma-separated values file
PDFGenerates a formatted PDF document with color-coded rows and column headers

Exports respect the current filter and sort state — only visible rows are included in the output.


The application uses WebSocket connections to deliver real-time data updates to all connected users. Changes made by one user are automatically reflected on other users’ screens without requiring a page refresh.

How it works:

  • Each browser session maintains a persistent WebSocket connection to the server.
  • When a record is created, updated, or deleted, the server publishes an event to all connected users in the same organization.
  • The client automatically updates the affected grids, lists, and detail screens in real time.

Capabilities:

  • Model updates — Record inserts, updates, and deletes are broadcast to all connected users, keeping list screens and detail views current.
  • RingCentral call events — Inbound and outbound call notifications appear in real time when the RingCentral integration is connected.
  • Session refresh — Authentication state changes are pushed to connected clients.

Connection management:

  • Auto-reconnection with retry if the connection drops (up to 10,000 retries at 3-second intervals).
  • Keep-alive ping/pong every 15 seconds to detect stale connections.
  • Connections are automatically cleaned up when the browser tab is closed.

Per-user preferences for your own account, including your profile picture, interface appearance, sidebar behavior, your personal scheduling boards, and your default organization.

Navigation: Click your avatar in the top-right corner of the application and choose User Settings from the dropdown menu.

The User Settings area has a left-hand navigation panel with three items:

ItemDescription
ProfileYour profile picture, appearance, and sidebar preferences, plus your default organization
Scheduling BoardsYour personal scheduling boards and the order of employees on each
Servisuite PluginDownloads the Servisuite Helper installer (used for local printing and other desktop integrations)

These settings apply only to your own user account.

The Profile screen lets you set a profile picture, toggle appearance and sidebar preferences, and select your default organization. Each toggle is saved immediately when changed, and a confirmation message appears once the change is stored.

Profile picture

Click the avatar area (labeled Click to upload a file when empty) to choose an image file. After selecting an image you can adjust it with the Zoom and Rotate sliders. Use the save button to apply the picture or the delete button to remove the selected image. Your updated picture appears on your avatar throughout the application.

Preference toggles

ToggleDescription
Dark Mode EnabledSwitches the application interface to a dark color theme
Sidebar Links New TabOpens sidebar navigation links in a new browser tab
Collapsed Sidebar On LoginStarts each session with the sidebar collapsed
Auto Collapse Sidebar CategoriesAutomatically collapses other sidebar categories when you expand one
Close Sidebar On Link ClickCloses the sidebar automatically after you click a navigation link

Each toggle is off by default until you change it.

Prompt To Resend Confirmation On Time Change

This toggle is on by default. When on, moving an already-confirmed appointment more than 30 minutes from its confirmed time prompts you to resend the customer’s confirmation. Turn it off to skip that pop-up and move confirmed appointments without being asked.

Phone Call Screen Pop

If your organization has RingCentral connected, choose when an incoming-call card pops on your screen:

OptionBehavior
OffNever pops an incoming-call card.
When I answer(Default) Pops the card when you pick up the call.
When my phone ringsPops the card as soon as your RingCentral phone starts ringing. Ring pops appear for everyone whose phone is ringing on the call.

The setting is disabled when your organization does not have RingCentral connected.

Email Signature

Enter a personal signature in the Email Signature box. Your changes are saved when you click out of the box. The signature is appended to the message body when you email a document and pick an Email Template whose Use User Email Signature option is on (see 5.2 Email Templates); if you have no signature set, nothing is appended.

Default Organization

Use the Default Organization selector to choose which organization you are signed in to by default. Selecting an organization updates your default immediately and shows a confirmation message.

The Scheduling Boards screen lists the scheduling boards available to you, showing each board’s name and whether it is your default. Use the edit action on a board to manage it:

  1. On the Scheduling Boards screen, click the Edit action on the board you want to change.

  2. In the edit dialog, drag employee rows to set the order in which employees appear on that board.

  3. Check Set as Default Board if you want this board to be your default.

  4. Click Save to apply your changes, or Cancel to discard them.

The Servisuite Plugin item downloads the Servisuite helper installer (servisuite-helper.msi). Clicking it opens the installer download directly; no further selection is required.

  1. Open the user avatar menu in the top bar and choose User Settings.
  2. In the left navigation panel, click Servisuite Plugin.
  3. Save and run the downloaded servisuite-helper.msi installer.

Each user can personalize the scheduling boards they have been given access to: choose which board opens by default for them, and set the order in which employees appear on a board. These are personal settings — they only affect the signed-in user and do not change the shared board configuration that administrators manage under Administration → Scheduling Boards (4.4 Scheduling Boards).

Navigation: User avatar menu (top right) → User Settings → Scheduling Boards

The screen lists every scheduling board you have access to.

ColumnDescription
Scheduling BoardThe name of the board
DefaultWhether this board is currently set as your default board
(Edit)The Edit action — opens the personalization dialog for that board

Click the Edit (pencil) icon on a board to open the Edit Scheduling Board dialog.

FieldDescription
Set as Default BoardWhen checked, this board becomes your default board
Employee listA drag-to-reorder grid of the employees configured on this board; the order you set here is the order in which they appear for you

To personalize a board:

  1. From the user avatar menu, choose User Settings, then select the Scheduling Boards tab.
  2. Click the Edit (pencil) icon on the board you want to personalize.
  3. To make this your default board, check Set as Default Board.
  4. Drag employee rows up or down to set the order in which they appear for you on that board.
  5. Click Save. A confirmation message appears, or Cancel to discard your changes.

Print a shipment label for a From and To location to a PCL printer. Navigate to Utilities → Shipment Generation Labels to open the Print Shipment Generation Label dialog.

The printed label is titled “SHIPMENT GENERATION LABEL” and shows the From and To locations along with a scannable Data Matrix barcode that opens the corresponding shipment.

FieldRequiredDescription
From LocationYesThe originating location. Search by location ID or description.
To LocationYesThe destination location. Search by location ID or description.
PCL PrinterYesThe printer to send the label to. Only printers with a type of PCL are listed.
  1. Open Utilities → Shipment Generation Labels.

  2. Select the From Location and To Location.

  3. Select the PCL Printer to print to.

  4. Click Print. A confirmation message (“Label printed”) appears when the label is sent to the printer.

The printed label lists each location as its ID, followed by ” - ” and the location description when a description is present. The label’s barcode encodes the From and To location IDs so it can be scanned to open the matching shipment.

If no PCL printer appears in the list, no printer of type PCL has been configured. Printers and their types are managed under Administration → Printers (see 4.10 Printers).


For the complete list of Administration and Utilities permissions and what each one allows, see the Permissions Reference: Administration and Utilities.

PermissionDescription
View UserView the user list
Create UserCreate new user accounts
Edit UserEdit user details and role assignments
Delete UserRemove user accounts
View RoleView the roles list
Create RoleCreate new roles. Also required to copy a role: copying is authorized by this permission, so a user without Create Role cannot complete a copy even if the Copy Role button appears enabled
Edit RoleEdit role names and permissions. Also controls the Copy Role button, which is enabled only for users with Edit Role — but completing a copy additionally requires Create Role
Delete RoleRemove roles
View Permission Override SetView permission override sets
Create Permission Override SetCreate new override sets
Edit Permission Override SetEdit override sets
Delete Permission Override SetRemove override sets
View PrinterView the printer list
Create PrinterAdd new printers
Edit PrinterEdit printer configurations
Delete PrinterRemove printers
View Access Control ClassView attachment access classes
Create Access Control ClassCreate new attachment access classes
Edit Access Control ClassEdit attachment access classes and their assigned roles
Delete Access Control ClassRemove attachment access classes
Manage Scheduling BoardsCreate, edit, and delete scheduling boards
Manage Form TemplatesCreate, edit, and delete form templates
Manage Custom Field DefinitionsAdd and modify custom fields on system models
Manage Tag DefinitionsCreate, edit, and delete tag definitions
Manage User SessionsView active sessions and kill sessions
Internal Email BlastSend bulk emails to users by role
Manage API IntegrationsConnect, configure, and disconnect third-party integrations
Manage ID FormatsConfigure the patterns used to generate human-readable IDs (text, date, counter, and conditional sections), including the shared AR Invoice Number
Manage API TokensCreate and revoke API tokens for the public read-only API, and view per-token usage
Manage Scan DevicesRegister copiers and scanners that file scans into the document queue, and reset or retire their credentials (Administration → Scan Devices)
Manage Business SettingsEdit the organization’s business settings — company name, address, contact details, and the company logo shown on customer-facing documents
Portal AdministrationConfigure the customer portal (enablement, branding, modules, and self-enroll links) and manage each contact’s access from the Portal Access tab on the customer record
Booking AdministrationConfigure online booking settings, services, and notification roles

These permissions live in the Utilities category of the role editor.

PermissionDescription
AssistantGrants access to the AI assistant chat (asking data questions, building grids, and reviewing posting proposals). It grants no data access of its own — the assistant can only see and act on data the user’s other permissions already allow
Assistant: Post Cash ReceiptLets the assistant prepare a cash receipt posting for this user to approve. Required in addition to the user’s normal cash receipt permission — being able to post a cash receipt on screen does not, by itself, let the assistant prepare one
Assistant: Post Vendor InvoiceLets the assistant prepare a vendor invoice posting for this user to approve, in addition to the user’s normal vendor invoice permission
Assistant: Organization MemoryManage what the assistant remembers for the whole organization (each user manages their own personal memory without this permission)
Assistant: Usage InsightView assistant usage by user for the organization
Wallet & BillingManage the organization wallet — balance, credit purchases, payment method, auto top-up, and per-feature budgets (Administration → Wallet). Without it, the Wallet entry is hidden from the Administration menu

Scenario: Kevin (Admin) needs to create a system login for Maria Garcia, who has been hired as the new AP Clerk at Precision Mechanical.

Step 1 — Create the user account:

  1. Navigate to Administration → Users and click Create User.
  2. Enter:
    • Email = maria.garcia@precisionmech.com
    • Display Name = Maria Garcia
    • Title = AP Clerk
  3. Link Employee = Maria Garcia (from the Payroll employee record).
  4. Assign Roles = AP Clerk.
  5. Click Create. An invitation email is sent to Maria’s email address.

Step 2 — Verify role permissions:

  1. Navigate to Administration → Roles and click AP Clerk to review.
  2. Confirm the role grants:
    • Vendor: Create, View, Edit ✓
    • Vendor Invoice: Create ✓
    • Pay Invoices (Misc): ✓
    • Issue Check (Misc): ✓
    • AP Key Off (Misc): ✓
    • AP Apply Prepayments (Misc): ✓
    • Bank Reconciliation: Create, Edit ✓
  3. Confirm the role does NOT grant:
    • Payroll: any ✗
    • Ledger Settings (GL Settings): Edit ✗
    • Job: Create/Edit/Delete ✗

Step 3 — Maria accepts invitation:

  1. Maria clicks the link in the invitation email.
  2. Sets her password (minimum 8 characters).
  3. Logs in. She sees:
    • Accounts Payable menu (full access)
    • General Ledger menu (read-only, per role)
    • No Payroll, no Job Costing, no Administration menus

Step 4 — Add a permission override (optional): If Maria needs to view (but not edit) job cost data for invoice distribution:

  1. Kevin navigates to Administration → Permission Overrides and clicks +.
  2. Name = AP Clerk - View Jobs.
  3. Add rule: Model = Job, Field = (select a Job field), Permission = Read, Value = Allow.
  4. On the AP Clerk role (Administration → Roles → AP Clerk → Overrides tab), add this override set so it applies to everyone with that role.

Example 2: Customer Duplicate Detection and Merge

Section titled “Example 2: Customer Duplicate Detection and Merge”

Scenario: Kevin notices that Greenfield Construction has two customer records in the system — one entered as “Greenfield Construction” and another as “Greenfield Const.” — causing split AR history.

Step 1 — Find duplicates:

  1. Navigate to Utilities → Manage Customer Duplicates.
  2. Set Account Type = Customer, Grouping Method = Name.
  3. Click Get Duplicates.
  4. Results show two matching records:
Cust IDNameAddressBalance
C-1020Greenfield Construction450 Industrial Pkwy$17,000.00
C-1087Greenfield Const.450 Industrial Parkway$3,500.00

Step 2 — Start the merge and review the impact:

  1. Select both records using the checkboxes, then click Merge Accounts.
  2. On the Select Account to Merge Into screen, choose C-1020 (Greenfield Construction) as the master (it has the most history and the correct name), then click Next.
  3. The Data Moving with Transfer screen shows the related-record counts that will move from C-1087 (Greenfield Const.) into the master: 2 sales invoices, 0 jobs, 1 work order, 0 proposals, plus AR and other related-record counts.

Step 3 — Merge:

  1. Click Merge to consolidate the records into C-1020 (Greenfield Construction).

Result:

  • C-1087 no longer exists.
  • C-1020 (Greenfield Construction) now shows:
    • 26 invoices (24 + 2 merged)
    • 3 open jobs
    • 6 work orders (5 + 1 merged)
    • 13 cash receipts (12 + 1 merged)
    • Combined balance: $20,500.00
  • AR aging and customer statements now reflect the complete history under one record.

Rules are grouped by category.

  • Role Union — A user with multiple roles has effective permissions equal to the union of all their roles’ permissions. Permissions are purely additive: a role can only add access, never take away access another of the user’s roles grants, and there is no built-in administrator or superuser that bypasses permission checks — an all-access account is simply a role (or combination of roles) that happens to grant everything.
  • Override Specificity — Permission overrides allow or restrict read or update access to individual record fields, a granularity finer than roles. They apply only to fields on records the role can already reach — they never grant a screen, a whole record, or create/delete access. When a user’s roles carry two override sets with conflicting rules for the same field, the outcome is not guaranteed: the system applies no fixed precedence (such as deny-over-allow) between them, so avoid stacking override sets that disagree on the same field. A field that is required for a permission the role grants can only ever be allowed by an override, never restricted.
  • Merge Irreversibility — Customer duplicate merges are permanent and cannot be undone.
  • One Active ID Format Per Entity — Each record type may have at most one active ID format at a time; activating a second format for the same entity is rejected.
  • Increment Width vs. Cap — In an Increment section, the Start value’s digit count is only a minimum zero-padded width; the sequence renders wider once it passes that width. A sequence stops only when an optional Increment End is reached, at which point creating a record fails until the format is changed or replaced.
  • Archive Requires Deactivate — An ID format must be deactivated before it can be archived; the archive action is unavailable while the format is active.
  • Token Shown Once — An API token’s full value is displayed only at creation and is never retrievable afterward. Revoking a token takes effect immediately and cannot be undone.
  • Portal Master Switch — While the customer portal’s master switch is off, customers cannot sign in and portal invites cannot be sent, regardless of individual access grants.
  • Booking Service Type Binding — A booking service’s Appointment type is fixed at creation: a work-order service must have a Service Type and an estimate service must have a Lead Type. These supply the defaults (status, duration, arrival window, department, stage) that a converted work order or lead inherits.
  • Invitation Email — Creating a new user auto-sends an invitation email with a password-setup link.
  • Role Cascade — Modifying a role’s permissions instantly updates access for every user assigned to that role.
  • Custom Field Propagation — A custom field added to a model (e.g., Customer) immediately appears in all modules using that model.
  • Required Field Enforcement — Custom fields marked “Required” block record saves across all modules until filled.
  • User Onboarding — Admin creates user → Assigns roles → Invitation sent → User sets password → Access granted per roles.

  • Duplicate Merge — Find Duplicates → Review Impact → Select Master → Confirm Merge → All records consolidated.

  • Audit Trail Logging — All changes to supported records (Jobs, Customers, Vendors, Work Orders, Employees) are automatically logged with the user, timestamp, and field-level old/new values.

  • Real-time Data Sync — Record inserts, updates, and deletes are broadcast to all connected users in the same organization via WebSocket, keeping list screens and detail views synchronized without manual refresh.

  • Increment Reset by Date — When an ID format’s Increment is not set to run continuously, its counter automatically restarts whenever the rendered date sections change (for example, yearly for a two-digit-year token).

  • Portal Invite Logged — Sending a customer portal invite emails the contact a branded sign-in link and records a note on the customer’s communication history; revoking access records a note as well.

  • Scheduling Board Config — Board definitions determine which employees appear on Service dispatch and scheduling boards.
  • Integration Effects — Connected integrations affect other modules: Stripe payments appear in AR, RingCentral calls appear in CRM.
  • Tag Cross-Module — Tags defined in Administration can be applied to records in AR, CRM, Service, and other modules.
  • ID Formats Apply on Creation — An ID format governs identifiers generated for its entity across every module that creates that record; editing a format affects only records created afterward, never existing ones.
  • Portal Payment Posts to AR — A successful customer portal payment automatically posts a cash receipt to Accounts Receivable, so it appears on View AR Payment, the customer’s ledger, and in aging (see Customer Portal Payments).

Q: A user can’t access a screen they need — they don’t see it in the menu. Check the user’s assigned Roles and verify a role grants the necessary permission for that screen. Screen access comes only from the permissions granted in a role — a Permission Override cannot open a screen (overrides only allow or restrict reading or updating specific record fields). To give the user that screen, grant the screen’s permission in one of their roles, or assign them a narrowly scoped role that covers it (Role Union).

Q: I changed a role’s permissions but users still see the old access. When you save a change to a single role by editing that role directly, it takes effect for everyone assigned that role right away — signed-in users do not need to log out or refresh (Role Cascade). If the access still looks wrong, check whether a Permission Override on one of the user’s roles is restricting a field they need — overrides act only on individual record fields, not on screens or whole records. If two override sets disagree on the same field, remove the conflict rather than relying on one of them winning (see Override Specificity).

Q: A custom field I created isn’t appearing on the form. Custom fields propagate to all modules that use the target model immediately (Custom Field Propagation). If you don’t see it, verify you selected the correct Model (e.g., Customer, Work Order, Job). Also check whether the field has a display condition that hides it in certain contexts.

Q: Users can’t save records — “required field” error for a custom field. Custom fields marked Required block record saves across all modules until filled (Required Field Enforcement). If the field was added after existing records were created, consider making it optional or providing a default value. Otherwise, users must fill it on every create and edit.

Q: A hold reason isn’t showing in the dropdown on a specific document. Hold reasons are scoped to specific document types. Check the hold reason’s Applies To checkboxes in Utilities → Settings → Hold Reasons and enable it for the document type where it should appear.

Q: I’m worried about merging customer duplicates — what if I pick the wrong master? Customer merges are permanent and cannot be undone (Merge Irreversibility). Always review the Data Moving with Transfer screen (shown after you choose the master and click Next) to see how many related records (invoices, work orders, cash receipts, proposals) will move before you click Merge. Select the record with the most complete history and correct name as the master.

Q: The invitation email wasn’t received by the new user. Check the email address for typos. The invitation auto-sends when the user is created (Invitation Email). If the address is correct, check the user’s spam/junk folder. You can resend the invitation from the user’s record.

Q: An integration (Stripe, RingCentral) isn’t working after configuration. Verify the integration credentials and connection status in Administration → Integrations. Each integration requires specific API keys or OAuth tokens. Test the connection before expecting it to function across modules. Stripe affects AR payments; RingCentral affects CRM communications (Integration Effects).

Q: How do I view the audit history for a record? Navigate to the record’s detail screen (e.g., View Job, View Customer) and select Actions → Audit. The audit trail shows all changes with timestamps, the user who made the change, and old/new values for each field (Audit Trail Logging). Use the date range filter to narrow results — it defaults to the last 1 month.

Q: Changes made by another user aren’t appearing on my screen. The application uses real-time WebSocket updates to keep screens synchronized (Real-time Data Sync). If changes are not appearing, check your network connection — the WebSocket may have disconnected and is attempting to reconnect. Refreshing the browser will re-establish the connection.

Q: I set an ID format’s Start to 0000 but numbers went past 9999 — is that a bug? No. The Start value only sets a minimum zero-padded width, not a maximum. Once the counter passes the width it simply renders more digits (Increment Width vs. Cap). To cap a sequence, set an End value; the sequence then stops when it reaches the cap.

Q: My new counter numbers records continuously, but I want it to restart each year. Add a Date section with a year token (e.g. YY) and turn off “Ignore date sections when incrementing.” The counter then restarts whenever the rendered date changes (Increment Reset by Date). Leaving that switch on keeps one continuous sequence.

Q: I lost the API token value right after creating it. The full token is shown only once and cannot be retrieved afterward (Token Shown Once). Create a new token, copy it immediately, and revoke the lost one.


  • Role design: Keep roles focused on job functions (e.g., “AP Clerk”, “Sales Manager”) rather than creating one role per person. Multiple roles can be assigned to a single user when someone covers multiple functions.

  • Copying roles: Use Copy Role when creating a new role that is similar to an existing one — it duplicates all permission settings and you only need to adjust the differences.

  • Custom fields vs. form templates: Use Custom Fields to add persistent data fields to standard records (stored and searchable). Use Form Templates for structured data-collection forms attached to work orders or service visits (captured at the time of service).

  • Tags vs. custom fields: Tags are lightweight labels for filtering and categorization — a record can have many tags. Custom fields are for storing specific named values. Use tags for status flags, groupings, or free-form categories; use custom fields for structured data you need to query or report on.

  • Permission overrides: Override sets are for edge cases where a role needs field-level read or update access that differs from the standard grant. They attach to roles, not to individual users — to scope an override to one person, give that person a dedicated, narrowly scoped role. Keep override sets minimal and well-documented, and avoid attaching two sets that set conflicting rules for the same field.

  • Attachment access classes: Attachments are scoped to an access control class and are visible only to users whose roles are assigned to that class. The visibility check requires an overlap between the class’s roles and the viewer’s roles, so an attachment with no access class assigned has no matching roles and is not broadly visible. Assign an access class to restrict a document to specific roles (e.g., HR-only files on an employee record).

  • Kill session carefully: Killing a session immediately logs out that user without warning. Use this for security purposes (e.g., a former employee whose account has not yet been deactivated) or when a user is locked in a stuck session.

  • Email Blast: The Email Blast goes to system user email addresses — it is for internal staff communication only, not for customer-facing messages. It targets users by role, so role assignments must be current for the right people to receive it.

  • Customer duplicate merges: The merge operation is permanent and cannot be undone. Always review the Data Moving with Transfer screen first to see how many related records will move. Verify that you have selected the correct master account before confirming.

  • Financial Calculator: The calculator is a standalone planning tool — it does not create any records in the system. Use it to model loan terms, compare payment scenarios, or verify financing structures before entering them elsewhere.

  • Hold reasons scope: A hold reason only appears as an option on the document types it is configured for. If a hold reason is not showing up in a dropdown, check that the correct Applies To checkboxes are enabled in Utilities → Settings → Hold Reasons.

  1. Navigate to the record’s detail screen (e.g., View Job, View Customer, View Vendor).
  2. Click Actions and choose the record-specific audit option (e.g. Audit Job, Audit Customer, Audit Vendor) to open the audit trail.
  3. Adjust the Start Date/Time and End Date/Time to filter the range of changes you want to review (defaults to the last 1 month), then click Search.
  4. Click the expand arrow on any row to see field-level changes with old and new values.