The QuoteWerks-developed ConnectWise integration requires specific product mappings to determine the type of items being pulled from ConnectWise Products database and saved to the Opportunity. These mappings specifically deal with the QuoteWerks Item Type field and the ConnectWise Product Class, Product Type, and Category/SubCategory fields. The relationships you set within the integration are going to have a bi-directional relationship. Thus, whatever you set to pull products in will also be used to push those items back out to the Opportunity. Other fields will be pushed into ConnectWise Manage from QuoteWerks related to the items also. The Description, Vendor, Vendor Part Number are just a few of the major fields that will also be copied from QuoteWerks into the item created in ConnectWise Manage.
QuoteWerks will not update an existing ConnectWise Product. If you save an item to a ConnectWise Opportunity and the item already exists in the ConnectWise Products database, the existing item in this database will be used. The integration will ignore the mapping for Type, Class, and Category from QuoteWerks under the ConnectWise Setup for the integration.
Saving Products to the ConnectWise Opportunity
With the items pulled into the QuoteWerks quote, you need to have some way to inform ConnectWise how to categorize these products in the ConnectWise forecast. With a link type now selected, you'll need to look to the Products -> Mappings tab to determine how line items are saved to/pulled from ConnectWise. Under the Mappings section near the bottom of the window, there are three tabs to focus on: Product Types, Categories/SubCategories, and Product Classes. Product Types and Categories/SubCategories are going to be the two mappings types just discussed.
Product Types Sub Tab
Some of the default ConnectWise Product Types are Non-inventory, Inventory, Service, and Agreement. These are all very general, basic item-categorization types. If you're using this as the main mapping, as discussed above, you'll really only be concerned with the overall types of products you're dealing with rather than the specific item.
For every ConnectWise Product Type, there should generally be an exact corresponding QuoteWerks Item Type to match. For example, if you have a ConnectWise Product Type of “Service”, then you should create a QuoteWerks Item Type called “Service” as well. This way, there is a one-for-one, bidirectional relationship between QuoteWerks and ConnectWise.
While the ConnectWise Product Type is a general field, keep in mind that ambiguity and generalization can defeat the purpose of these mappings. If you have a line item that walks the line between, for example, a service and a managed service, you'll need to decide definitively how that item should be listed. A service is a service, and could be a managed service, but a managed service may not just be a service. Keep the relationships one-to-one for a better experience across the integration.
This tab gives you another option for linking items between QuoteWerks and ConnectWise on the Products List tab. This is a more granular level of categorizing your products. As with the Products Types, for each SubCategory you have setup in ConnectWise, there should be a corresponding QuoteWerks Item Type. As SubCategories in ConnectWise tend to be highly specific, so too should be the mappings. There is very little room for ambiguity in this setup. It should also be noted that the Category/SubCategory settings are what is used by the ConnectWise integration when mapping items to accounting items (i.e. items in your accounting package integrated with ConnectWise, such as Quickbooks).
Product Classes Tab
This tab is a more generalized mapping and basically determines whether the line item is a Product (Inventory or Non-inventory), Service or a Agreement. Depending on the integration setup, this field will also determine the Forecast Type, and how products are listed on the opportunity; i.e. broken up into their individual forecast lines.
Regardless of which option you choose to base product linking on (Product Type or Category/SubCategory), all three tabs discussed above must have corresponding mappings for each mapping created, in order to avoid issues with the integration.
To give an example of how this works, let’s say there is a ConnectWise item with an Item ID of “test123”. In ConnectWise, the part of “test123” is a service type item. It has a Category/SubCategory of “Block Time”, Product Type of “Miscellaneous”, and Product Class of “Service”. By its selections in the ConnectWise product database, you can see that this is a very general item — maybe something like a basic labor charge or installation of the other items one is selling on the quote.
On the Product List tab, you've chosen to use “Product Type” as the method for linking products between QuoteWerks and ConnectWise. Thus, under the QuoteWerks Product Types tab, QuoteWerks would need to have an Item Type of “Misc.” (to match the ConnectWise Product Type). You would also map the “Block Time” subcategory to “Misc.”, and the “Service” Product Class to “Misc.” as well. This will allow this line item to hit all its correct marks, as well as be pulled from the ConnectWise product database with the correct settings.
Now, let’s say you also have a tangible, hardware-type product item you're selling with an Item ID of “product101”. That product has a Product Type of “Miscellaneous”, SubCategory of “Product”, and Product Class of “Non-inventory”. Again, this is a very generalized line item. See how the Product Type is the same as what our Service was? How will this play out? Well, the system will see the first mapping alphabetically in the list; in this case, “Product”. Thus, you run the risk of having all your Miscellaneous line items being pulled from and saved to ConnectWise as Products. This is why items need to be listed as general, yet specific when using the Product Type to create our link to items in ConnectWise.
If you have a line item or item in your database with a Product Type of “Miscellaneous” but no actual linking for “Miscellaneous” under the Product Types tab, then the line items will simply default to what is set as the default under the Product List tab. As it states there, if no QuoteWerks Item Type is resolved in the mapping, then it will use the default set Item Type. In this case, one runs the risk of all their line items coming over as Products, if one has no specific mapping for “Miscellaneous” under the Products tab > Mappings tab > Product Types tab.
Pulling Products from ConnectWise
QuoteWerks can link directly to your ConnectWise Product Database: view the Linking to ConnectWise Product List topic for information on setting up this feature.
Once you arrive at the end, you'll have access to your ConnectWise product list. ConnectWise configures each item as a “Product” by default, with a few exceptions. Because of this, it's necessary to inform the two systems what type of “Products” are being pulled from the ConnectWise database.
In QuoteWerks, on the Document Items table of fields, there is a field called Item Type. This field is mapped to the ConnectWise product database to determine what the type of item is (e.g., product, service, agreement).
The link between the ConnectWise Product database and QuoteWerks starts in the integration setup. Starting on the Products -> Product List tab, you will need to decide how you are going to link the products from ConnectWise to QuoteWerks. The two choices are “Categories/SubCategories”, or “Product Types”:
The "Categories/SubCategories" selection is a more granular, detailed level of mapping. You'll want to use this mapping if you wish to track products at a very intricate level (e.g., backup software vs. word processing software vs. a workstation vs. a server; again, a very granular delineation between products).
Using "Product Types" as the mapping method indicates a more general, high-level delineation between items. This would be, for example, the separation of Products vs. Services vs. Agreements; a very basic method for tracking products.
Regardless of what you decide to use when linking products within ConnectWise, the QuoteWerks field that will be populated by the selected data is always going to be under the Quote Workbook's Document Items tab column Item Type. The mappings are bidirectional; thus, when pulling items from ConnectWise, the corresponding mapping will be set to the Item Type field on the line item itself. When saving line items to ConnectWise, the Item Type field will determine how that line item is saved to ConnectWise. This particular field will determine four things inside of ConnectWise: the Forecast type, Product Type, Product Class, and Category/SubCategory.
On the Products > Product List tab under the QuoteWerks Contacts -> Setup Contact Manager menu > ConnectWise dialog, you will determine how you are linking products between QuoteWerks and ConnectWise. Secondly, you'll determine what occurs if no mapping exists, and what to default a line item’s Item Type to when either saving the line item to an Opportunity or pulling the product from the ConnectWise linked product database. The latter of the selections,selects the QuoteWerks Item Type for the products. This will correspond to the selections made on the Products > Mappings tab.
With this much set, you can see the link working by going to Products within QuoteWerks and then searching the ConnectWise database for items.:
You'll be able to see the Item Type column being populated. In the case of the screen shot above, the Item Type column is being populated with the Item Type of “Product”, as these particular items have had their Product Type set to “Product”. If this item were added to a quote within QuoteWerks, its Item Type would be populated with “Product”, and that is how that item will be saved out to ConnectWise for forecasting.