Skip to content
  • There are no suggestions because the search field is empty.

Salesforce Integration Documentation

Golden can save 90% of administrative time by keeping volunteer records up to date in Salesforce.

Although Salesforce is a powerful CRM, its default volunteer management app is very basic. Golden's integration permits Salesforce users to focus on recruiting and retaining volunteers, rather than recording the minutiae of data themselves.

When used with Salesforce, Golden automatically inputs contact information, updates registration and attendance, and provides volunteer feedback, all without human intervention. See this guide for instructions on downloading the Golden app on the Salesforce AppExchange.

Skip ahead: setting up the integration.

Table of Contents

  • What does the integration do
  • Setting up the integration
  • Advanced set-up and configuration
  • FAQs
  • Data points passed from Golden to Salesforce

Here's a video with background and guidance:

What does the Golden → Salesforce integration do?

Golden's integration with Salesforce is primarily "one-way" (Golden sends info to Salesforce), but you can push certain data points from Salesforce to Golden (this is primarily used either during initial implementation or to push specific Participants from Salesforce into specific Golden Groups).

Golden--->>>Salesforce data push:

Automatically sends volunteer data from Golden to Salesforce every time a volunteer registers in Golden; we either:

  • Connect a Golden volunteer to an existing Salesforce contact record, or
  • Create a new Salesforce contact record

Note: if a volunteer updates their profile in Golden separate from registering for an Opportunity, Golden does not push that updated info to Salesforce

Salesforce--->>>Golden data push:

You can select contacts from Salesforce to be pushed into specific Golden Groups. Skip ahead to advanced setup.

Configurable settings include:

  • De-duplication settings
  • Custom map every data point generated by Golden to the destination of your choice in Salesforce

How Golden works with Salesforce

Once the integration is completed, Golden will begin passing data to Salesforce automatically.

The "trigger" for the data passing is a volunteer registering for an Opportunity (and then any subsequent cancellations/completions/etc. for that registration).

Golden will pass:

  • The volunteer's contact and personal information
  • The Opportunity and Timeslot (with Date/Time) that the volunteer registered for
  • Attendance status and hours completed (after the event has passed)

If the Golden volunteer matches an existing Salesforce contact record, Golden will connect the two records. If the Golden volunteer does NOT match an existing Salesforce contact record, Golden will create a new contact record in Salesforce.

Note: this new record type will be marked as a Golden Volunteer

Golden uses email as the default for deduplication, but you can adjust that in the settings section of Golden's Salesforce App.

Setting up the Integration

Download the Golden app from the Salesforce AppExchange (make sure you have the most up to date version!).

Go into your Golden account's Settings→Plans tab and make sure that you are on a "Professional" Plan.

Does your organization have "Chapters" in Golden? Contact support@goldenvolunteer.com to get these set up correctly with your Salesforce account.

Once you are on a Professional plan, go to the Settings→Integrations tab to complete the integration.

Upon signing in to Salesforce, you'll be prompted by a set up window to customize De-Duplication Settings, Data Point Mapping, and exporting Salesforce data to Golden. Here's a video with more info.

An important note for custom data mapping: do NOT edit existing mapping objects. Instead, to custom map objects from Golden to Salesforce, create a new mapping object. Any new mapping object that you create and mark as Active will automatically override the Default Mapping Objects. Do not mark as default ("is default" toggle should be off)!

  • Only one of the custom mappings you create, for a given piece of data, can be marked Active
  • Users can only have one active custom mapped field, in addition to the default. You cannot have more than one active, mapped field for a single data point

Click here for more info on setting up integration

Help! My data isn't sending to Salesforce!

Check user permission sets that were used to establish the integration. If the user does not have the right permission set, then re-establish the integration, on Golden, with the right user. The correct permission type is: 'Golden Integration User'

Have you updated custom metadata lately? If there is a mismatch with the custom field types, and the mapping, then this could be the cause of the issue. Try checking the Type.

Neither of the previous steps solve it? Just reach out to support@goldenvolunteer.com and we will get to the bottom of it for you!

Advanced Setup and Configuration

Export to Golden - Manual and Automatic

