Skip to main content

DonorDirect Data Mapping Overview

This document describes how the WeGive donor platform maps to DonorDirect StudioEnterprise (SE) objects and how each object is synchronized. The mappings here reflect the integration as built and code-reviewed.
This integration is not yet live for any organization — see Integration Nuances for current known limitations.

Object Mapping Summary

Detailed field-level mappings live on the per-object pages:

Correlation Fields

WeGive tracks the corresponding StudioEnterprise record using a donor_direct_id (or equivalent) column on each synced record:

Sync Directions

  • Pull is on by default for all five object types, using WeGive’s custom read-only data endpoints (see Integration Nuances for why).
  • Push is off by default for every object type and must be explicitly enabled per data type. Currently, push is only available for Donors, Transactions, and Scheduled Donations — Funds and Campaigns are pull-only at this time.
  • Transactions are effectively create-only on push. Once a gift has a StudioEnterprise ID, WeGive does not attempt to update that record again — gifts are treated as settled once synced. Refunds are sent as their own follow-up sync.
Pushing a transaction or recurring plan first pushes any related record that doesn’t yet have a StudioEnterprise ID — the donor (account), then the gift or plan itself — so the gift can reference a real StudioEnterprise account.

Identity & Matching

Accounts are the identity backbone every other object links back to. An Account’s type code routes how it’s imported into WeGive:
  • I (Individual) or S → imported as an individual Donor
  • O (Organization) → imported as a company Donor
  • F (Family) → imported as a Household
Transactions link to their parent recurring plan (if any) via a StudioEnterprise Header ID reference, which is how WeGive knows a given gift was produced by a specific recurring plan. Funds and Campaigns are reference data — small lookup catalogs — that transactions and recurring plans point to. They’re synced before gift/plan data during a pull, so gifts can resolve to a real fund/campaign on import.

Change Tracking

After the first full historical import, ongoing pulls use StudioEnterprise’s own audit/change-tracking data to identify which records changed (including deletions), rather than rescanning the full database on every sync cycle.
Deletion detection has a known limitation — see Integration Nuances.

Amount & Format Handling

WeGive stores monetary amounts in cents; StudioEnterprise uses decimal dollar amounts. All amounts are converted automatically in both directions. This overview reflects the integration as implemented so far. See the per-object pages for exact field mappings.