Follow

ID747 - CW Manage PSA Sync with e-automate - Customers

This sync between e-automate and ConnectWise updates customer information. The sync will update companies in ConnectWise from the information in e-automate. You have the option to also insert new companies from e-automate into ConnectWise.

Jump to: Overview | Samples | Setup | Variables | Testing |  Alert Functionality | Best Practices & Tips |  Related Alerts

 

Click to Subscribe

Click here for our quick videos on this process.

Overview

Overview

We believe that e-automate should be the master for customer information, so the sync will push updates from e-automate customer records to the company records in ConnectWise. No changes to the company record in ConnectWise will push back to e-automate. Parent customers in e-automate (not a location of another customer record) will sync to companies in ConnectWise. Location customers in e-automate (set as a location of another customer record) will sync to sites in ConnectWise.

The information that is updated is the customer name, address, city, state, zip, phone, website, and fax number. You have the option to update the territory or status and you can add custom fields in ConnectWise to sync the sales rep from e-automate to ConnectWise. If there are any of these fields that you do not want to be updated, we can modify the update process to not make updates on any of these fields, please just let us know. No contacts are synced between the two systems.

Especially for clients new to ConnectWise Manage, the insert option is a good way to push your existing IT customers into ConnectWise. There are several filter options to refine the customers to push over or you can insert all active customers. If pushing all active e-automate customers we suggest you first turn on process ID156 to make e-automate customers inactive so only active ones are left to insert and ID926 to check for duplicate customers so that you can merge those prior to syncing to ConnectWise.

To run any of the sync pieces, you must be subscribed to ID747 and have the customer mapping in place. You do not need to have ID747 updating the company records in ConnectWise. 

 

Run Schedule: Every 15 minutes

Type of Output: Sync

 

*  *  *

Sample

Sample

Jump to: Customer Info Updates | CW Territory and Status | EA Sales Rep and On Hold Code | Email Output

Customer Updates

Customer Info Updates

 

EA_customer_sample.jpg

updated

1. Customer Name from e-automate updates Company name in ConnectWise.

2. Address from e-automate updates address field in ConnectWise.

3. City from e-automate updates the city in ConnectWise.

4. State from e-automate updates the state in ConnectWise. **The state field in ConnectWise is a drop-down field and therefore the formatting of the state name in e-automate must match the value in ConnectWise. If the format doesn't match, the sync will be unable to update the company record in ConnectWise.**

5. Zip Code from e-automate will update the zip code field in ConnectWise.

6. Phone 1 from e-automate will update the phone field in ConnectWise. 

7. Fax from e-automate will update the fax field in ConnectWise.

8. Website from e-automate will update the website field in ConnectWise.

**We can turn off any of these fields from updating in ConnectWise if needed**

CW Territory and Status

CW Territory and Status

Optional fields to update in ConnectWise are the territory and status, if you wish to update these fields, you'll need to enter the values to be used in Variable 2 and Variable 4. These must be valid values from ConnectWise, see more details on territory here and status here.

territory_and_status_in_CW.jpg

 

EA sales rep and hold code

EA Sales Rep and On Hold Code

The sales rep and on-hold code from e-automate can update custom fields in ConnectWise. The custom field names need to be: ZCJ_OnHoldCode, ZCJ_SalesRepName and ZCJ_SalesRepEmail. See here for details on how to create custom fields in ConnectWise. 

On Hold Code

The on-hold code is here in e-automate:

ea

The custom field will be populated in ConnectWise:

cw

Sales Rep

The sales rep is here in e-automate:

ea_sales_rep.jpg

The information will populate in the custom fields in ConnectWise:

sales_rep_in_cw.jpg

Email Sample

Email Sample

Starting with the 20230630 version of the sync, you'll receive an email showing companies updated or inserted by the sync:

email

*  *  *

Setup

Setup

Jump to: EA Settings | CW Settings | Subscribe to Alerts 

EA Settings

EA Settings

