Object & Field Mapping Reference

Last updated: May 18, 2026

This article documents the default field mappings between WeGive and Salesforce NPSP. All mappings listed here are active by default when the integration is enabled. Custom mappings can be added or modified in Integrations → Salesforce → Mapping Rules.

For instructions on adding custom fields, see [Add New Fields to Salesforce Mapping Rules].


Contacts (Individual Donors)

WeGive syncs individual supporters to Salesforce Contacts. The integration matches on email — see [How New Supporters Sync to Salesforce NPSP] for full matching logic.

WeGive Field

Salesforce Field

Direction

Notes

first_name

FirstName

Both

Defaults to "FNU" if blank

last_name

LastName

Both

Defaults to "LNU" if blank

email_1

Email

Both

Primary email

mobile_phone

Phone

Both

mailing_address.address_1

MailingStreet

Both

Combined with address_2

mailing_address.city

MailingCity

Both

mailing_address.zip

MailingPostalCode

Both

billing_address.address_1

OtherStreet

Both

Combined with address_2

billing_address.city

OtherCity

Both

billing_address.zip

OtherPostalCode

Both

State and country fields are not mapped by default due to Salesforce picklist conflicts. If your org has State and Country Picklists enabled, configure these separately. See [Configuring Salesforce State and Country Picklist Mappings in WeGive].


Accounts (Households and Companies)

Salesforce Accounts map to two different objects in WeGive depending on their record type:

  • Household Accounts → WeGive Households

  • Organization Accounts → WeGive Company donors

WeGive Field

Salesforce Field

Direction

Notes

name

Name

Both

record_type

RecordTypeId

Export only (create only)

phone

Phone

Both

fax

Fax

Both

billing_address.address_1

BillingStreet

Both

billing_address.city

BillingCity

Both

billing_address.zip

BillingPostalCode

Both

The RecordTypeId field is marked create-only, meaning WeGive sets it when creating a new Account but does not overwrite it on subsequent updates.


Campaigns

WeGive Campaigns sync bidirectionally with Salesforce Campaigns.

WeGive Field

Salesforce Field

Direction

Notes

name

Name

Both

salesforce_parent_id

ParentId

Export only

Only sent from WeGive to Salesforce

start_date

StartDate

Both

end_date

EndDate

Both


Donations (Opportunities + Payments)

WeGive syncs donations at the Payment level, not the Opportunity level. Each donation creates both an Opportunity and a Payment record (npe01__OppPayment__c) in Salesforce. The integration will not work unless NPSP Payments are enabled.

Opportunity Fields

WeGive Field

Salesforce Field

Direction

Notes

amount

Amount

Both

Base donation amount — does not include covered fees

name

Name

Export

Auto-generated

close_date

CloseDate

Both

stage

StageName

Both

Mapped via stage settings

campaign.salesforce_id

CampaignId

Both

donor.salesforce_id

Primary_Contact__c

Both

npe01__Do_Not_Automatically_Create_Payment__c

Export

Always set to true — WeGive creates its own Payment

Payment Fields (npe01__OppPayment__c)

WeGive Field

Salesforce Field

Direction

Notes

amount

npe01__Payment_Amount__c

Both

Base donation amount

fee_covered_amount

npsp__Donor_Cover_Amount__c

Export

$0.00 if donor did not cover fees

calculated_fees

npsp__Total_Transaction_Fees__c

Export

Total processing fees, regardless of coverage

payment_method

npe01__Payment_Method__c

Export

Mapped via payment method name settings

gateway_payment_id

npsp__Gateway_Payment_ID__c

Export

batch_number

npsp__Batch_Number__c

Export

paid_date

npe01__Payment_Date__c

Both

status

npe01__Paid__c

Both

For a detailed explanation of how fees appear across objects, see [How Donation Fees Appear in Salesforce NPSP].


GAU Allocations (Fund Designations)

When a donation is designated to a fund (Designation), WeGive creates a GAU Allocation in Salesforce.

WeGive Field

Salesforce Field

Direction

Notes

fund.salesforce_id

npsp__General_Accounting_Unit__c

Both

amount

npsp__Amount__c

Both

opportunity.salesforce_id

npsp__Opportunity__c

Both

If multi-designation (fund allocations) is enabled in your org, a separate Allocation record is created for each designation row on a donation. WeGive is the source of truth — it replaces the entire Allocations array on each sync rather than merging changes.

Important: To prevent NPSP from deleting WeGive's allocation records, you must configure the required trigger handler exclusions before going live. See [Required Exclusions] and [NPSP GAU Allocations Deleted — ENTITY_IS_DELETED Error].


General Accounting Units (Designations)

WeGive Designations sync to Salesforce GAUs (npsp__General_Accounting_Unit__c).

WeGive Field

Salesforce Field

Direction

Notes

name

Name

Both

salesforce_id

Id

Both

WeGive stores this to link allocations


Recurring Plans (Recurring Donations)

WeGive Recurring Plans sync to Salesforce Recurring Donations (npe03__Recurring_Donation__c).

WeGive Field

Salesforce Field

Direction

Notes

amount

npe03__Amount__c

Both

frequency

npe03__Installment_Period__c

Both

See supported frequencies below

next_donation_date

npe03__Next_Payment_Date__c

Both

status

npe03__Status__c

Both

Only "Active" recurring donations are pulled from Salesforce

fund.salesforce_id

(via Allocation)

Export

campaign.salesforce_id

npe03__Recurring_Donation_Campaign__c

Both

donor.salesforce_id

npe03__Contact__c

Both

donor.salesforce_account_id

npe03__Organization__c

Both

For company-linked recurring donations

Supported frequencies: Monthly, Biweekly, Quarterly, Yearly, Daily, First and 15th.

Not supported: Weekly, Semi-annually. Recurring donations with these frequencies will not sync.


Pledges (Custom Object)

Pledge sync requires the wegive__Pledge__c custom object to be installed and the push_pledges flag to be enabled.

WeGive Field

Salesforce Field

Direction

Notes

amount

wegive__Amount__c

Both

donor.salesforce_id

wegive__Contact__c

Both

donor.salesforce_account_id

wegive__Account__c

Both

campaign.salesforce_id

wegive__Campaign__c

Both

fund.salesforce_id

wegive__GAU_Allocation__c

Both

start_date

wegive__Date_Established__c

Both

end_date

wegive__End_Date__c

Both

installment_frequency

wegive__Installment_Period__c

Both


Soft Credits

WeGive syncs to both Account Soft Credits and Partial Soft Credits.

Type

Salesforce Object

Account-level

npsp__Account_Soft_Credit__c

Individual-level

npsp__Partial_Soft_Credit__c


Sync Order

WeGive syncs objects in a specific order to ensure relational integrity:

  1. Households

  2. Individual donors (Contacts)

  3. Companies (Organization Accounts)

  4. Campaigns

  5. Designations (GAUs)

  6. Pledges

  7. Transactions (Opportunities + Payments + Allocations)

  8. Recurring Plans

  9. Soft Credits

The donor record must sync before the transaction, because the Opportunity requires a Contact or Account to attach to.


Customizing Mappings

Default mappings can be overridden or extended through the Mapping Rules interface in Integrations → Salesforce. Options for each rule include:

  • Direction: Export (WeGive → Salesforce), Import (Salesforce → WeGive), or Both

  • Create Only: Field is populated only when creating a new record, not on updates

  • Literal Value: A fixed, hardcoded value is always sent regardless of WeGive data

For step-by-step instructions, see [Add New Fields to Salesforce Mapping Rules].