Whenever a donor gives, your team needs the latest information on them- whether this is the first time the donor has given or the 100th time! When you call a donor's phone number or send a thank you letter to their home address, you want to make sure that information is correct. This is why it's incredibly important that your contact information (and any updates!) seamlessly syncs between both RaiseDonors and Virtuous CRM. The Contact Sync allows for a change to be made to a contact record in either RaiseDonors or Virtuous CRM and have those changes synchronized to the other platform!
Let's walk through what information syncs, how that information is captured in both RaiseDonors and Virtuous, and how to configure the sync.
How Does It Work?
RaiseDonors is already bundling donation and donor information and sending that to Virtuous CRM (if you have the integration enabled). And RaiseDonors is already sending any updates an Admin or a Donor makes to his/her contact information over to Virtuous CRM (via the RaiseDonors admin tool or via the RaiseDonors Donor Portal). This easily accounts for the majority of information staying in sync.
However this feature ensures updates from either system (Virtuous CRM or RaiseDonors) remain in sync.
Every time RaiseDonors sends information to Virtuous CRM (either a gift via the gift import tool - which includes contact information OR a contact update), a small yet critical data property is auto set. This data property is the "Contact Reference Source". You can see this field on every contact in Virtuous CRM, the Reference Source is located on the bottom left hand side when viewing a contact.
This is critical because only Contacts/Individuals having a ReferenceSource = "RaiseDonors" will qualify to be sync'd to RaiseDonors. Imagine for a moment if you had 1,000,000 contacts in Virtuous CRM. Only 200,000 are digital donors. You wouldn't want all of your contact records sync'ing with RaiseDonors. You only want those records which have
1) Gave online through RaiseDonors previously
2) Have expressed a digital giving channel propensity to your organization
Contact sync from Raise Donors into Virtuous does flow through the import tool within Virtuous and will include a couple of key items:
-The reference source 'RaiseDonors'
-The reference ID which is the donor ID in Raise Donors.
For contact sync from Virtuous to Raise Donors, the contact must have the reference source 'RaiseDonors' for it to sync over to Raise Donors. This is important to know as RaiseDonors uses the reference ID to inform the system on which donors’ information to update.
Please note: The reference source is visible on the contact record in Virtuous and provides a link to the donor profile in RaiseDonors. Additionally, Donor ID and Virtuous contact ID are visible in RD from the donors overview.
In summary, RaiseDonors is already sending gifts (with contact information) and individual contact updates to Virtuous CRM - with a Reference Source = "RaiseDonors".
Only contacts/individuals in Virtuous CRM with a ReferenceSource = "RaiseDonors" will qualify to sync back to RaiseDonors.
How Do I Configure the Contact Sync?
The configuration is setup in RaiseDonors Integrations under System Settings. Select the Virtuous Sync icon.
If this is your first time to setup a "sync" between Virtuous and RaiseDonors, you may be asked to authenticate with a username + password.
We recommend creating a new user account in Virtuous that is dedicated for the sync, as opposed to using the credentials of an existing user. This way, the sync will not be interrupted if a user changes their password. You can follow the steps in this article to add a Virtuous user. Click "Authorize" to save the credentials and continue with setup. Ensure the user does not have two factor authentication enabled.
NOTE: If you have WorkOS SSO configured in Virtuous, you may need to create a new user account in Virtuous with a domain other than the domain configured for WorkOS in order to ensure the user account is not set up to use SSO
After you have authenticated, you'll see a new screen with a few options.
The first checkbox will sync projects to Virtuous. More information on that can be found here. The second checkbox "Sync RaiseDonors Contacts to Virtuous Donors" will need to be selected to begin the Contact Sync.
Once the "Sync RaiseDonors Contacts to Virtuous Donors" is checked and the green "Update Settings" button is clicked, any edits from this point forward will be sync'd between the systems. There is no backwards or sync-all feature to get started.
What Gets Synced?
The three main data points that sync bi-directionally in BOTH systems include:
- Name changes: Any changes to the first and last name of donors (individuals in Virtuous) will be synced across platforms. If the donor is an Organization or Foundation, the contact name will sync.
- Address changes: Any updates to primary address (including street, city, state, postal code) will be synced across platforms. This means NCOA updates can update thousands of addresses at once across platforms. If the individual has multiple, the primary will sync.
- Phone number changes: Any updates to primary phone number will be synced across platforms. If the individual has multiple, the primary will sync.
In addition to the data that syncs both ways, the Contact Sync also sends some information one way:
From RaiseDonors: If a RaiseDonors donor does not exist in Virtuous, it WILL be created in Virtuous via import bundle (gift or contact). The Reference Source of "RaiseDonors" will be sent to Virtuous along with the RaiseDonors donor ID and live on the contact record and can be seen on bottom left side of the contact record.
Email address changes are also sent from RaiseDonors to Virtuous. Note, changes to email addresses in Virtuous are NOT sent back to RaiseDonors. This is for security purposes.
From Virtuous: Any edit to a contact/individual is sent to RD so long as it has a Contact Reference Source = "RaiseDonors". This includes, Name (Personal or Business), Primary Email, Primary Phone, Primary Address, and Unique IDs.
Note, email changes received in RaiseDonors from Virtuous are ignored. This is for security purposes.
When does data get Synced?
From RaiseDonors: All donors in RaiseDonors qualify to be sync'd to Virtuous CRM. Only edits to donor information by an admin (through the admin portal) or by an admin/donor (through the donor portal) will be sent to Virtuous.
This means, edits to donor information via RaiseDonors API do not currently send data to Virtuous CRM.
Data coming into RaiseDonors from Virtuous should 99% of the time, have our unique ID (because we send all data to Virtuous CRM first). But in the event the incoming data doesn't include our unique IDs (ex: creating a new contact in Virtuous CRM via the Virtuous API), the following logic is used to match or add to existing donors.
- Match by unique/primary keys
- Matching by email address (which is a unique value in RaiseDonors)
- If no matches, create a new donor record
From Virtuous: All Contacts/Individuals having a ReferenceSource = "RaiseDonors" qualify to be sync'd with RaiseDonors.
Any system or admin editing a Contact/Individual will sync to RaiseDonors. This includes
- Edits to a Contact/individual by an Admin
- By a donor in their Donor portal
- via the Virtuous API
- via NOCAA updates
- Query Updates
- Import tool updates
How Can I See These Changes?
In RaiseDonors, you'll see the log of any of these changes from Virtuous immediately. The Donor Information will be updated in real time, and the activity will be logged under recent activity. Also from the dashboard recent activity.
In Virtuous, Once a day, these updates will be batched and sent to the Gift and Contact Import Tool. They must be imported, just like a gift import. Only after you've imported, will the changes show on the contact record audit log with the name of the user who imported the updates.
Troubleshooting
While the integration lives in RaiseDonors, you're able to see log of all events in Virtuous under Settings > Connectivity > Webhooks. This will show you the configuration of the sync, though this does not need to be changed.
This page will also show you the line by line list of every single event, including delivered and failed event. Select the Failures tab to see any failed events and to retry.