ConnectWise Setup Guide

Appxite

Introduction

This guide covers the essential ConnectWise configuration steps that Partners need to complete before and alongside the Platform integration. It explains how to set up products in the Product Catalog, manage Agreement Types, use Custom Fields for integration mapping, understand Company and Agreement records, reconcile data between systems, handle multi-currency scenarios, correct synced data, and configure security role permissions.

ConnectWise Homepage

For the full end-to-end workflow inside the Platform, refer to the ConnectWise integration overview article. For responsibility boundaries between AppXite and Partners, see PSA integration scope: AppXite and Partner responsibilities.

Platform ↔ ConnectWise field name dictionary

The Platform and ConnectWise use different names for the same concepts. This is the official mapping (visible on the Platform's Settings → ConnectWise → Dictionary tab):

Platform term ConnectWise term
Organizations Companies
Invoice lines Additions
Offers Products
Contracts Agreements

Keep this dictionary open when working across both systems — every section in this guide uses both terms side by side.

1. How to create products in the ConnectWise Product Catalog

Before mapping products in the Platform, each product must exist in the ConnectWise Product Catalog. The catalog is the source of truth for all products that appear in the PSA Product Name dropdown on the Platform's Mapping → Products tab.

On the Platform's Mapping → Products tab, click Load Products and select a time window (start with 1–3 months). The tab loads only Offers that have appeared on Invoices in that period — not your entire catalogue. For each row, click Click to select in the PSA Product Name column to pick the matching ConnectWise product from a dropdown.

See also: ConnectWise integration: Mapping organizations and products

Navigation in ConnectWise

Procurement → Product Catalog → click + (New Item)

New Product Setup form in ConnectWise

Required fields

Field Recommended value and notes
Product ID A unique identifier. Use a consistent naming convention — for example the vendor SKU or a short descriptive code. This is the value that appears in the PSA Product Name dropdown on the Platform.
Description A short human-readable name shown on invoices and alongside the Product ID in the Platform's dropdown.
Category Select the category that matches the product type. For Microsoft 365 and cloud services, use Managed Services.
Subcategory Select the matching subcategory. For cloud recurring services, use Managed Services.
Product Type Fixed Cost Service for recurring cloud services. Use Software for one-time software licenses.
Product Class Non-Inventory for services and software (no physical stock).
UOM Month for recurring services billed monthly. Use Each or user-based for seat-based licenses.
Agreement Type Select the Agreement Type this product is typically billed under (for example, Microsoft 365 or Managed Service). Aligning the product Agreement Type with the Agreement it will be added to avoids mapping inconsistencies.
Billable Set to Billable so the product appears as a chargeable Addition on Agreements.
Integration Cross Reference Optional free-text field. Store the AppXite Offer ID or a readable cross-reference identifier here to make reconciliation easier.
Customer Description Text shown to the end-customer on the invoice. If left empty, ConnectWise uses the Description field.

Dropdown field options

Product Type

Product Type dropdown options

Product Class

Product Class dropdown options

Billable

Billable dropdown options

Category

UOM dropdown options

Subcategory 

UOM

 

NOTE! If a product does not appear in the PSA Product Name dropdown on the Platform, it has not yet been created in the ConnectWise Product Catalog, or the Product Catalog permission for the integration API user is not set to Inquire All. Check both before troubleshooting further. Products are never synced from ConnectWise back to the Platform; if a product is missing in CW, create it there first, then return to the Platform's Mapping → Products tab to complete the mapping.

2. Running Agreement Invoicing after sync

After the Platform syncs invoice lines to ConnectWise as Additions, those Additions are attached to Agreements but are not yet invoices. To generate a final invoice that can be sent to the Customer, the Partner must run Agreement Invoicing inside ConnectWise.

NOTE! This step is performed entirely inside ConnectWise. The Platform's role ends once the Additions have been successfully synced.

How Agreement Invoicing works

Finance → Invoicing → Agreement Invoicing tab shows one row per Agreement per billing period. Each row represents one billing cycle ready to be invoiced. The Items to Bill column shows Recurring Additions for lines synced from the Platform.

Steps to generate invoices

  1. Navigate to Finance → Invoicing.
  2. Click the Agreement Invoicing tab.
  3. Set Thru Date and Invoice Date to define the billing period.
  4. Click Search. ConnectWise loads all Agreements with active Additions in the selected period.
  5. Select the checkbox next to each row you want to invoice.
  6. Click Create Invoices.
  7. A confirmation modal appears: “Invoice all selected items — Are you sure?”. Click YES.
NOTE! Each row represents one billing period for one Agreement, not the Agreement as a whole. If an Agreement has multiple unbilled periods, each appears as a separate row and must be invoiced individually.

3. How to create and manage Agreement Types

Agreement Types are the billing contract templates used when creating Agreements in ConnectWise. The Platform's Configuration tab (under Settings → ConnectWise) requires an Agreement Type selection, and the dropdown is populated from the Agreement Types configured in your ConnectWise instance.

On the Platform's Configuration tab, the Agreement Type dropdown is mandatory — the integration cannot post invoice lines until it is selected. The dropdown is populated directly from the Agreement Types in your ConnectWise instance. If you don't see the expected types, check they exist in CW and re-test the connection.

How the Agreement Type is used during sync

Empty PSA Agreement Name

When an invoice line is posted and the PSA Agreement Name column on the Invoices tab is left empty, the Platform automatically creates a new Agreement in ConnectWise using the default Agreement Type

After the sync being done, the Agreement Name is being added by Platform the system automatically.

The new Agreement's Start Date matches the invoice date. All subsequent lines for the same Customer with an empty PSA Agreement Name are posted to this same new Agreement — not one Agreement per line.

A new Agreement is created for the Customer using the default Agreement Type configured in the Platform. The new Agreement's Start Date matches the invoice date. 
Navigate to Finance → Agreements and look for an Agreement of the configured type.
NOTE! If multiple invoice lines for the same Customer have an empty PSA Agreement Name, they are all posted under the same newly created Agreement — not one Agreement per line.

Selected PSA Agreement Name

If a PSA Agreement Name is selected on the Invoices tab, that explicit Agreement is used regardless of the Agreement Type setting in Configuration.

See also: Setting up the ConnectWise integration · How configuration settings are reflected in ConnectWise

Navigation in ConnectWise

System → Setup Tables → search for “Agreement Type” → Agreement Types

Creating a new Agreement Type

  1. Click + to create a new Agreement Type.
  2. Enter a Name (for example, Microsoft 365 Monthly).
  3. Set Billing Cycle (the appropriate cycle for your billing model).
  4. Set Cycle Based On to Contract Year or Calendar Year.
  5. Set Bill Products to Billable so Additions from the Platform are included in invoices.
  6. Optionally enter an Integration Cross Reference — a free-text identifier for accounting system reconciliation.
  7. Click Save.
Agreement Type detail form - upper section
Agreement Type detail form - Billing Defaults section

Fields that matter for the AppXite integration

Field Notes for integration
Name Appears in the Agreement Type dropdown on the Platform's Configuration tab. Use a clear, descriptive name.
Default If checked, this type is pre-selected when creating new Agreements in ConnectWise.
Billing Cycle Defines how often ConnectWise expects to invoice this Agreement type. Must match the billing cadence of the Platform contracts mapped to it.
Cycle Based On Contract Year starts from the Agreement's start date; Calendar Year uses Jan–Dec.
Bill Products Must be set to Billable for Additions synced from the Platform to appear on invoices.
Integration Cross Reference Optional. Use to store accounting system identifiers for reconciliation.
Automatically Generate Invoices If checked, ConnectWise generates invoices automatically. Leave unchecked if you prefer manual control via Agreement Invoicing.
NOTE! The Agreement Type selected on the Platform's Configuration tab is used as the default type when the Platform automatically creates a new Agreement in ConnectWise (when PSA Agreement Name is left empty during invoice mapping).

4. Setting up Custom Fields for integration mapping

ConnectWise Custom Fields allow Partners to add additional identifier fields to Company, Agreement, and Product records. For the Platform integration, Custom Fields are useful for storing cross-reference identifiers (such as Platform Organization IDs or ERP IDs) that make reconciliation easier.

The Platform assigns a unique Organization ID (the Organization Reference # visible in the Mapping → Organizations grid) to every Customer Organization. Storing this value in a ConnectWise Custom Field on the Company record lets you instantly cross-reference which CW Company maps to which Platform Organization.
 

The Platform also exposes PSA Organization Name, which corresponds to Company Name in CW.

Navigation in ConnectWise

System → Setup Tables → search for “Custom” → Custom Fields

Custom Fields in ConnectWise Setup Tables

The most relevant screens for the AppXite integration are:

  • Company → Company Overview — for storing AppXite Organization IDs
  • Agreement → Overview — for storing AppXite Contract IDs
  • Agreement Addition → Additions — for storing AppXite Invoice line references
Custom Fields list showing available screens and pods

Creating a Custom Field

  1. Click on the Screen and Pod where you want to add the field (for example, Company → Company Overview).
  2. Click + to add a new Custom Field.
  3. Enter a Field Caption (for example, “ERPId”).
  4. Set Field Type to Text (maximum 100 characters).
  5. Set Method of Entry to Entry Field for a simple text input.
  6. Check Display on Screen? so the field is visible on the record.
  7. Click Save.
Custom Field creation form
Field Notes
Field Caption The label shown on the record. Use a name that clearly identifies the integration purpose.
Field Type Text (max 100 chars) is sufficient for IDs and cross-references.
Method of Entry Entry Field for free text. Use List for a dropdown with predefined values.
Sequence # Controls display order when multiple custom fields exist on the same pod.
Display on Screen? Must be checked for the field to appear on the record form.
Include on List View? Check to show the field as a column in the Company or Agreement list views.
NOTE! Once a Custom Field is created, it appears on all existing and new records of that type. The field is empty by default on existing records.

5. Understanding the Company record for integration purposes

In ConnectWise, a Company is the customer entity that Agreements and Additions are linked to. During the Platform integration, Platform Organizations are mapped to ConnectWise Companies. Only valid, active Company records appear in the PSA Organization Name dropdown on the Platform's Mapping → Organizations tab.

On the Platform's Mapping → Organizations tab, click Sync Organizations to retrieve companies from ConnectWise and populate the list. For each row, click Click to select in the PSA Organization Name column to link the Platform Organization to a CW Company.

Key behaviours to know:

  • The Excluded from Sync flag defaults to Yes for every newly synced Organization. You must explicitly set it to No before any invoice lines for that Organization will be posted to ConnectWise. This is a deliberate safety mechanism — nothing is auto-posted without your confirmation.
  • A single ConnectWise company can be linked to multiple Platform Organizations (one-to-many relationship). If multiple Platform Organizations map to the same CW company, you must manually specify the PSA Agreement Name for each invoice line — the Platform cannot infer which Agreement to use.
  • Only Organizations that participate in valid invoices are pulled from the Platform — the full Organization list is not transferred.
  • Re-mapping an Organization to a different CW company does not move previously synced invoice lines. Already-synced lines remain on the original CW company. Only new syncs go to the new mapping.

See also: ConnectWise integration: Mapping organizations and products

Minimum required fields for integration

Field Requirements and notes
Company (name) Required. The display name shown on invoices and in the Platform's PSA Organization Name dropdown.
Company ID Required. A unique identifier used internally by ConnectWise and in API calls. Must not contain spaces.
Status Must be Active. Companies with status not-Approved or Inactive do not appear in the Platform's dropdown.
Type Should be set to Customer for companies that will be invoiced.
Site At least one Site (default: Main) is required. The Site provides the billing address used on invoices.
NOTE! If a Customer does not appear in the PSA Organization Name dropdown on the Platform, check that the Company Status is Active and that the integration API user's Security Role has Company Maintenance set to Inquire All.

6. Agreement detail structure and what matters for the integration

An Agreement in ConnectWise is the billing container that invoice lines (Additions) synced from the Platform are attached to. Understanding which fields matter for the integration helps Partners configure Agreements correctly and avoid billing errors.

On the Platform's Mapping → Invoices tab, each invoice line has a PSA Agreement Name column. This is where you select which ConnectWise Agreement the line will be synced into as an Addition. Two cases:

  • Select an existing Agreement — the Addition is posted to that Agreement directly.
  • Leave PSA Agreement Name empty — the Platform creates a new Agreement in ConnectWise using the default Agreement Type from Configuration (see Section 3). The new Agreement's name matches the Agreement Type name, and its Start Date matches the invoice date.

How Platform charge-date values appear on Additions

The badge on the Charge Start Date and Charge End Date columns on the Platform's Invoices tab indicates exactly what ConnectWise will receive on the Addition:

Platform badge CW Effective Date (← Charge Start Date) CW Cancelled Date (← Charge End Date)
No badge Raw Platform date — no adjustment Non-recurring: last day of the start month. Recurring (Cycle Fee / Purchase Fee): empty — Addition continues billing every cycle
System Updated Adjusted by the Charge Start Date rule configured in Settings Adjusted by the Charge End Date rule configured in Settings
User Updated Manually entered value — overrides any rule Manually entered value — overrides any rule

For the complete scenario-by-scenario breakdown with screenshots, see Charge-date rules: how they affect Additions in ConnectWise.

The Charge Start Date on the Platform invoice line maps to the Effective Date on the CW Addition. The Charge End Date maps to the Cancelled Date. Both can be adjusted by configuration rules or manual overrides — see Section 7 for the full behaviour table.

See also: ConnectWise integration: Loading and syncing invoice lines · Invoice lines in ConnectWise Manage

ConnectWise Agreement Details

Fields that matter for the Platform integration

Section / Field Notes for integration
Agreement Name The name that appears in the PSA Agreement Name dropdown on the Platform's Mapping → Invoices tab. Use a descriptive name.
Agreement Type Determines the billing template. Must be set to a type that has Bill Products = Billable.
Start Date / No End Date The Agreement must be active for Additions to be invoiced. Set No End Date for open-ended contracts.
Status Must be Active. Cancelled Agreements cannot receive new Additions.
Billing Cycle In Recurring Invoicing Parameters. Defines how often the Agreement is invoiced (Monthly, Quarterly, etc.).
Currency In Recurring Invoicing Parameters. Must match the currency of the Platform contract mapped to this Agreement.
Bill Products In Finance Information Defaults. Must be set to Billable so Additions appear on invoices.
Automatically Generate Invoices If enabled, ConnectWise generates invoices automatically. If disabled, run Agreement Invoicing manually (see Section 2).

Additions tab

The Additions tab is where synced invoice lines from the Platform appear. Each row is one invoice line. Navigate to it via Finance → Agreements → open Agreement → Additions tab.

Additions tab inside a ConnectWise Agreement

7. Reconciling Platform and ConnectWise data

After syncing, Partners should verify that invoice lines on the Platform match the Additions in ConnectWise. Discrepancies can occur due to mapping errors, charge-date rule differences, or sync failures.

The Platform provides two key views for reconciliation:

  • Mapping → Invoices tab — shows each invoice line with its Charge Start Date, Charge End Date (with badges), Charge Type, Quantity, Cost, Revenue, PSA Organization, PSA Product, PSA Agreement, and Status in PSA. This is the source of truth for what should be in ConnectWise.
    Platform example: 

    ConnectWise after sync:


     
  • System Logs page — shows sync history and errors over the last 30 days. Filter by Error to see only failures. Each error entry shows a summary with the specific cause. If an Addition is missing in CW, check here first before re-syncing.

See also: ConnectWise integration: System Logs and troubleshooting · Invoice lines in ConnectWise Manage

How to compare data

  1. On the Platform, go to Mapping → Invoices and note the PSA Organization, PSA Product, Charge Start Date (and its badge), Charge End Date (and its badge), Charge Type, Quantity, and Revenue for a given line.
  2. In ConnectWise, navigate to Finance → Agreements, open the relevant Agreement, and click the Additions tab.
  3. Find the matching Addition and compare: Effective Date (= Charge Start Date, after any rule or manual override), Cancelled Date (= Charge End Date, after any rule or manual override), Product ID, Quantity, and Unit Price.
  4. The Description field on the Addition shows the Charge Type name — either the Platform default or the custom name if one is configured in Settings → Configuration → Custom Charge Type Names.

Using the Agreement Reconciliation Report

ConnectWise provides a built-in reconciliation report per Agreement. Open an Agreement and click Reconciliation in the top toolbar. Set the Start Date and End Date, then click OK.

Agreement Reconciliation Report

Common reconciliation issues

Issue How to identify and resolve
Addition missing in ConnectWise Check the Platform's System Logs (filter by Error) for the sync error on that line. Common causes: PSA Organization not mapped, PSA Product not mapped, Agreement belongs to wrong company. Re-sync the line individually after fixing the cause.
Wrong Effective Date on Addition A Charge Start Date rule in Configuration has adjusted the date — check for the System Updated badge on that line's Charge Start Date column on the Platform. If the rule is correct, the value is expected. If you need a different date, edit the line inline (which sets a User Updated badge) before re-syncing.
Wrong Cancelled Date on Addition Check Charge End Date rules in Configuration. A System Updated badge on the Platform means a rule was applied. See the full behaviour table in Section 6.
Wrong Description (Charge Type name) on Addition Check Settings → Configuration → Custom Charge Type Names. A System Updated badge on the Charge Type column in the Platform means a custom name is in effect.
Addition under wrong Agreement PSA Agreement Name was mapped incorrectly. Already-synced lines cannot be moved via the Platform; correct the Cancelled Date and Product directly on the Addition in ConnectWise.
Duplicate Additions Check the Platform's Status in PSA column. If Synced, do not re-sync. Delete the duplicate directly in ConnectWise.
"Response Error" badge in Mapping Status Indicates a temporary communication issue with ConnectWise. Wait a few minutes and refresh the page. If it persists, check the Dashboard → System Information panel for connection status.

8. Multi-currency handling

When syncing invoice lines to ConnectWise, the currency of the Addition is determined by the Agreement it is posted to. Partners operating across multiple currencies must ensure that each Agreement in ConnectWise is configured with the correct currency before syncing.

On the Platform, each invoice line's currency is inherited from the Reseller Invoice Contract associated with it. This currency is visible in the Currency column on the Platform's Mapping → Invoices tab. It cannot be changed via the Platform UI.

Before mapping an invoice line to a ConnectWise Agreement, confirm that the Platform contract currency matches the Agreement's currency in CW. A mismatch will post values in the wrong currency without any warning from the Platform.

Currency List in ConnectWise Setup Tables
Step Currency behavior
Platform invoice line The invoice line currency is inherited from the Platform contract (Reseller Invoice Contract). This currency cannot be changed via the Platform UI.
ConnectWise Agreement The Currency field in Recurring Invoicing Parameters sets the currency for all Additions on that Agreement. This must match the Platform contract currency.
Addition (synced line) Price and Ext Price on the Addition are posted in the Agreement's currency. ConnectWise does not convert currencies automatically.

Setting currency on an Agreement

  1. Open the Agreement in ConnectWise (Finance → Agreements → open Agreement).
  2. Scroll to the Recurring Invoicing Parameters section.
  3. Select the correct currency from the Currency dropdown.
  4. Click Save.
NOTE! Currency must be set on the Agreement before the first sync. Changing currency on an Agreement that already has synced Additions may cause inconsistencies in ConnectWise invoicing.
Warning! Partners cannot change invoice contract currency on the Platform side via the UI. For newly onboarded Sellers, the invoice contract currency is inherited from the parent contract. To change it, submit a support request to the Platform Support.

9. Handling corrections and adjustments post-sync

Once an invoice line is synced from the Platform to ConnectWise (Status in PSA = Synced), it can no longer be edited on the Platform's Invoices tab. All corrections must be made directly on the Addition in ConnectWise.

On the Platform's Mapping → Invoices tab, a line with Status in PSA = Synced has its edit controls locked. The row's checkbox is also disabled — you cannot include already-synced lines in a Bulk Update. This is by design: the Platform treats synced lines as handed off to ConnectWise.
 

Do not re-sync a line after manually correcting the Addition in ConnectWise — re-syncing will overwrite your corrections with the original Platform values.

Custom Invoices (corrections/adjustments) created directly on the Platform can also be synchronized into ConnectWise. During synchronization, those records are mapped as Correction entries — the Charge Type syncs as Correction and the Platform Charge End Date appears in ConnectWise as the Cancelled Date on the Addition.

See also: ConnectWise integration: Loading and syncing invoice lines — Custom invoices and corrections

Editing an Addition directly in ConnectWise

Navigate to Finance → Agreements → open the relevant Agreement → Additions tab → click on the Addition you want to edit.

Addition detail form in ConnectWise
Field on Addition What it controls
Total Quantity The billed quantity. Edit to correct over- or under-reported quantities.
Less Included Amount deducted from Total Quantity before billing. Use to apply included units.
Quantity to Bill Calculated as Total Quantity minus Less Included. This is the quantity that appears on the invoice.
Unit Price The price per unit. Edit to correct pricing errors after sync.
Effective Date The charge start date (corresponds to Charge Start Date on the Platform).
Cancelled Date The charge end date. Clear this field to reactivate a cancelled Addition.
Bill Customer Set to Billable, Do Not Bill, or No Charge.
Product Invoice Description The description shown on the customer-facing invoice.
NOTE! Editing an Addition in ConnectWise does not update the corresponding line on the Platform. Do not re-sync lines that have been manually corrected in ConnectWise as this will overwrite your corrections.

Cancelled Subscription handling (automatic)

When a full sync runs, the Platform automatically checks whether each Subscription that produced recurring invoice lines in the previous month is still active in the current month. If a Subscription is no longer present (cancelled, not renewed, or ended), the Platform updates the corresponding Addition in ConnectWise by setting the Cancelled Date to the last day of the previous invoice month. This detection runs automatically as part of every full Sync Invoices to PSA operation — not when only individual lines are selected.

10. Security Role permissions reference

The Platform integration connects to ConnectWise via an API user assigned to a Security Role. The Security Role must have the correct permissions for the integration to read Companies, post Additions, and access invoicing data.

The API credentials you enter on the Platform's Authentication tab (API URL, ConnectWise Company ID, API Public Key, API Private Key) are tied to the CW API Member that belongs to this Security Role. If the role is missing any required permission, the Platform will fail to read Organizations, post Additions, or pull product data.

After creating or modifying the Security Role in CW, use the Test Connection button on the Platform's Authentication tab to verify the API user has sufficient permissions. 
Successful result: green message "Test is successful." 
Failure: red message "Test is not successful."

For step-by-step instructions on creating the API Member and generating keys in ConnectWise, see How to obtain ConnectWise credentials.

Creating the API Member in ConnectWise

  1. Navigate to System → Members → API Members tab.
  2. Click + to create a new API Member.
  3. Enter the Member ID (unique identifier for the API user), Member Name (descriptive display name), and assign the Role ID (the Security Role you will create below).
  4. Click Save.
  5. Open the newly created API Member and navigate to the API Keys tab.
  6. Click + to generate a new API key. Enter a description (for example, AppXite Integration API Keys).
  7. Click Save. Copy and securely store the Public Key and Private Key.
Warning! The Private Key is displayed only once during creation. Store it securely before closing the window. If lost, a new key pair must be generated in ConnectWise — it is not recoverable from the Platform.

Creating the Security Role

  1. Navigate to System → Security Roles.
  2. Click + to create a new role.
  3. Enter a Name (for example, AX Integration).
  4. Click Save, then open the role and configure Security Modules as described below.
Security Roles list in ConnectWise

Required permissions matrix

Security Modules - Companies and Finance permissions
Security Modules - Procurement permissions
Module Add Edit Delete Inquire
Companies → Company Maintenance All All None All
Companies → Contacts All All None All
Finance → Accounting Interface All All None All
Finance → Agreement Invoicing All None None All
Finance → Agreement Sales All All All All
Finance → Agreements All None All All
Procurement → Product Catalog All All All All
Procurement → Products All All All All
NOTE! Permissions not listed in the table above should remain at None to follow the principle of least privilege.

Summary

This guide covered the key ConnectWise configuration areas that Partners need to manage alongside the Platform integration: creating products in the Product Catalog, running Agreement Invoicing to generate final invoices from synced Additions, setting up and managing Agreement Types, using Custom Fields for cross-reference mapping, maintaining valid Company and Agreement records, reconciling data between the Platform and ConnectWise, handling multi-currency scenarios, correcting synced Additions directly in ConnectWise, and configuring the Security Role permissions for the integration API user.

Was this article helpful?

0 out of 0 found this helpful

Add comment

Please sign in to leave a comment.