Transaction Data Mapping

This document details how donation transactions are mapped between WeGive and DonorPerfect, including one-time gifts, recurring donations, and tribute gifts.

DonorPerfect Table Reference

Primary Table: dpgift (Gift Records)
WeGive Model: Transaction
Sync Direction: WeGive → DonorPerfect (Push Only)

Core Transaction Fields

Primary Identifiers

Financial Information

Amount Processing

Critical: WeGive stores amounts in cents (integer), DonorPerfect uses dollars (decimal). Automatic conversion and fee handling applied.

WeGive FieldDonorPerfect FieldCalculationNotes
amount@amount(amount - fee) / 100Net donation amount in dollars
feeNot directly mappedUsed in calculationProcessing fee deducted
destination.currency@currencyDirect mappingCurrency code (e.g., ‘USD’)

Amount Calculation Examples

Date and Timing

WeGive FieldDonorPerfect FieldFormatNotes
created_at@gift_dateMM/DD/YYYYTransaction processing date

Date Format: DonorPerfect requires MM/DD/YYYY format. Other formats will cause sync failures.

Fund and Campaign Attribution

Fund Designation

Gift Types and Classifications

Recurring Donation Handling

Tribute and Memorial Gifts

Gift Narrative and Notes

Automatic Gift Description

Data Flow Process

Transaction Sync Workflow

1

Transaction Created

New donation processed in WeGive system

2

Donor Validation

Verify donor exists in DonorPerfect (create if needed)

3

Amount Calculation

Calculate net amount after fee deduction

4

Gift Record Creation

Create gift record in DonorPerfect dpgift table

5

ID Assignment

Store DonorPerfect gift ID back in WeGive

Error Handling

Transaction Sync Errors: Failed transactions are automatically retried with exponential backoff.

Error TypeCauseResolution
Invalid DonorDonor doesn’t exist in DonorPerfectAuto-create donor, retry transaction
Invalid GL CodeFund GL code not foundCreate GL code, retry transaction
Amount ValidationNegative or zero amountSkip transaction, log error
Date FormatInvalid date formatCorrect format, retry
API TimeoutDonorPerfect API unavailableRetry with backoff delay

API Operations

DonorPerfect Gift Creation

Query Operations

Sync Configuration

Transaction Sync Settings

Performance Considerations

High Volume Processing

  • Batch processing for multiple transactions
  • Rate limiting to prevent API overload
  • Queue management for peak periods
  • Automatic retry for failed syncs

Error Recovery

  • Failed transactions automatically retry
  • Exponential backoff prevents system overload
  • Manual retry options in dashboard
  • Comprehensive error logging

Data Quality and Validation

Pre-Sync Validation

Monitoring and Reporting

Troubleshooting

Common Transaction Sync Issues

For additional help with transaction data mapping, contact our support team at [email protected].