This article includes everything in the T2T Sync Overview article plus actual implementation/setup instructions. GrowthZone staff should set up Chapters, Exchange, Synchronization module, and after those, complete the Sync Connection configuration.
Data Exchange
The T2T Sync is a ‘many to many’ sync, in which multiple GrowthZone databases can push data through a one-way exchange to multiple other GrowthZone databases.
- A contact will only sync from Source to Target if that contact has an active membership and that membership type is configured in the Sync Connection.
- A contact that exists in more than one Source tenant will have a unique contact record in the Target tenant for each Membership/Source.
- There are certain editing restrictions in place for memberships and custom fields that are involved in Sync Connections. There are also restrictions on using “Automatically Assign” for Membership and Account Numbers for Target tenants. (The application of prefixes to notate source database origins is encouraged.)
Synchronization Module
A tenant using the T2T Sync, either as a Source or a Target, needs to have the Synchronization module enabled in T1. There is a cost associated with having access to this module, which is typically handled by a member of the Sales or Engagement teams.
Steps to turn on Synchronization module:
- Go to T1
- Select Admin in the left side menu
- Find customer’s tenant and click on the tenant’s ID
- Find Synchronization module and mark the checkbox (image 1)
Following these steps, the Synchronization menu will be visible on the tenant’s Setup page (image 2).
NOTE: Source tenants don’t have the same options in the Synchronization menu as Target tenants.
!!!IMPORTANT!!! If the Synchronization module is removed from a tenant and then re-enabled, the Sync Connection(s) are not automatically re-enabled. Re-enabling connections will need to be done as a separate step.
Chapters
Although the Chapters module is not required for data to simply sync from Source to Target, implementing Chapters is critical for the system to identify in the Target from which Local (Source) tenant a synchronized contact with a membership came.
Steps to associate Source tenants with Target tenant:
- Go to Target tenant
- Select Chapter in the left side menu (NOTE that the Chapter module may be renamed through customization)
- Click Add
- Search for the tenant to be associated with the Target in the Local Association Name field
- Click the Advanced Options
- Enter and select the Source’s Tenant ID
- Press Done to save
Sync Exchange
The Exchange is configured in T1 and identifies the Source and Target tenants that will participate in Sync connection. As a result, when the Sync connection configuration is created from the Target account, the list of identified Sources to choose from will be available.
- A tenant cannot be both a Source and a Target in the same or in different Exchanges. This means that a local association can be the Source of data for both a State [Target] and a National [Target] but cannot set up a connection where data flows into one tenant and from there to another tenant.
- When an Exchange is deleted in T1, any related Sync Connections are also deleted.
- Go to T1
- Go to Setup in the left side menu
- Choose Synchronization >> Exchanges
- Click Add
- Enter Exchange name
- Enter Target tenant(s) and choose from the options provided
- Enter Source tenant(s) and choose from the options provided
- Add tenants by pressing +
- Delete tenants by pressing -
- Click Done to save
Sync Connection
The Sync Connection is set up under Target tenant’s account and stipulates which data should be synced from Source to Target tenant. There should be a sync connection configured in the Target tenant for each Source tenant that is syncing data. Up to 10 Membership types can be mapped in a single sync connection.
Before creating a Sync Connection:
- Both the Target and Source tenant need to have their membership types created and a plan for how they will map them.
- NOTE: the system will prevent duplicate membership mappings. This includes:
- One Source membership/level mapped to more than one Target membership/level
- An exact duplication of a previous row - the membership/level from Source to membership/level in Target has already been mapped
- NOTE: the system will prevent duplicate membership mappings. This includes:
- Source tenant should have their custom fields created. The Target tenant should have visibility on the custom field names and data types that were created by the Source tenant so they can make good decisions about what they want included in the sync.
- Custom fields sync for both individual and business contacts
- Data types that sync are:
- True/False
- Dropdown
- Text
- Integer
Steps to create a Sync Connection:
- In Target tenant, go to Setup in the left side menu
- Choose Synchronization >> Sync Connections
- Click Add
- In the Sync From dropdown, select the tenant that should act as the Source
- Map up to 10 membership types and levels between the Source and Target tenants (image 1)
- Owned by and Inheritance are read-only, and are presented to help with membership mapping decisions
- Fields to be synced for Individual and Business contacts should be enabled
- If custom fields are to be synced, enable the checkbox for Individual and/or Business contacts
- In the multi-select dropdown, enable specific custom fields if they are intended to be included in the sync (image 2)
- Sync Connections are managed by GZ staff, not association staff
- Connection can be reviewed, edited, disabled, or deleted in the Target tenant (image 3)
- Connections can be disabled or deleted in the Source tenant
Fields Available to Sync
Not all fields will be synced. See this article for a table of fields that are included in a tenant to tenant sync.
Sync Information
- If a Sync Connection is edited, and membership types and/or contact fields are updated, the sync process should run according to the updated settings:
- Sync new Contacts assigned to membership according to new settings
- Sync existing Contacts assigned to membership according to new settings
- If a Sync Connection is disabled, the sync process should be stopped temporarily between Source and Target tenants
- If a disabled Sync Connection is re-enabled, the sync process should begin running again
- If synced Contacts were updated while the Sync Connection was disabled, those updates should be synced to the Target tenant when the connection is re-enabled.
- If a Sync Connection is deleted, the sync process will be stopped between Source and Target tenants
Custom Fields
Both Individual and Business/Org custom fields can be synced. The allowed data types are:
- Dropdown
- Yes/No
- Text
- Integer
In a Sync Connection, the Target selects by name the custom field(s) that will be included in the sync. If multiple sources have the same custom field name with the same data type, they will populate the same custom field in the Target. If the custom fields in different sources have the same name but different data types, two custom fields will be created in the Target – one field for each data type.
Changes to synced custom fields are prevented by GZ’s IsSystem flag once data has been sent. The IsSystem flag locks the custom field in the Target so it can’t be edited (field name, data type).
If a custom field is deleted by a Source tenant, it will be removed from the Sync Connection, but it will not be removed from the Target tenant or from any contacts who have data in that field.
Group/Section and Characters Allowed fields are not synced to the Target tenant. Settings in Properties are also not synced from Source to Target. These are:
- Public
- Member Editable
- Required
- Archived
Memberships
Membership information will sync from Source to Target if the Membership Type has been configured in the Sync Connection. Specific information about which membership fields are included in sync transfers and which types of changes initiate a sync transfer can be found in the Fields Available to Sync and Fields that Trigger Syncs articles.
- In a Target tenant, you will see the most recent Membership Activation for a synced Membership in the Membership Details modal.
- Memberships that are part of active or disabled Sync Connections cannot be deleted or edited. Levels cannot be added or removed.
Triggers
Sync actions are triggered by additions and updates to an active contact record or a membership that has been configured in the Sync Connection. Those changes may occur in the GrowthZone UI, via the Info Hub, though the Contact Import (Enhanced Import Module), membership renewals, and auto-approved and staff-approved Membership Applications.
Fields that Trigger Syncs
This article outlines the changes that will trigger syncs from a Source tenant to a Target tenant or tenants. Changes will trigger a sync when they occur on active contact records and to memberships that are configured in an active Sync Connection.
Sync Log and Troubleshooting
Sync Log
The Sync Log (Setup > Synchronization > Sync Log) is available for both Source and Target tenants and records activity – both successes and errors -- that occurs in the Sync Connection. It’s useful for troubleshooting reviewing any sync failures. Clicking the info icon provides additional information on the specific sync event.
Correct Membership Types Not Showing When Creating a Sync Connection
-
example of the issue:
- Incorrect membership types are displaying on the Sync Connection screen
-
The membership types in the source tenant:
-
-
Steps to fix the issue:
-
1. Click on the source's Tenant ID in T1 and select "Api Access"
2. Go to the source's tenant-> Setup-> API Key Permissions and delete and read the below API key
-
- Incorrect membership types are displaying on the Sync Connection screen