Each dashboard (Test and Live) has its own copy of this screen. Nothing set here carries between them.
Connection tab
Save API credentials, authorize with Salesforce, and verify connectivity. This is the first tab you complete.
WeGive detects whether the authorized org is a Sandbox or Production. A Test dashboard authorizes only against a Sandbox and a Live dashboard only against Production. See External Client App and Connection Setup for the Salesforce-side prerequisites.
Sync Configuration tab
Everything that controls what syncs and how. The tab has one Save button at the top; changes in any section are saved together.Core Settings
Entity Pull & Push
One Pull and one Push toggle per object. Pull imports from Salesforce; Push exports to Salesforce. Objects with only a Pull toggle (companies, merge contacts, merge accounts) are read from Salesforce but never written.WeGive4Salesforce Pushes
Push toggles for the objects that exist only because the WeGive4SF package is installed. All are push-only.
The four event toggles depend on each other; enable them top to bottom. See Events, Tickets & Registrations.
Deleted Record Sync
When a toggle here is on, records deleted in Salesforce are also deleted in WeGive on the next pull. One toggle each for donors (Contacts), households, companies, campaigns, funds (GAUs), fund allocations, transactions (Opportunities), and recurring donations.Contact Sync Options
Sync contacts with emails only. Imports only Salesforce Contacts that have at least one email address. On by default. Turning it off imports every Contact in the org on the next pull.Sync Schedule
Pull frequency (minutes). How often the scheduled pull runs. The default is 15 minutes. Pushes are not scheduled; they run within about five minutes of a change in WeGive.Stage Names
Stage Names, Push. The Opportunity Stage WeGive writes for each gift status when pushing: Success stage name, Refunded stage name, Pending stage name, Failed stage name. These values are also recognized on pull. They must match your org’s Stage picklist exactly. Stage Names, Pull. Additional Stage values to recognize for each status when importing gifts: Success stages, Pending stages, Refunded stages, Failed stages. Add one value at a time. Stages not listed fall back to the push stage names, then to built-in Salesforce defaults. A Stage that matches nothing imports as failed, so if imported gifts show as failed in WeGive, look here first.Payment Method Labels
Card payment method name, Bank payment method name, Paypal payment method name. The values WeGive writes to the Payment Method field on Payments and Opportunities. Match them to your org’s existing picklist values.Payment Method Push
Used only when Push payment methods to Salesforce is on.Record Type Configuration
Opportunity Record Types
Service Revenue Record Types. Record types treated as non-tax-deductible revenue on import. Hidden Record Types. Record types that are never imported and never shown to donors. Add record type names one at a time. Use these to keep grants, in-kind gifts, pledges tracked as Opportunities, proposals, and similar non-gift Opportunities out of WeGive.Contact Role Soft Credits
Pull contact role soft credits. Imports soft credits fromOpportunityContactRole records in addition to Account and Partial Soft Credits. Off by default; most NPSP orgs do not need it.
Processing Options
Mapping Rules tab
Field-level mappings between WeGive and Salesforce, grouped by category and then by object. Each object shows its rule count and expands to the rule list. Every rule shows the Salesforce field, the WeGive field, its direction (Bi-directional, Import only, or Export only), and whether it is a saved rule or a default.
Each object has its own Add Rule and Save buttons. A new rule needs the Salesforce field API name, the WeGive field API name, and a direction. The valid WeGive field names for each object are listed on that object’s page under Data Mapping.
Before mapping a custom Salesforce field, confirm the integration user has read and edit field-level access to it. A rule that targets a field the user cannot see fails the whole record on push. If you add a field in Salesforce and it does not appear as an option, run Clear Describe Cache on the Actions tab.
Actions tab
On-demand maintenance.Sync dialog
Both the Connection tab’s Sync button and the Actions tab’s Sync with Salesforce button open the same dialog rather than running a sync immediately. It asks two things before queuing the job:
Confirming queues the job in the background; you can navigate away while it runs.
Known differences between the screen and behavior
The data mapping pages describe what the integration does; this page describes what the screen shows. Where the two differ, the mapping pages are the reference. Current differences:- Rules added to Campaign Events, Campaign Event Tickets, or Campaign Event Registrations on the Mapping Rules tab are saved but not applied on push, and the Bi-directional and Import only directions have no effect on any of the four push-only event objects. See Events, Tickets & Registrations. This is a known issue.
- Rules added to Communication Lists, Communication List Donors, or Campaign Fundraisers are likewise saved but not applied; those objects push a fixed field set. See Communication Lists and Fundraiser. This is a known issue.
- The Push households toggle under Entity Pull & Push has no effect. Households are never pushed to Salesforce; see Account. This is a known issue.
- The default Pledge rules seeded on every new integration reference fields that do not exist on
wegive__Pledge__c, so pledge pushes fail until those rules are deleted. See Pledge. This is a known issue. - The Push fund allocations toggle does gate the allocation push.
Salesforce.phpchecks$this->integration->push_fund_allocations(alongside the organization’senable_fund_allocationssetting) before callingsyncAllocationsToSF()in all three push paths: the scheduled-donation push (~line 4382), transaction create (~line 4930), and transaction update (~line 4838). The dashboard’s save validation (UpdateSalesforceRequest::withValidator()) also rejects turning this toggle on unless Push transactions or Push recurring donations is also on, since allocations only ride along with one of those two parent pushes — confirming the toggle is a real, enforced gate, not a no-op. - Two-way sync, CRM sync, and the five Track switches are stored as integration settings (
crm_sync,two_way_sync,track_donations,track_accounts,track_donors,track_recurring_donations,track_campaigns,track_designationsonsalesforce_integrations) but are not read anywhere inapp/Integrations/Salesforce.php,app/Models/SalesforceIntegration.php, orapp/Processors/SalesforceOauth.php. Those same column names are read and enforced on a different integration —NeonIntegration.phpgates several methods behind$this->track_donors,$this->enabled, and$this->crm_sync— so the fields are functional in that CRM’s code path but are confirmed dead/unused for Salesforce specifically. The per-object Pull and Push toggles are what actually gate each Salesforce object.
Related screens
Three other screens in the dashboard matter during implementation and support:- Settings > Integrations > Integration Logs. Every queued job, with successes, warnings, and errors. Entry types are
createandupdate(one record pushed),pull(a scheduled or manual incremental pull),pull-all(a full pull), andpush-missing(a sweep for records that never reached Salesforce). Only one push per record is queued at a time; further edits while it is pending do not add entries. This is the sync log referenced throughout these docs. - Settings > Integrations > Integration Locks. Records that failed repeatedly and are locked from retry. Unlock a record here after fixing the underlying cause.
- Settings > Communications > Triggers. Triggered messages (receipts, welcome emails, recurring notices). Pause these before the first data pull; see the Implementation Guide.