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 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
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.
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:
The custom field will be populated in ConnectWise:
Sales Rep
The sales rep is here in e-automate:
The information will populate in the custom fields in ConnectWise:
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:
* * *
Setup
Jump to: EA Settings | CW Settings | Subscribe to Alerts
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
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
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
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.
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.
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.
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
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:
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:
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.
**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 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?
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?
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?
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 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:
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.
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.
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:
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:
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:
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
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:
**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:
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
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:
The information updated to these fields is pulled from the sales rep assigned to the customer record in e-automate:
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.
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:
Open the Company Recycle bin to see the list of companies that have been deleted.
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).
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
The value to be entered in this field is the Company_RecID number from ConnectWise:
**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
The value to be entered is the Address RecID from the Site:
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
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
Click on the plus sign next to Custom Fields to create a new field. The field caption is ZCJ_OnHoldCode:
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
There are two fields to create:
ZCJ_SalesRepName
ZCJ_SalesRepEmail
* * *
Related Alerts
Related Alerts
ID964 - ConnectWise Agreement Sync
ID965 - ConnectWise Service Call Sync
ID966 - ConnectWise Sales Order Sync
* * *
0 Comments