1. Determine if you want all customers from e-automate to sync to ConnectWise or if you want to filter the set of customers for the sync. You can filter the customers by customer type, contract type, or branch. 

2. Sites in Connectwise link to locations in eAutomate, if you wish to use the sync to create or update sites, existing sites will need to be manually linked together between the two systems. This is done via a custom property on the location company in e-automate. See more on sites here. If the sync is set to insert locations, and existing sites are not linked to the location in e-automate, the sync will create duplicate sites in ConnectWise.

CW Settings

CW Settings

1. If you have existing companies set up in ConnectWise, do they have the e-automate customer number in either the account ID field or the company ID field? Existing customers need to be linked between the two systems prior to testing to ensure no duplicate companies are created in ConnectWise. See more details on the customer mapping here.

2. Create the custom field ZCJ_OnHoldCode in ConnectWise to store the on-hold code from e-automate. Details on how to create that field are here.

3. Create the custom fields in ConnectWise to store the sales rep's name and email address. Details on how to create those are here.

Subscribe to Alerts

Subscribe to Alerts

1. Once you have the settings in ConnectWise and e-automate determined, subscribe to ID747 on our website.  If you don't have a login to our subscription site, you can email help@ceojuice.com to have us set you up with a login. 

* * *

Variables

Variables

Var 8 updated.jpg

Variable 8: Customer Sync Type - Choose from the drop-down the type of sync you want to have in place:

Update Customers only - Only push customer updates from e-automate to ConnectWise.

Update Customers and Locations - Push updates for both customers (Parent in e-automate) and locations (Child in e-automate, site in ConnectWise). 

Insert/Update Customers only - Customers from e-automate will be inserted into ConnectWise as companies. Only parent accounts will be inserted and updated.

Insert/Update Customers and ALL Locations - Both Parent and Child customers from e-automate will be inserted/updated to ConnectWise. Locations will be inserted/updated regardless of whether they meet any filtered criteria for customer type or contract type. Locations in ConnectWise are Sites.

Insert/Update Customers and filtered Locations - Both Parent and Child customers from e-automate will be inserted/updated to ConnectWise. Only locations that meet any filtered criteria will be inserted/updated in ConnectWise. Locations in ConnectWise are Sites.

No updates - The sync will attempt to match customers from e-automate to companies in ConnectWise, where a match is found, the custom property in e-automate will be updated with the Company RecID from ConnectWise. No changes will be made to the information in ConnectWise.

updated_variables_2.jpg

Variable 9: Customer Type - If inserting customers from e-automate into ConnectWise, enter the customer types from e-automate to sync over. Separate multiple values with commas. 

Variable 10: Contract Type - If inserting customers from e-automate into ConnectWise, use this filter option to only sync customers that have an active contract of a set type.

Variable 11: Branch Filter - If inserting customers from e-automate into ConnectWise, use this filter option to only sync customers with this branch.

updated_variables_3.jpg

Variable W: Territory Filter - Enter a territory name if you would like to filter to only those companies assigned to that territory.**This variable affects all ConnectWise to e-automate sync pieces (ID964, ID965, ID966). If you set a territory filter here, ONLY that territory will be used for all aspects of the ConnectWise sync. See more details on territory in ConnectWise here.

Variable 1: Company Type - If inserting companies into ConnectWise, enter the company type to be used.

Variable 4: Company Status - If inserting companies into ConnectWise, optional to specify the status of those companies. See more details on the ConnectWise company status here.

updated_variables_4.jpg

Variable 3: Company Territory - If inserting companies into ConnectWise, the option to specify the territory to be assigned to the company. Can only specify one territory to be used for all inserts. More details on territory are here.

Variable 6: On Hold Code Field - Enter the field in ConnectWise where you want to store the on-hold code from e-automate. 

 

*  *  *

Testing

Testing

There are a few steps to testing the customer sync: getting the testing databases set up, mapping the customers, and testing the functionality of the sync.

Jump to: Testing Options | Customer Mapping | Testing Checklist

Testing Options

Testing Options

