Contracts
Manage service agreements, track billing models, and organize company relationships
Understanding Contract Statuses
Contracts move through different statuses during their lifecycle:
- Draft - You're still preparing the contract
- Pending Approval - Waiting for internal approval before it goes active
- Active - The contract is in effect and SLA policies apply
- Expired - The contract reached its end date
- Terminated - The contract was ended early
- Completed - The contract finished successfully
- Archived - Stored for historical reference
Understanding Billing Models
When creating a contract, you'll choose a billing model:
- Per User - Monthly billing based on how many billing units are on the contract
- Hourly - Billed by the hour for work performed
- Block Hours - Company has prepaid for a block of hours
- Retainer - Fixed monthly retainer fee
Understanding Contract Types
Contract types help you organize your contracts into categories like "Managed Services Agreement", "Block Hours", or "Time & Materials". You can:
- Set default SLA policies for each contract type
- Configure billing unit type templates (for per-user billing)
- Keep your contracts organized and consistent
Creating a Contract
Step 1: Start a New Contract
- Go to Contracts in the main menu
- Click "New Contract"
- Or create one from a company's detail page
Step 2: Fill in Contract Details
Enter the basic information:
- Title: Name of the contract
- Company: Select which company this contract is for
- Contract Type: Choose a type (optional, but helps with organization)
- Status: Set to "Draft" initially
- Start Date: When the contract begins
- End Date: When the contract ends
- Contract Value: Total value of the contract
- Billing Model: Choose how this contract will be billed
- Per User - For user-based monthly billing
- Hourly - For hourly billing
- Block Hours - For prepaid hours
- Retainer - For monthly retainer
Step 3: Configure SLA Policy
- If your contract type has a default SLA policy, it will be suggested
- You can override it with a contract-specific SLA if needed
- The SLA policy determines response and resolution times for tickets linked to this contract
Step 4: Add Contract Documents (Optional)
- When creating or editing a contract, or on the contract detail page, upload contract documents
- You can drag and drop files or select them
- Categorize documents as:
- Contract - The original contract document
- Amendment - Any contract amendments
- Signature - Signed documents
- Supporting - Supporting documents
- General - Other related documents
Step 5: Link Projects (Optional)
If you want to track work against this contract:
- Link the contract to relevant projects
- This helps you see all work associated with the contract
Setting Up Billing Items
Billing items can be added to any contract type, allowing you to track recurring charges like per-user licenses, org-wide flat-rate services, and org-wide hourly retainers.
Step 1: Review Template Rates
If you used a contract type with billing unit type templates:
- The rates are automatically copied to your contract
- You'll see them on the "Billing Items" tab
Step 2: Add or Customize Billing Items
- Go to the contract's "Billing Items" tab
- Add new billing items:
- Click "Add Type"
- Select a billing unit type
- Choose the Scope:
- Per Contact: For items billed against assigned contacts, such as MSP coverage at $130/user/month
- Org-wide: For charges or hourly pools that apply to the whole customer
- Choose the Unit:
- Flat Rate: For scheduled fixed charges
- Hourly: For time-entry-based billing. Pick one of three methods below.
- Enter the rate details appropriate to the scope and unit
- For flat-rate items, set the quantity (default is 1) - this multiplies the rate (e.g., 5 licenses × $10 = $50/month)
- For flat-rate items, set Bill every (how often the add-on should be billed)
- For flat-rate items, set the Next billed date (the next month it should appear on reports/invoicing)
- Click "Add"
Hourly methods
When you pick Hourly, choose one of three methods:
- Time & Materials (T&M): Bill billable hours at the hourly rate. No included hours, no overage concept — just
hours × rate. - Retainer: Set a number of included hours per period plus an overage rate. Included hours are covered by the retainer (no per-hour charge); anything beyond is billed at the overage rate. Pool resets each period.
- Block of Hours: Customer purchases a block (e.g., 40 hours at $4,400) up front. Hours draw down from the block over time (oldest block first). When a block is depleted, you can either auto-charge the overage rate or be alerted to sell another block.
The same contract can mix all options — for example, 20 users on Per Contact + Flat Rate at $130/month, a $175 Org-wide + Flat Rate network admin fee, and an Org-wide + Hourly retainer for all customer time. 3. Customize existing rates:
- Click the pencil icon to edit a rate
- Click the trash icon to remove a billing item
- Remember: changes to the template won't affect this contract
Step 3: Assign Contacts (Per-contact Items Only)
For billing items with Per Contact scope:
- Still on the "Billing Items" tab
- Click "Assign Contact"
- Select a contact
- Choose their billing unit type
- Set the effective date (when this assignment starts)
- Click "Assign"
Note: Org-wide items don't require contact assignments. Org-wide flat-rate items are billed on the cadence you choose, while org-wide hourly items meter all billable time for the customer through the Billables Report.
The system will alert you if a contact who isn't assigned to a per-contact billing unit type (including hourly types) creates a ticket, so you can make sure everyone is properly categorized.
A contact can be assigned to multiple non-hourly per-contact items at once — for example, MSP Standard plus a Premium Support add-on plus a SAT License. They can only be on one active hourly type at a time, since each method routes time entries differently.
Triaging unassigned contacts at month-end
Open the Billables Report at the end of the period. Time is routed in this order: project override, contact's active per-contact hourly assignment, customer org-wide hourly rate, then the Unassigned bucket. If billable time is still unassigned, you'll see a yellow banner at the top and a pinned Unassigned section. For each contact, pick a contract + billing unit type from the inline picker — the assignment writes immediately and the rollup updates without leaving the page. Below it, the Hourly Billing Summary shows hours, covered/overage split, and dollar totals per type, with a Block Balances widget for any active hour blocks.
Managing Contract Types
Creating a Contract Type
- Go to Settings → Contracts → Contract Types
- Click "Add Contract Type"
- Enter:
- Name: e.g., "Managed Services Agreement"
- Description: What this contract type is for
- Click "Create"
Setting Up Default SLA
- Find your contract type in the list
- Configure a default SLA policy
- This SLA will be suggested when creating new contracts of this type
- You can still override it per contract if needed
Configuring Billing Unit Types Template
For contract types that will use reusable billing item templates:
- Click "Configure Billing Unit Types" on the contract type
- Select which billing unit types should be available
- Set the default scope, unit, and rates for each type
- For flat-rate items, set the default quantity (default is 1) - this multiplies the rate
- When you create a contract with this type, these rates (including quantity) are automatically copied
Managing Your Contract Lifecycle
Moving from Draft to Active
-
Draft → Pending Approval
- Change status to "Pending Approval"
- Wait for internal approval
-
Pending Approval → Active
- Approve the contract
- Change status to "Active"
- SLA policies now take effect for tickets
Completing or Expiring Contracts
-
Automatic Expiration
- Contracts automatically expire when they reach their end date
- You can also manually mark them as "Completed"
-
Termination
- If a contract ends early, mark it as "Terminated"
- Document why it was terminated
-
Archiving
- Archive completed contracts for historical reference
- They'll still be accessible but won't clutter your active contracts list
Working with Contract Files
Uploading Files
- Go to the contract detail page
- Upload files by dragging and dropping or selecting them
- Files are automatically organized and stored securely
Organizing Documents
Categorize your documents to keep them organized:
- Contract - The main contract document
- Amendment - Any amendments to the contract
- Signature - Signed versions of documents
- Supporting - Supporting documents like quotes or proposals
- General - Other related documents
Accessing Files
- All contract files are accessible from the contract detail page
- Download files as needed
- Files are organized by document type for easy finding
How Contracts Work with Other Features
Tickets
- Link contracts to tickets to apply SLA policies
- The contract's SLA determines response and resolution times
- Billing unit assignments help track who's using services
Projects
- Link contracts to projects to track work
- See all time and work associated with a contract
- Useful for reporting and billing
Companies
- All contracts belong to a company
- View all contracts for a company on their detail page
- Track contract history per company
Billing Units
- For per-user contracts, track which contacts are billing units
- Assign contacts to different billing unit types
- See Billing Unit Types Guide for details
Best Practices
-
Use Contract Types: Organize your contracts by type for consistency and easier management
-
Set Clear Dates: Always set start and end dates so you know when contracts are active
-
Configure SLA Policies: Assign appropriate SLA policies so tickets get the right response times
-
Document Everything: Upload contract documents, amendments, and signatures for easy reference
-
Track Status Changes: Use status transitions to track where each contract is in its lifecycle
-
Link Projects: Associate projects with contracts to track all work against the contract
-
Archive Completed Contracts: Archive finished contracts to keep your active list clean while maintaining history
Common Contract Scenarios
Managed Services Agreement (MSA)
- Billing Model: Per User
- Contract Type: "Managed Services Agreement"
- SLA: Standard MSA SLA policy
- How it works: Track billing units and bill monthly based on unit counts
Block Hours Contract
- Billing Model: Block Hours
- Contract Type: "Block Hours"
- SLA: Standard SLA policy
- How it works: Company prepays for hours, and hours are deducted as work is performed
Hourly Project
- Billing Model: Hourly
- Contract Type: "Time & Materials"
- SLA: Project-specific SLA
- How it works: Bill for actual hours worked on the project
Monthly Retainer
- Billing Model: Retainer
- Contract Type: "Recurring Service"
- SLA: Retainer SLA policy
- How it works: Company pays a fixed monthly fee
Org-wide Hourly Retainer
- Billing Model: Retainer
- Billing item: Org-wide + Hourly + Retainer
- How it works: Billable time for the whole customer rolls into one included-hours pool with overage billing after the included hours are used.
Troubleshooting
I Can't See My Contract
Problem: A contract isn't showing up in your contracts list.
Solution:
- Check your filters - you might have status or date filters applied
- Make sure you have permission to view contracts
- Try refreshing the page
SLA Policy Isn't Working
Problem: The SLA policy on a contract doesn't seem to be affecting tickets.
Solution:
- Make sure the contract status is "Active"
- Verify the SLA policy is actually assigned to the contract
- Check that tickets are linked to the contract
- SLA only applies to tickets that are linked to the contract
Billing Unit Rates Didn't Copy
Problem: You created a contract with a contract type, but the billing unit rates didn't appear.
Solution:
- Check that the contract type has billing unit types configured
- Make sure the contract was created from that contract type
- If both are correct, go to the "Billing Items" tab - the rates should be there
I Can't Upload Files
Problem: File uploads are failing.
Solution:
- Check that the file isn't too large
- Make sure you have permission to edit the contract
- Try a different file format
- Contact support if the problem persists
Contract Status Won't Change
Problem: You can't change a contract's status.
Solution:
- Make sure you have permission to update contracts
- Some status changes might have restrictions (check with your admin)
- Try refreshing the page and trying again
See also
- Billable Types Guide - Learn how to set up per-user billing