Welcome to the Resource Hub for Give Lively members!

This is the new one-stop shop for information and instruction about how Give Lively members use our powerful, practical and free fundraising technology. For more background support about Give Lively, go to our introductory FAQ pages.

In this Article

See our Salesforce integration logic and fields

An overview of how our Salesforce integration was built, specifically designed for the Nonprofit Success Pack.

Event Ticketing
Text-to-Donate
Live Display
Campaign Pages
Donation Widget
Peer-to-Peer Fundraising
Team Fundraising
Leaderboard

Examples

No items found.

Before You Get Started

  • IMPORTANT: When the integration is connected, all previous donations and event purchases made on your Give Lively fundraising pages will automatically sync to Salesforce. New donations and event purchases will sync within an hour of being marked as “paid.” New Campaign, Contact and Opportunity records will be created during this same hour window.
  • Ensure that the authenticating user is a System Administrator User with Marketing Rights enabled on the Salesforce account.
  • The email address of the System Administrator User will be the authenticating user and ideally should not have a password that expires. Make note that the user email should be evergreen, i.e. integrations@nonprofit.org. Here is an excellent article by Salesforce about creating a Dedicated Salesforce Integration User.
  • The Give Lively integration is not currently compatible with NPSP’s native “State and Country Picklists” feature. If you have State and Country Picklist enabled, you must disable this feature prior to establishing the integration.
  • Our integration attempts to match a Give Lively donor to an existing Contact in your Salesforce organization based on the email in the standard Email field. (This will be the value in the email field marked as preferred in NPSP.) If an exact match is not found, a new Contact is created. Currently this is the only option for Contact matching.
  • At this time, a peer-to-peer fundraiser’s details do not sync to Salesforce. Peer-to-peer donations are synced with the parent campaign as their primary campaign source, and P2P donations will not soft credit the fundraiser. These gifts are not specifically distinguished from other gifts in the current sync behavior.
  • At this time, “In honor of”/Small Token donations are not labeled as such and are not specifically distinguished from other gifts in the current sync behavior.
  • ACH/bank account donations will not sync or be recorded in the sync logs until the transaction has successfully been processed by the donor’s bank.

Video Overview

Text Walkthrough

Sync Donations

  1. Get a list of all donations generated in the GL platform for Nonprofit.
  2. Check to see whether sf_opportunity_id already exists on the GL platform for given donation. If so, skip. If not, do the following:
  3. Query SF API to get a list of all SF “Opportunity” object fields for given Nonprofit SF Instance.
  4. Check whether npsp__Acknowledgment_Date__c is one of the object keys. If so, assume the SF instance has NPSP installed.
  5. Parse out donor email address.
  6. Query Nonprofit SF Instance to check whether email is already in Nonprofit SF Instance.
    1. If so, get SF Contact ID.
    2. If not, create a new Contact with the following fields:
      1. Email
      2. FirstName
      3. LastName
      4. Phone (if donation was made via Text-to-Donate)
      5. LeadSource: "Give Lively"
      6. MailingPostalCode
      7. MailingCountry
      8. MailingAddress (if provided by donor)
  7. Assumes “Account” is automatically created, regardless of whether NPSP installed
  8. Create Opportunity record with the following fields:
    1. AccountId
    2. Account
    3. Name: <donor_name> - $<donation_amount> - <recurring_or_one_time> <product_type>
    4. CloseDate
    5. StageName:"Posted"
    6. Probability: 100
    7. LeadSource: "Give Lively"
    8. Type: <"Recurring" or "One Time">
      1. this data can be mapped to a picklist field of your choosing
    9. If NPSP is installed, also sync:
      1. npsp__Acknowledgment_Date__c
      2. npsp__Acknowledgment_Status__c: "Acknowledged"
    10. CampaignId: sf_campaign_id or null
      1. If Donation was made through a GL Campaign, and the GL Campaign was already synced to Salesforce, then we retrieve the SF Campaign Id of the synced Campaign and insert it here.
  9. If there is a sf_campaign_id and a sf_contact_id, then create CampaignMember with the following fields:
    1. ContactID
    2. CampaignID
  10. If NPSP is installed, check to see whether Payment object was automatically created by querying Nonprofit SF Instance (using "npe01__OppPayment__c") and npe01__opportunity__c = sf_opportunity_id
    1. Find the first payment, ignore any others
    2. Update the payment (npe01__OppPayment__c) with the following fields:
      1. Id: sf_payment_id
      2. npe01__Paid__c:1
      3. npe01__Payment_Date__c
      4. npsp__Payment_Acknowledged_Date__
      5. npsp__Payment_Acknowledgment_Status__c:'Acknowledged'
      6. npe01__Check_Reference_Number__c
  11. If NPSP is installed, skip creation of OpportunityContactRole. If not, create OpportunityContactRole with the following fields:
    1. ContactID
    2. OpportunityID
  12. Save SF record using REST API and save sf_opportunity_id in GL Platform record.


Sync Campaigns 

  1. Find all campaigns for given Nonprofit on the GL platform.
  2. Check if sf_campaign_id already exists on the GL platform for the campaign record. If so, skip. If not, do the following:
  3. Create Campaign object in SF with the following fields:
    1. Name: (truncated to 80 characters)
    2. IsActive:1
    3. Type: "Give Lively"
    4. Status: "In Progress"
    5. ExpectedRevenue:
      1. If Campaign has a Goal in the GL Platform, insert goal amount here.
    6. Description
      1. Inserts JSON representation of key value pairs we pass to Campaign.
      2. Includes page_url and text_code key value pairs, which are otherwise not represented in standard SF Campaign objects.
  4. Save SF record using REST API and save sf_campaign_id in GL Platform record.


Sync Events

Event ticket tiers currently do not flow into Salesforce.

  1. Find all events for given Nonprofit on the GL platform.
  2. Check if sf_campaign_id already exists on the GL platform for the event. If so, skip. If not, do the following:
  3. Create Campaign object in SF with the following fields:
    1. Name: <Event - event_name>
    2. IsActive:1
    3. ParentId: <sf_campaign_id for campaign this event rolls up to in the GL Platform>
    4. Type: "Give Lively"
    5. Status:"In Progress"
    6. Description
      1. Inserts JSON representation of key value pairs we pass to Campaign.
      2. Includes page_url key value pair, which is otherwise not represented in standard SF Campaign objects.
  4. Save SF record using REST API and save sf_campaign_id in GL Platform record.


Sync P2P Donations

At this time, fundraiser details do not sync to Salesforce. P2P donations will roll up to the parent campaign (primary campaign source field). At this time, P2P donations will not soft credit the fundraiser.

Within the Nonprofit Admin Portal

Integrations > Sync Logs, members will have the opportunity to:

  1. Control Data Mapping Settings for the Core Profile
    1. Allow members to select a default campaign for all general fund (Core Profile) donations.
  2. Control Data Mapping Settings for Donations
    1. Select a ClosedLost stage name.
    2. Select a ClosedWon stage name.
    3. Select a default campaign for all general fund (Core Profile) donations.
    4. Select a record type for Opportunity and Account records.
    5. Select the Salesforce Opportunity field to store the “One Time”/“Monthly Recurring” designation.

* At this time, our integration maps donations to a unique Salesforce campaign generated by our integration. We don't currently allow changing this mapping (for example, to another campaign in your SF instance), but we plan on this for a future release.


Downloads

No items found.