Option 1: Update/Insert customers from a test e-automate database to a test ConnectWise database.

   Having a test ConnectWise database is not always an option, but going from a test e-automate to a test ConnectWise is the cleanest test of the sync that won't affect your production data. With this testing setup, you can run the customer sync to update and insert companies and sites and view the results without worrying about creating duplicates in your production ConnectWise.

Option 2: Update/Insert customers from a test e-automate database to the production ConnectWise database.

   When using a test e-automate database to update or insert customers into the production ConnectWise database, we can limit the testing to a small number of customers so that all of your production companies are not affected. This allows you to see how the process functions on a small sample of companies. This option would allow for the customer mapping to be determined for all customers so you would know what companies needed to be mapped to a customer in e-automate prior to moving the sync to the production database.

Option 3: Update/Insert customers from the production e-automate database to the production ConnectWise database.

   If you are new to ConnectWise and don't have many existing companies set up in ConnectWise, this option is the best way to populate ConnectWise with all of your customers from e-automate. There's little fear of creating duplicate customers or sites in ConnectWise and so running the sync directly from production to production is a good option. If you do have existing companies in ConnectWise, but the companies have the e-automate customer number populated on them, you can also go directly from production e-automate to production ConnectWise. 

Depending on the testing option chosen, you’ll need to set up one or more of the following:

1. API Keys in ConnectWise – API keys are required for all testing options. Details on creating API keys here.

2. CEOJuice test database – Required for options one and two. See this link for notes on creating a test CEOJuice database.

3. e-automate test Database – Required for options one and two. The test database used should be one that will not be refreshed over the course of the testing. See this link for notes on creating a test e-automate database.

4. ConnectWise test Database – Required for option one. If using a test ConnectWise database, you’ll need to create a set of API keys for that database.

Customer Mapping

Customer Mapping:

1. CEOJuice will create the needed custom properties in e-automate and run the sync in "no update" mode. This will provide details on what needs to be mapped regarding companies and sites:

- A list of companies and customers that are mapped to each other.

- A list of customers from e-automate that would be inserted should the sync be run in production in insert mode. If these customers do have a match in ConnectWise, that mapping would need to be added in ConnectWise, see details on setting that mapping here.

- A list of all sites currently in ConnectWise. Sites all need to be manually mapped by adding the Site Address RecID to the custom property on the customer record in e-automate.

Testing Checklist

Testing Checklist

To test the functionality of ID747, follow these steps:

1. Update the customer information in e-automate and verify that the matching changes are made in ConnectWise.

2. If using the insert functionality, create a new customer in e-automate and verify that the company is created in ConnectWise.

3. Check that all custom fields are populating: on-hold code, sales rep name, and sales rep email. 

Once the testing steps have been completed, please let us know and we will move the sync fully to production.

 

Alert Functionality

Alert Functionality

The sync runs every 15 minutes and checks for records in e-automate that have been updated since the last run of the sync. You can see the last updated time on the customer record in e-views, in the Updated date column:

updated date on customer record.jpg

If there is a record that hasn't updated in ConnectWise, open the customer record in e-automate and click on the OK button. This will update the last updated date and the sync will "see" the record to process it.

Customer information only flows from e-automate to ConnectWise; no updates or changes that you make to a company record in ConnectWise will push back to e-automate. If you do change any of the information that is updated by the sync, that change will stay in ConnectWise until the customer record is updated in e-automate. At that point, the sync will "see" the customer record and update ConnectWise to match back to e-automate.

You can check for the last user to update the company record in ConnectWise by checking the Audit Trail tab:

CW

 

Jump to: Customer Mapping | Customer Linking | Initial Sync | CW Company ID | CW Account ID | CW Company Status | CW Sites | Territory | Sales Reps

Customer Mapping

Customer Mapping

Companies from ConnectWise are linked to parent customer records in e-automate via a custom property. (See instructions on the custom properties here.) Companies in ConnectWise can not be mapped to location customers in e-automate. For the sync, a parent customer is defined as one that is NOT set as a location to another customer record. See this link for more details on best practices for parent/child customer setup in e-automate.

