Salesforce Pledge Field Mapping Guide (wegive__Pledge__c)
Last updated: April 13, 2026
WeGive's Salesforce package includes a custom wegive__Pledge__c object for syncing pledge records. Because pledge field mappings are not auto-configured, customers must set these up manually in their integration mapping rules. This guide covers every supported field, the correct Salesforce API name to use, and how the value maps to WeGive.
Required Fields
These fields must be mapped for pledges to sync correctly in both directions.
WeGive Field | Salesforce API Name | Type | Notes |
Donor (Contact) |
| Lookup | Maps to the individual donor's Salesforce Contact ID |
Donor (Account) |
| Lookup | Maps to the donor's Salesforce Account ID |
Total Amount |
| Currency | WeGive stores in cents; the integration divides by 100 on push |
Start Date |
| Date | |
End Date |
| Date |
Note: Both wegive__Contact__c and wegive__Account__c should be mapped even if the donor is an individual. The Account ID is required by Salesforce for certain validation rules.
Recommended Fields
These fields should be mapped for a complete sync experience.
WeGive Field | Salesforce API Name | Type | Notes |
Installment Period |
| Picklist | Accepted values: |
Next Installment Date |
| Date | WeGive pushes this but it is not included in the default payload — must be mapped explicitly |
Description |
| Text (255) | Truncated to 255 characters on push |
Campaign |
| Lookup | Maps to the Salesforce Campaign record |
Is Hidden |
| Checkbox | Controls visibility in WeGive |
Common Mapping Mistakes
❌ Using Contact__c instead of wegive__Contact__c
The WeGive package field is prefixed with wegive__. Using the bare Contact__c will result in:
No such column 'Contact__c' on sobject of type wegive__Pledge__c
Always use wegive__Contact__c.
❌ Not mapping both Contact and Account
Salesforce may enforce validation rules that require both the Contact and Account to be present on the pledge record, even for individual donors. Map both fields.
❌ Using an unsupported picklist value for Installment Period
The wegive__Installment_Period__c field is a picklist. The integration maps WeGive frequency values to the following Salesforce picklist values:
WeGive Frequency | Salesforce Picklist Value |
monthly |
|
quarterly |
|
annually |
|
1 (payment) |
|
4 (payments) |
|
8 (payments) |
|
If a custom picklist value is used in Salesforce, the mapping will fail silently or default to null.
Fields Supported on Pull Only (Salesforce → WeGive)
These fields are read when pulling pledges from Salesforce but are not included in the default outbound push payload. If you want them to sync back to Salesforce, they must be added via mapping rules.
Salesforce API Name | WeGive Field |
| next_installment_date |
| name (pledge name/label) |
Fields Not Currently Supported
The following WeGive pledge attributes do not have corresponding fields in the standard package and cannot be mapped:
Number of installments
Installment size / installment amount
Fund (GAU) allocation on the pledge
Pledge status (active/ended)
If a customer needs these, they would require custom fields on wegive__Pledge__c in their Salesforce org and corresponding mapping rules in WeGive.
Example Mapping Rule Setup
When configuring mapping rules in WeGive for a customer, the following is the recommended minimum configuration:
Import rules (Salesforce → WeGive):
wegive__Contact__c→salesforce_id(donor lookup)wegive__Account__c→salesforce_account_id(account lookup)wegive__Amount__c→total_amountwegive__Start_Date__c→start_datewegive__End_Date__c→end_datewegive__Installment_Period__c→installment_frequencywegive__Next_Installment_Date__c→next_installment_datewegive__Description__c→descriptionwegive__Campaign__c→ campaign lookup
Export rules (WeGive → Salesforce): Same fields as above, with the addition of checking create_only on wegive__Amount__c, wegive__Start_Date__c, and wegive__End_Date__c if you do not want Salesforce overwriting edits made in WeGive.
Last updated: April 2026