DonorPerfect Integration Overview
WeGive’s DonorPerfect integration provides seamless, bidirectional synchronization between your WeGive donation platform and DonorPerfect donor management system. This integration ensures your donor data, transactions, and recurring donations remain consistent across both platforms.Key Features
Data Sync
- Bidirectional for donors and gifts — donors/gifts pushed from WeGive and pulled from DonorPerfect
- Selective sync options allow you to control which data types are synchronized
Data Coverage
- Donor/Constituent Management: Individual and organization profiles
- Transaction Processing: One-time donations (recurring donations sync as DonorPerfect pledges, one-way push only — see below)
- Fund Management: GL code synchronization on push only (no fund pull)
There’s no Campaign object sync in this integration —
DonorPerfectIntegration.php has no campaign-related sync logic anywhere, despite a track_campaigns toggle existing in the dashboard.Data Handling
- Incremental syncing via a two-pass date-column query (
created_datethenmodified_date) for efficient data transfer - Duplicate-import prevention: gifts/donors already known by their DonorPerfect ID are skipped on pull; a WeGive-originated gift is also recognized and skipped on pull via a reference-token marker, so it isn’t re-imported as a duplicate
- Anonymous gift support: an anonymous transaction’s gift narrative is annotated
(Anonymous) - Error handling: sync failures are reported to Sentry, not surfaced as customer-facing errors
There’s no automatic retry logic and no rate limiting anywhere in this integration’s code — every DonorPerfect API call is a single unretried request. This differs from several other WeGive CRM integrations that do implement retry/backoff and proactive rate-limit throttling.
Integration Benefits
Streamlined Operations
Eliminate manual data entry between systems and reduce administrative overhead
Data Consistency
Ensure donor information and transaction records are always synchronized
Enhanced Reporting
Access comprehensive donation data across both platforms for better insights
Donor Experience
Provide seamless giving experiences while maintaining complete records
Supported Data Types
The integration synchronizes the following data types:- Donors: Individual and organizational donor profiles
- Transactions: One-time donations and payments
- Recurring Donations: One-way push only, as DonorPerfect pledges (
dp_savepledge) — no pull-back from DonorPerfect - Funds: GL codes, push only (no fund pull)
How It Works
- Setup: Configure your API key (and optional custom instance URL) and enable the integration
- Data Mapping: Fields map via a fixed, built-in correspondence — there’s no customer-configurable field-mapping mechanism (see Configuration Options)
- Synchronization: Donor/gift/fund pushes happen as each WeGive record is created or updated; pulls run once daily
- Monitoring: Sync failures are reported to Sentry — there’s no customer-facing sync-status indicator on the dashboard
Getting Started
Ready to connect WeGive with DonorPerfect? Follow our step-by-step guides:Setup Requirements
Learn about prerequisites and configuration needs
Data Mapping
Understand how data flows between systems