To map the companies in ConnectWise to the customers in e-automate, follow these steps:

1. Find the ConnectWise Company RecID for the company, this column is shown in the Company listview in ConnectWise.

customer_number_in_cw.jpg

**If you do not see the Company_RecID column in your company list view in ConnectWise, you can add this field by clicking on the gear icon to customize the list view, then find Company_RecID in the hidden columns section and use the arrows in the middle to move the column over to the visible columns list.

2. Add the Company RecID to the custom property ZCJ_CW_CompanyID in e-automate:

customer_mapping_1.jpg

Customer Linking

Customer Linking

The sync follows this logic to link customers between the two systems:

1. Is the Company RecID from ConnectWise entered into the custom property ZCJ_CW_CompanyID?

CW_sync_match_1.jpg

If a match is found, these customers are linked, if no match is found, the sync moves to the next step.

 

2. Does the e-automate customer number have a match in the Company ID field in ConnectWise?

CW_sync_match_2.jpg

If a match is found, these customers are linked and the sync will add the Company RecID from ConnectWise to the custom property in e-automate. If no match is found, the sync moves to the next step.

 

3. Does the e-automate customer number have a match in the Account Number field in ConnectWise?

CW_sync_match_3.jpg

If a match is found then these customers are linked and the sync will update the custom property in e-automate with the Company RecID from ConnectWise. If the sync is set to insert customers and there is no match found at these three levels, then the sync will insert the customer into ConnectWise. The sync will then write back the new Company RecID to the custom property in e-automate for the customer.

If the sync is set to only update, and no match is found, then the customer from e-automate will not be linked to a company in ConnectWise. No information from e-automate will be pushed to ConnectWise for this customer. You can determine if the customer in e-automate is linked to a company in ConnectWise by checking to see if the custom property value is populated on the customer record in e-automate.

**The sync links these customers in our background tables at the initial sync, subsequent syncs will first look for a customer match in these background tables. Should you need to remap a customer, you will need to ask us to correct the background tables. Changes made to the custom property in e-automate or the Company ID/AccountID in ConnectWise will not have any effect on the customer mapping.

 

Initial Sync

Initial Sync of Customers to ConnectWise

At the initial run of the sync, customer records updated in the last 10 years will be "seen" by the sync and updated/inserted in ConnectWise. After the first run, only records updated since the last sync will be updated/inserted (approximately every 15 minutes). Opening the customer record and then clicking on the OK button will cause the last update date to be updated in e-automate, even if you did not make any changes to the record.

You can see the last updated date in e-views:

customer_eview.jpg

If you need to have the sync go back farther than 10 years on the initial run, please let us know so that we can manually set the date to what is needed to capture all records in your e-automate.

 

CompanyID

Company ID in ConnectWise

If you have the sync set to insert companies into ConnectWise, those companies will be created with a Company ID that follows this format: EA EACustomerID. In the below example, the e-automate customer ID is 33095.

updated_companyid.jpg

The Company ID field is only touched upon the insert of new companies into ConnectWise. It is possible to change the company ID after the company has been created, doing so may affect the linking of newly created customers in e-automate if the Company ID is changed to a value that matches an existing e-automate customer number.

Account ID in ConnectWise

Account ID in ConnectWise

When the sync creates companies in ConnectWise it populates the Account ID on the finance section with the e-automate customer number:

account

If the customer number in e-automate changes from what is initially populated, this can cause the sync to link the wrong customers together when it tries to find a matching company in ConnectWise.

CW Company Status

CW Company Status

By default, the sync will create companies in ConnectWise with the status of Active. If you want the sync to use a different status, you can specify one in variable 4. The status must be a valid company status from ConnectWise:

CW

 

CW Sites

ConnectWise Sites

Sites in ConnectWise map to location (child) customers in e-automate. You can not map sites in ConnectWise to parent customers in e-automate, they must map to location customers. For the purposes of the sync, parent customers are those that are NOT a location of another customer record, and child locations are those that ARE set as a location of another customer record.