The Golden+Salesforce integration allows you to push contact records from Salesforce to Golden. You can either do this manually or set up automations.

Getting Started:

  1. Create the relevant Groups in Golden first
  2. Make sure that you've populated the "Golden API Credentials" fields in Salesforce
  3. Go to your Golden Dashboard's Settings --> Integrations menu, and click on the "gear" icon to launch the settings modal for your Salesforce integration
  4. Take the URL, API Key and API Secret and go to the Settings section of your Salesforce's Golden Application and paste them in the "Golden API Credentials" section

Manual Push:

Navigate to the "Export to Golden" tab in your Salesforce's Golden App. Follow the instructions to manually push existing contacts from Salesforce to Golden.

Automated Push:

This allows you to set up automations to push certain Salesforce contact records to Golden (and add them to Golden Groups!) based on customizable criteria. This automation allows a call from Apex code to initiate an export to Golden.

Code:

The ExportToGoldenBatch class in the goldenapp namespace exposes a runSyncJob(List<Contact>, String) method. From your trigger or action code you can call this function to launch an export. The first argument is the list of contacts you want to export to Golden. The second argument is the name of the group you want to add the contact to within Golden. The example below shows an Apex action which could be used in a flow to export contacts as they are created or updated that have the "Has Commercial License" checkbox set. The runSyncJob function schedules an asynchronous batch job which does the export.

global class ExportCommercialToGolden {
@InvocableMethod(label='Export Commercial License Holders To Golden' description='Exports contacts with commercial license to Golden' category='Contact')
public static List<Contact> exportCommercialToGolden(List<Contact> contacts) {
List<Contact> exported = new List<Contact>();
if ((contacts == null) || (contacts.size() == 0)) {
System.debug('No contacts');
return exported;
} else {
System.debug('There are ' + contacts.size() + ' contacts.');
}
for (Contact contact: contacts) {
if ((contact != null) && (contact.Has_Commercial_License__c == true)) {
exported.add(contact);
}
}
if (exported.size() > 0) {
goldenapp.ExportToGoldenBatch.runSyncJob(exported, 'Commercial');
}
return exported;
}
}

Contact support@goldenvolunteer.com for assistance if needed.

FAQs

Can I track Volunteer Hours in Salesforce?

Yes. Volunteer Hours can be viewed by individual volunteer under "Contacts" or by overall total hours under "Status."

Do the groups or contacts that I create in Salesforce get sent to Golden?

Only using the "Export to Golden" feature. However, we only recommend doing this during implementation, not after.

Do the Groups I've created in Golden get sent to Salesforce?

Unfortunately not yet, but we hope to introduce this feature soon!

What objects and records are updated when someone registers to volunteer via Golden?

When a volunteer signs up for an opportunity through Golden, their signup and all the information associated with it (attendance, time spent, tax value of volunteer hours, pictures taken, reflection written, etc.) will be forwarded into their contact on Salesforce.

Can I map one input from Golden to two outputs in Salesforce?

Yes! This is an option that we support.

Can I override Golden's default mapping by editing EXISTING mapping objects?

No - do NOT edit existing mapping objects. Instead, to custom map objects from Golden to Salesforce, create a new mapping object. Any new mapping object that you create will automatically override the Default Mapping Objects. But make sure not to check the is_default box!

How many API calls does the Golden app make to Salesforce?

Each time a volunteer registers for an Opportunity (or updates the registration in some form - cancels, completes etc.), there are 2 - 4 API calls (Contact, Opportunity, Timeslot and Registration), all of which happen in the same job.

When does Golden send data to Salesforce?

When a volunteer registers for an Opportunity OR when the status of that registration gets changed (i.e. a "Registered" volunteer "Cancels", "Missed" or "Completed" the Opportunity).

What if a volunteer updates their profile in Golden? Does that information get passed to Salesforce?

No, but the next time that a volunteer registers for an Opportunity, their profile updates will get passed to Salesforce.

Data Points that Golden Passes to Salesforce

Tables can't be imported directly. Please insert an image of your table which can be found here.

These are the default data mapping configurations. You can customize by using custom metadata.