Zapier + Salesforce Integration for DonationPay
1. Overview
DonationPay integrates with Salesforce through Zapier by triggering Zaps on donation events (New Donation, Recurring Donation, Refund, etc.) and sending those to your Salesforce instance.
With this setup, you can:
- Automatically create or update Contacts, Accounts, and Opportunities in Salesforce when donations are processed.
- Map DonationPay’s fields to NPSP-specific objects (e.g.,
npe01__Opportunity__c
) or standard Salesforce fields.
- Keep donor and gift data synced in near real-time.
2. Prerequisites
Before you start:
- DonationPay Zapier App: Installed and connected to your DonationPay account. (See base Zapier setup »)
- Salesforce Zapier App: Installed in Zapier and authenticated with Salesforce.
- Salesforce Permissions: Ensure your API-connected user has permission to create/update Contacts, Accounts, and Opportunities.
- If using NPSP: Confirm NPSP package is installed and configured in Salesforce.
3. Choosing the Right Salesforce App in Zapier
When adding your Salesforce step in Zapier:
- For Salesforce Nonprofit Success Pack (NPSP), you still select the standard Salesforce Zapier app — NPSP-specific fields will be available in the dropdown once connected.
- Ensure you’re connecting to the correct environment:
- Production:
https://login.salesforce.com
- Sandbox:
https://test.salesforce.com
4. Common Zap Patterns
A. Create/Update Contact
- Trigger: DonationPay → New Donation
- Salesforce Action: Find Contact (by Email) → If none found, Create Contact
Field Mapping:
DonationPay Field | Salesforce Field |
donor_first_name | First Name |
donor_last_name | Last Name |
donor_email | Email |
donor_phone | Phone |
donor_address | Mailing Street |
donor_city | Mailing City |
donor_state | Mailing State/Province |
donor_zip | Mailing Postal Code |
donor_country | Mailing Country |
B. Create Opportunity (Gift)
- Trigger: DonationPay → New Donation
- Salesforce Action: Create Record → Opportunity
Standard Salesforce Mapping:
DonationPay Field | Salesforce Field |
amount | Amount |
created_at | Close Date |
Constant Value | Stage Name → "Closed Won" |
Contact ID | Primary Contact ID |
donation_id | External ID for deduplication |
NPSP-Specific Mapping:
DonationPay Field | NPSP Field |
amount | Amount |
created_at | Close Date |
Contact ID | npe01__Contact__c |
Campaign (if applicable) | CampaignId |
C. Recurring Donations (NPSP)
- Trigger: DonationPay → Recurring Donation Created
- Salesforce Action: Create Record → npe03__Recurring_Donation__c
Field Mapping:
DonationPay Field | NPSP Field |
recurring_amount | Amount |
interval | npe03__Installment_Period__c |
start_date | npe03__StartDate__c |
Contact ID | npe03__Contact__c |
5. Handling Duplicates
We strongly recommend:
- Using Find or Create Contact before creating Opportunities.
- Setting DonationPay’s donation_id as an External ID in Salesforce to prevent duplicate gift records.
6. Testing Your Zap
- Create a $1 test donation on your DonationPay form.
- In Zapier, check the trigger step to confirm the data pulls through.
- Run the Zap test to confirm records are created or updated in Salesforce.
7. Notes on Nonprofit vs. Standard Salesforce
- NPSP users have specialized objects (
npe01__Opportunity__c
, npe03__Recurring_Donation__c
) and fields.
- Standard Salesforce users will typically only use Contact, Account, and Opportunity objects.
- Zapier automatically shows NPSP fields if your connected org has NPSP installed — no extra configuration in Zapier is needed.
8. Resources