In order for the sync to update existing sites in ConnectWise, those sites will need to be manually linked to the locations in e-automate prior to the first sync in production. This is done via the custom property ZCJ_CW_SiteAddressRecID; you'll need to enter the Address RecID for each site into the custom property of the matching location in e-automate.

The site address RecID is found in ConnectWise here:

sites_example.jpg

The site name in ConnectWise is limited to 50 characters, if the customer name in e-automate is longer than this, the sync will truncate the site name. 

If you have the sync set to insert sites and do not have existing sites mapped to the matching location in e-automate the sync will create duplicate sites. 

We are able to do a bulk update of the custom property values in e-automate for the sites, you'll need to send us a spreadsheet with the Address RecID from ConnectWise and the e-automate customer number.

 

Territory

Territory

The territory assigned to each company in ConnectWise can be used to filter what companies are synced between e-automate and ConnectWise. The territory is shown on the company record here:

territory.jpg

**Agreements and sales orders have a location field option, this is NOT where the sync is looking for the territory. It is ALWAYS looking at the Territory name on the Company record.

Territory names are found in ConnectWise in My Company, on the structure tab:

CW

If you enter a territory name in variable W, only companies assigned to that territory will be synced. The territory name in ConnectWise must match exactly to the variable, including capitalization and spacing. If there is a territory entered and that name doesn't match exactly to the company territory, that company will be skipped and will not sync. Please keep in mind that this territory variable applies to ALL ConnectWise syncs: ID964 Agreements, ID965 Service Tickets and ID966 Sales Orders. Each of these syncs will check to ensure that the company assigned to the agreement, service ticket or sales order has the correct territory to match Variable W. If the territory does not match, the sync will skip entering the information.

If you are inserting companies from e-automate to ConnectWise and need to assign a territory to these companies, you can do so by entering the territory name in Variable 3. 

 

Sales Reps

Sales Reps

If you would like to sync the sales rep from the e-automate customer record to the company in ConnectWise, you can do that by creating a custom field for the sales rep information in ConnectWise. The custom fields that you will need to create are:

ZCJ_SalesRep

ZCJ_SalesRepEmail

See here for further details on how to create these custom fields in ConnectWise.

These custom fields will be added to the Company Overview section in ConnectWise:

sales_rep_in_cw.jpg

The information updated to these fields is pulled from the sales rep assigned to the customer record in e-automate:

ea_sales_rep.jpg

 

I*  *  *

 

Best Practices & Tips

Best Practices & Tips

Jump to: Customer not inserted | Deleted Companies | Custom Properties | Custom Fields

Customers not inserted

Customers Not Inserted/Updated

If you have customers that don't insert from e-automate to ConnectWise, check the following things:

  • Does the customer record in e-automate have an address and state listed? If it does not, add that information and the customer should insert or update.
  • Check the state listed for the customer, the state name should either be the full name or the two-letter abbreviation. Additional spaces or characters in this field will cause the sync to not insert or update the customer.
  • Are there special characters in either the customer's name or address? Having characters such as a semi-colon, single or double quotes in the name or address will cause the sync to fail to insert.
  • Try reformatting the information on the record in e-automate. The API can be picky about the information it inserts into ConnectWise and sometimes will not insert a customer due to formatting issues.
  • In ConnectWise, check that the Revenue Year field is not populated with a zero on companies that should be updating, as this will cause the ConnectWise API to reject the update the sync is trying to make. Changing this value to one between 1900 and 9999 will allow the sync to update the company record.

CW

 

If the customer still has not been inserted, the best option is to manually create the customer in ConnectWise and then link that company back to the e-automate customer record by adding the Company RecID to the custom property. 

Deleted Companies

Deleted Companies

Any deleted companies go to the recycle bin inside the Mass Maintenance in case it was deleted by accident. To see these companies, go to System and then Mass Maintenance:

mass

Open the Company Recycle bin to see the list of companies that have been deleted.

recycle

