Fund Data Mapping
Detailed field mapping for funds and GL codes between WeGive and DonorPerfect systems.
Fund Data Mapping
This document details how WeGive funds are mapped to DonorPerfect GL codes, enabling proper fund designation and financial reporting across both systems.
DonorPerfect Table Reference
Primary Table: dpcode
(Code Tables)
WeGive Model: Fund
Sync Direction: WeGive → DonorPerfect (Push Only)
Fund Integration Overview
GL Code Management
Fund to GL Code Mapping
Fund to GL Code Mapping
Mapping Strategy:
- Each WeGive fund can have an associated DonorPerfect GL code
- GL codes are automatically created in DonorPerfect for new funds
- Existing GL codes are updated when fund information changes
- Fund descriptions sync to GL code descriptions
Code Table Structure
Code Table Structure
DonorPerfect Code Types:
- Field Name: ‘GL_CODE’ (General Ledger codes)
- Code Value: WeGive fund ID or custom code
- Description: WeGive fund name/description
- User ID: ‘WeGive’ for tracking integration records
Core Fund Fields
Primary Identifiers
Fund Identification
Fund Identification
WeGive Field | DonorPerfect Field | Type | Notes |
---|---|---|---|
id | @code | String | WeGive fund ID used as GL code |
name | @description | String | Fund name/description |
N/A | @field_name | String | Always set to ‘GL_CODE’ |
N/A | @user_id | String | Always set to ‘WeGive’ |
Custom GL Codes
Custom GL Codes
Alternative Mapping:
- Some funds may have custom DonorPerfect GL codes
- Custom codes stored in
dp_gl_code
field on WeGive fund - Integration uses custom code if available, otherwise uses fund ID
- Enables alignment with existing DonorPerfect chart of accounts
Fund Information
Descriptive Fields
Descriptive Fields
WeGive Field | DonorPerfect Field | Type | Max Length | Notes |
---|---|---|---|---|
name | @description | String | 50 | Fund display name |
description | Not mapped | String | - | Extended description not synced |
category | Not mapped | String | - | Fund categories not synced |
Field Length Handling
Field Length Handling
Truncation Rules:
- Fund names longer than 50 characters are automatically truncated
- Truncation preserves word boundaries where possible
- Ellipsis (…) added to indicate truncated names
- Full names maintained in WeGive system
GL Code Creation Process
Automatic GL Code Generation
Fund Created in WeGive
New fund established in WeGive system
GL Code Check
Integration checks if GL code exists in DonorPerfect
Code Creation
Creates new GL code if it doesn’t exist
Description Sync
Updates GL code description with fund name
Validation
Confirms GL code is available for transaction use
GL Code Update Process
Fund Name Changes
Fund Name Changes
Update Workflow:
- WeGive fund name change triggers GL code update
- DonorPerfect GL code description updated automatically
- Historical transactions retain original descriptions
- New transactions use updated fund names
Fund Status Changes
Fund Status Changes
Active/Inactive Status:
- WeGive fund deactivation doesn’t delete GL codes
- GL codes remain available for historical reporting
- New transactions prevented for inactive funds
- Reactivation restores full functionality
Data Flow Patterns
Fund Synchronization
New Fund Processing
New Fund Processing
Creation Sequence:
- WeGive fund created by administrator
- Integration detects new fund
- GL code created in DonorPerfect dpcode table
- Success confirmation stored in WeGive
- Fund available for transaction designation
Existing Fund Updates
Existing Fund Updates
Modification Handling:
- Fund name changes sync to GL code descriptions
- Fund category changes don’t sync (not supported)
- Fund deactivation preserves GL code but prevents new use
- Fund reactivation restores full GL code functionality
Transaction Integration
Fund Designation in Transactions
Fund Designation in Transactions
Usage Pattern:
- Donations specify WeGive fund for designation
- Integration maps fund to appropriate GL code
- Transaction syncs to DonorPerfect with GL code
- Fund reporting available in both systems
GL Code Validation
GL Code Validation
Pre-Transaction Checks:
- Verify GL code exists before transaction sync
- Create GL code if missing (automatic)
- Validate fund is active and available
- Ensure proper permissions for GL code use
API Operations
DonorPerfect GL Code Management
dp_savecode Action
dp_savecode Action
Required Parameters:
GL Code Query
GL Code Query
SQL Query Example:
Error Handling
GL Code Errors: Invalid or duplicate GL codes can prevent transaction processing.
Error Type | Cause | Resolution |
---|---|---|
Duplicate Code | GL code already exists | Use existing code or create variant |
Invalid Characters | GL code contains invalid characters | Clean code format and retry |
Code Too Long | GL code exceeds DonorPerfect limits | Truncate or use alternative code |
Permission Error | Insufficient rights to create codes | Verify API permissions |
API Timeout | DonorPerfect API unavailable | Retry with backoff delay |
Fund Configuration
WeGive Fund Setup
Basic Fund Configuration
Basic Fund Configuration
Required Fields:
- Fund name (required, becomes GL code description)
- Fund status (active/inactive)
- Organization assignment
Optional Fields:
- Custom DonorPerfect GL code (
dp_gl_code
) - Fund description (extended, doesn’t sync)
- Fund category (internal use only)
Custom GL Code Assignment
Custom GL Code Assignment
When to Use Custom Codes:
- Aligning with existing DonorPerfect chart of accounts
- Meeting specific accounting requirements
- Maintaining consistent numbering schemes
- Supporting multi-organization structures
Configuration Process:
- Determine appropriate GL code in DonorPerfect
- Set
dp_gl_code
field in WeGive fund - Integration uses custom code instead of fund ID
- Verify code availability and permissions
DonorPerfect GL Code Requirements
Code Format Standards
Code Format Standards
DonorPerfect Limitations:
- Maximum length: varies by DonorPerfect configuration
- Allowed characters: typically alphanumeric and dashes
- Case sensitivity: depends on DonorPerfect settings
- Special characters: limited support
Code Organization
Code Organization
Best Practices:
- Use consistent numbering schemes
- Group related funds with similar prefixes
- Maintain alignment with accounting standards
- Document GL code purposes and usage
Sync Configuration
Fund Sync Settings
Automatic Sync Triggers
Automatic Sync Triggers
Sync Events:
- New fund created in WeGive
- Fund name changed
- Fund status modified (active/inactive)
- Custom GL code assigned or changed
Sync Timing
Sync Timing
Processing Schedule:
- Real-time: New funds and critical changes sync immediately
- Batch: Name updates and status changes sync every 15 minutes
- Manual: Force sync available through dashboard
- Validation: Pre-transaction GL code verification
Performance Considerations
Efficient Processing
- Batch GL code creation for multiple funds
- Cached GL code validation for transactions
- Minimal API calls for existing codes
- Optimized query performance
Error Recovery
- Automatic retry for failed GL code creation
- Alternative code generation for conflicts
- Manual override options for complex cases
- Comprehensive error logging and alerts
Data Quality and Validation
Pre-Sync Validation
Fund Validation Rules
Fund Validation Rules
Quality Checks:
- Fund name is not empty
- Fund name length within limits
- GL code format is valid
- No duplicate GL codes
- Proper organization assignment
GL Code Standards
GL Code Standards
Format Validation:
- Alphanumeric characters only
- Appropriate length for DonorPerfect
- No conflicting existing codes
- Consistent with organizational standards
Monitoring and Reporting
Fund Sync Status
Fund Sync Status
Dashboard Metrics:
- Total funds synced to DonorPerfect
- GL code creation success rate
- Recent sync errors and resolutions
- Fund-to-transaction mapping accuracy
Financial Reporting
Financial Reporting
Reporting Consistency:
- Fund designation accuracy across systems
- GL code usage in transaction reports
- Fund performance comparisons
- Donation attribution verification
Best Practices
Fund Management
Plan GL Code Structure
Design consistent numbering scheme before creating funds
Use Descriptive Names
Create clear, concise fund names within character limits
Maintain Active Status
Regularly review and update fund statuses as needed
Monitor Sync Status
Check integration dashboard for GL code sync issues
Integration Optimization
Proactive Management
- Create funds before launching campaigns
- Test GL code creation in development
- Plan for fund lifecycle management
- Document fund purposes and usage
Error Prevention
- Validate fund names before creation
- Check for duplicate GL codes
- Maintain consistent naming conventions
- Review DonorPerfect GL code standards
Troubleshooting
Common Fund Sync Issues
GL Codes Not Creating
GL Codes Not Creating
Possible Causes:
- Fund sync disabled in configuration
- API permission issues
- Invalid fund name or format
- DonorPerfect connection problems
Solutions:
- Verify fund sync settings enabled
- Check API credentials and permissions
- Validate fund name format
- Test DonorPerfect API connectivity
Duplicate GL Code Errors
Duplicate GL Code Errors
Possible Causes:
- GL code already exists in DonorPerfect
- Multiple funds using same custom code
- Case sensitivity conflicts
Solutions:
- Check existing GL codes in DonorPerfect
- Use unique codes for each fund
- Verify case sensitivity settings
Transaction GL Code Errors
Transaction GL Code Errors
Possible Causes:
- GL code missing from DonorPerfect
- Fund inactive or deleted
- GL code format issues
Solutions:
- Verify GL code exists and is active
- Check fund status in WeGive
- Validate GL code format requirements
Limitations and Considerations
Known Limitations
Important Fund Limitations:
Field Mapping Limitations
Field Mapping Limitations
Unsupported Fields:
- Extended fund descriptions don’t sync
- Fund categories not mapped to DonorPerfect
- Fund hierarchies not supported
- Custom fund attributes don’t sync
GL Code Constraints
GL Code Constraints
DonorPerfect Limitations:
- Character limits vary by configuration
- Special character restrictions
- Case sensitivity depends on settings
- Deletion restrictions for codes in use
Future Considerations
Enhanced Fund Mapping
Enhanced Fund Mapping
Potential Improvements:
- Support for fund hierarchies
- Extended description mapping
- Fund category synchronization
- Custom attribute mapping
Advanced GL Code Features
Advanced GL Code Features
Possible Enhancements:
- Automatic code numbering schemes
- Fund consolidation capabilities
- Advanced reporting integration
- Multi-dimensional fund tracking
Related Documentation
Transaction Mapping
How GL codes are used in transaction processing
Configuration Guide
Configure fund sync settings
Integration Nuances
Platform-specific fund handling behaviors
Data Overview
Complete data mapping documentation
For additional help with fund data mapping, contact our support team at [email protected].