This guide will take you through the steps to setup the GoFundraise Salesforce Connector Managed Package Solution:
- Setup Process
- User Permissions Set
- Data / Fields Synced
- Event Campaign
- Salesforce Campaign Object
- Fundraising Page
- Salesforce Contact Object
- Salesforce Campaign Object
- Payment Item
- Salesforce Contact Object
- Salesforce Opportunity Object
- Salesforce Contact Role
- Event Campaign
- Update NPSP Settings
- Update Soft Credit Contact Roles
- Deduplication
- Error Handling
Setup Process
- Install the GoFundraise Salesforce Connector.
Installation URL: https://login.salesforce.com/packaging/installPackage.apexp?p0=04t2w000009MhEC
Version Number: 1.7 (Released)
Download latest Install Package - Proceed to the GoFundraise App Screen and Select “GoFundraise Settings”
- Click “Configure Sync”
- Your Salesforce instance now has the Managed Package setup.
- Please contact GoFundraise Customer Care for further setup instructions.
User Permissions Set
As part of the managed package installation 2 permission sets will be created: “GoFundraise User” and “GoFundraise API User”.
“GoFundraise User” was created to ensure the users have applicable permissions to view the objects, fields, layouts and views created by the GoFundraise managed package within Salesforce.
“GoFundraise API User” was created to ensure the user account who connects the GoFundraise sync into Salesforce has the appropriate permissions. This permission set should be applied to the user for whom the GoFundraise sync will utilize. This user will also need to have the “Marketing User” option selected on their account.
Marketing User Selection:
Permission Set Assignment on an individual user basis: https://help.salesforce.com/articleView?id=perm_sets_assigning.htm&type=5
Or through the manage assignments function within the permission set
Data / Fields Synced
Event Campaign
> Salesforce Campaign Object
FIELD NAME | FIELD DESCRIPTION |
RecordTypeId | Event |
Parent | Parent Event Deduplication Id |
Status | Planned = N / In Progress = A / Completed = C |
IsActive | Status A + Total > 0 |
Type | Campaign |
Name | [Start Year] Event Name |
StartDate | Event Start Date |
EndDate | Event End Date |
Description | Event Description |
GoFundraise__rid__c | GoFundraise Id |
GoFundraise__id__c | Deduplication Id |
Fundraising Page
> Salesforce Contact Object
FIELD NAME | FIELD DESCRIPTION |
User Email | |
FirstName | User FirstName |
LastName | User LastName |
Salutation | User Title |
MailingCity | User Suburb |
MailingState | User State |
MailingCountry | User Country |
MailingPostalCode | User Postcode |
MailingStreet | User AddressLine1 |
MobilePhone | User MobileNumber |
HomePhone | User ContactNumber |
LeadSource | GoFundraise |
Birthdate | User Date of Birth |
GoFundraise__gender__c | User Gender |
GoFundraise__id__c | Deduplication Id |
> Salesforce Campaign Object
FIELD NAME | FIELD DESCRIPTION |
RecordTypeId | Fundraising Page |
Parent | Event Deduplication Id / Team Deduplication Id |
Status | Planned = N / In Progress = A / Completed = C |
Type | Team / Individual |
Name | [Create Date] Page Title – User Name (Page Type) |
IsActive | Status A + Total > 0 |
StartDate | Create Date |
EndDate | Expiry Date |
ExpectedRevenue | RaiseTarget |
Description | Page Title |
GoFundraise__customformdata1__c | |
GoFundraise__customformdata2__c | |
GoFundraise__customformdata3__c | |
GoFundraise__customformdata4__c | |
GoFundraise__customformdata5__c | |
GoFundraise__url__c | Page URL |
GoFundraise__minimumexpectedrevenue__c | MinimumRaiseTarget |
GoFundraise__rid__c | GoFundraise Id |
GoFundraise__id__c | Deduplication Id |
GoFundraise__fundraiser__r | Contact Deduplication Id |
Payment Item
> Salesforce Contact Object
FIELD NAME | FIELD DESCRIPTION |
Billing EmailAddress | |
FirstName | Billing FirstName |
LastName | Billing LastName |
Salutation | Billing Title |
MailingCity | Billing Suburb |
MailingState | Billing State |
MailingCountry | Billing Country |
MailingPostalCode | Billing PostCode |
MailingStreet | Billing AddressLine1 |
MobilePhone | Billing MobileNumber |
HomePhone | Billing ContactNumber |
LeadSource | GoFundraise |
GoFundraise__gender__c | Billing Gender |
GoFundraise__id__c | Deduplication Id |
> Salesforce Opportunity Object
FIELD NAME
|
FIELD DESCRIPTION |
Campaign
|
Page / Event Deduplication Id |
Name
|
FirstName LastName ProductType TranasctionDate |
LeadSource
|
GoFundraise |
RecordTypeId
|
ProductType / Recurring Donation / Default |
Type
|
Product type |
StageName
|
Closed Won = ‘A’ / Failed = ‘F’ / Refunded = ‘R’ / Pending = ‘N’ |
CloseDate
|
TransactionDate |
Amount
|
Item Amount |
Description
|
Item Description |
GoFundraise__optin__c
|
ReceiveNewsletter |
GoFundraise__fundraiser__r
|
Fundraising Contact Deduplication Id |
GoFundraise__contact__r
|
Billing contact Deduplication Id |
GoFundraise__unitprice__c
|
Item UnitPrice |
GoFundraise__quantity__c
|
Item UnitQuantity |
GoFundraise__id__c
|
Deduplication Id |
GoFundraise__pid__c
|
GoFundraise Payment Id |
GoFundraise__piid__c
|
GoFundraise Payment Item Id |
> Salesforce Contact role
FIELD VALUE | VALUE DESCRIPTION |
Fundraiser | |
Donor | |
Solicitor | |
Registrant | |
Ticket Holder | |
Other |
Contact Related List
A New Contact Related List is available to add to the default contact layout OR a user groups default layout can be changed to the GoFundraise managed layout to take advantage of this related list field.
Update NPSP Settings
Update Soft Credit Contact Roles
By Default the NPSP has it’s inbuilt roles assigned to Soft Credits. If you wish to apply soft credits to Fundraisers then you will need to add the “Fundraiser” contact role to the list of Soft Credit Roles. This can be done through NPSP Settings -> Contact Roles Setting Section.
CTRL+ Click to add the Fundraiser as an additional Selection (if you only click then you will remove the existing roles from the list).
Once saved you can run the Rollup Batch for all previously synced data to now have these soft credits assigned. To do this go to NPSP Settings -> Bulk Data Processes -> Rollup Donations Batch.
Deduplication
Campaign and Opportunity Deduplication is performed using a unique deduplication Id generated by the GoFundraise Salesforce connector. There is no deduplication performed on existing campaigns or opportunities which have been manually imported. Manually imported data will need to be merged with the data synced by the GoFundraise Salesforce connector.
Contact deduplication is also performed using a unique deduplication Id generated by the GoFundraise Salesforce connector, however, if your Salesforce instance already employs deduplication protection (available in the NPSP), an error response of “DUPLICATES_DETECTED” or “FIELD_CUSTOM_VALIDATION_EXCEPTION “ will trigger the GoFundraise Salesforce connector to search for existing contacts with the same Email, FirstName and LastName and Upsert the data into those contacts. This data also includes the GoFundraise deduplication Id and as such won't need to trigger these additional API calls for further syncs.
Error Handling
Salesforce instance performance can be severely impacted by additional triggers within Salesforce that are generally added to opportunity upsert actions. Further, some packages such as the NPSP, contain known bugs / limitations which cause error scenarios when importing large amounts of data. The GoFundraise Salesforce Connector will retry syncing data if an error response to some of these error scenarios:
Opportunity Upsert
“CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY”
“UNABLE_TO_LOCK_ROW”
Contact Upsert
“DUPLICATES_DETECTED”
“FIELD_CUSTOM_VALIDATION_EXCEPTION”
“CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY”
“UNABLE_TO_LOCK_ROW”
Campaign Upsert
““CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY”
“UNABLE_TO_LOCK_ROW”