At the top of the screen listing the companies that have been deleted is an option to permanently delete the company (1) or restore the company to the companies list (2).

cw

The sync will not be able to create new companies for any companies that are showing in the Company Recycle bin. You'll need to permanently delete the company before the sync can create a new one.

 

Custom Property Set Up

Custom Property Set Up

When creating new customers in e-automate, make sure that you are assigning the custom property configuration to the customers so that these custom properties are on the customer record so the sync can update them!

All three of these custom properties must be set in e-automate exactly as noted below for the mapping to work properly.  If you currently have custom properties in e-automate that mimic the information stored in these three properties, please let us know as we may be able to map to your existing custom properties. 

**If you currently have the e-automate customer number stored in a ConnectWise field, we can update the Parent custom properties for you**

There are two custom properties that need to be set up in e-automate for the customer mapping, one for the main company number (Parent Account) and one for the sites (Child Accounts). Both of these attributes need to be added to the Customer configuration.

Company Number

Attribute name: ZCJ_CW_CompanyID

Description: ConnectWise Sync Company ID

Data type: Numeric

customer_attribute_1.jpg

The value to be entered in this field is the Company_RecID number from ConnectWise:

customer_number_in_cw.jpg

**If you do not see the Company_RecID column in your company list view in ConnectWise, you can add this field by clicking on the gear icon to customize the list view, then find Company_RecID in the hidden columns section and use the arrows in the middle to move the column over to the visible columns list.

To update existing ConnectWise companies, you'll need to enter the ConnectWise ID number, if the ID provided is invalid, the sync will not be able to update the record. 

Site Number

Attribute name: ZCJ_CW_SiteAddressRecID

Description: ConnectWise Sync Site's Address RecID

Data type: Numeric

customer_attribute_2.jpg

The value to be entered is the Address RecID from the Site:

site_number_in_CW.jpg

To update existing ConnectWise sites, you'll need to enter the ConnectWise ID number, if the ID provided is invalid, the sync will not be able to update the record. **If you have the sync set to insert locations you must map existing locations in e-automate to the existing sites in ConnectWise prior to the running of the sync, otherwise the sync will create duplicate sites in ConnectWise.

 

There is one custom property that can be used to override the filters used to determine customers to sync and insert/update the customer in ConnectWise regardless of the filters set. **This custom property is ONLY used when there is a filter in place to limit the customers by customer type, contract type or branch.

Custom Property to Sync to ConnectWise

Attribute name: ZCJ_SyncToCW

Description: Sync Customer to CW

Data type: Yes/No

custom_prop_to_sync_customer.jpg

If ZCJ_SyncToCW = "yes", that Customer will sync, even if it doesn't pass the other filters.
If ZCJ_SyncToCW = "no", that Customer will not sync, even if it does pass the other filters.

CW Custom Field

Custom Fields in ConnectWise

You can create custom fields in ConnectWise to store the on-hold code and the sales rep information.

If you want to store the on hold code from e-automate on the ConnectWise company record, you'll need to create a custom field on the company overview.

To create the custom field in ConnectWise, go to Setup Tables > Custom Fields > Company Overview

cw_custom_fields_7.jpg

Click on the plus sign next to Custom Fields to create a new field. The field caption is ZCJ_OnHoldCode:

custom_field_on_hold_code.jpg

This field will hold the On Hold code from e-automate, it is an informational field only.

If you want to store the sales rep information from eAutomate on the ConnectWise company record, you'll need to create a custom field on the company overview.

To create the custom field in ConnectWise, go to Setup Tables > Custom Fields > Company Overview

cw_custom_fields_7.jpg

There are two fields to create:

ZCJ_SalesRepName

zcj_salesrepname.jpg

ZCJ_SalesRepEmail

zcj_salesrepemail.jpg

 

*  *  *

Related Alerts

Related Alerts

ID964 - ConnectWise Agreement Sync

ID965 - ConnectWise Service Call Sync

ID966 - ConnectWise Sales Order Sync

 

*  *  * 

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.
Powered by Zendesk