Donation Object Mapping
This document details the comprehensive mapping between Neon CRM donation objects and WeGive transaction records, including payment processing, field mappings, and synchronization behavior.Object Overview
Neon Donation Object
Represents financial transactions in Neon CRM including gifts, payments, and related processing information.WeGive Transaction Object
Represents donation transactions in WeGive including payment methods, fees, and donor attribution.Core Donation Mapping
WeGive Transaction to Neon Donation
Financial Information
Timing Information
Attribution
Tribute Information
Integration Fields
Payment Processing
Payment Method Mapping
Tender Type Mapping
Credit Card Processing
For credit card payments (source_type = 'card'):
Card Type Mapping
Bank Transfer Processing
For bank transfers (source_type = 'bank'):
Payment Object Structure
Credit Card Payment
Bank Transfer Payment
Campaign Integration
Campaign Reference
When transactions are associated with campaigns:Campaign Object Structure
Complete Donation Structure
Full Neon Donation Object
Data Transformations
Amount Conversion
- WeGive Storage: Amounts stored in cents (integer)
- Neon Format: Amounts in dollars (decimal)
- Conversion: WeGive amount ÷ 100 = Neon amount
- Example: WeGive 10000 cents = Neon $100.00
Date Formatting
- WeGive Format: ISO 8601 datetime
- Neon Format: ISO 8601 date or datetime
- Timezone: UTC conversion applied
- Example: “2024-01-15T10:30:00Z”
Anonymous Type Mapping
Fee Calculation
Custom Field Mapping
Default Donation Mappings
The integration includes pre-configured mappings:Adding Custom Mappings
Organizations can add custom donation field mappings:Synchronization Behavior
Donation Creation
- Account Verification: Ensures donor account exists in Neon CRM
- Campaign Sync: Syncs associated campaign if not already present
- Payment Processing: Creates payment record with donation
- Correlation Tracking: Stores Neon donation and payment IDs
Donation Updates
- Existing Check: Uses
neon_idto identify existing donations - Payment Handling: Updates existing payments or creates new ones
- Field Updates: Updates modifiable fields only
- Immutable Fields: Respects Neon CRM restrictions on changes
Import from Neon CRM
- Donation Search: Uses search API with date filters
- Account Matching: Matches Neon accounts to WeGive donors
- Transaction Creation: Creates new WeGive transactions
- Status Setting: Sets appropriate transaction status
Error Handling
Validation Errors
- Missing Account: Clear errors when donor account not found
- Invalid Amount: Amount validation with minimum/maximum checks
- Payment Method: Validation of payment method data
- Date Format: Date validation and format correction
Resolution Strategies
- Account Creation: Automatic donor account creation when missing
- Data Correction: Tools for correcting invalid payment data
- Retry Logic: Automatic retry for transient failures
- Manual Review: Administrative interface for complex errors
Performance Considerations
Batch Processing
- Large Imports: Efficient processing of large donation datasets
- Payment Optimization: Optimized payment creation and updates
- Campaign Batching: Batch campaign synchronization before donations
- Error Handling: Graceful handling of partial batch failures
API Optimization
- Rate Limiting: Respectful API usage with throttling
- Parallel Processing: Concurrent processing where possible
- Memory Management: Efficient memory usage for large datasets
- Caching: Smart caching of frequently accessed data
API Examples
Creating Donation
Searching Donations
Updating Donation
Best Practices
Data Quality
- Amount Validation: Ensure amounts are positive and realistic
- Payment Verification: Verify payment method details before sync
- Date Consistency: Maintain consistent date formats and timezones
- Campaign Validation: Ensure campaigns exist before donation creation
Integration Management
- Regular Monitoring: Monitor donation sync performance and errors
- Fee Tracking: Track and validate fee calculations
- Payment Security: Ensure secure handling of payment information
- Reconciliation: Regular reconciliation between platforms
Performance Optimization
- Batch Operations: Use batch operations for large donation imports
- Incremental Sync: Sync only new or modified donations
- Error Recovery: Implement robust error recovery mechanisms
- Monitoring: Monitor API usage and performance metrics