GL Codes and Integration Codes

Integration codes are a special type of custom field — invisible to donors but accessible in scripts, reports, and data exports. They are the primary mechanism for encoding back-office identifiers like GL account codes, cost center codes, and external system IDs on DonorPoint objects.

What Integration Codes Are

An integration code is a custom field with its Hidden property set. Like all custom fields, it can be added to:

  • Campaigns (forms) — for GL codes on fundraising forms
  • Orderable Items — for GL codes on specific items within a form
  • Payment Methods — for payment category or processor codes
  • Funds — for agency codes and GL accounts
  • Contacts and Organizations — for external system IDs

Defining Integration Codes

Integration codes are created exactly like custom fields, with one difference: set Hidden = true on creation.

  1. Go to the entity’s Customization tab (or your Account Customization for database-wide fields).
  2. Click Create New Custom Field.
  3. Enter a Name (this is how you’ll reference it in scripts and reports).
  4. Set the Type (Text Field is most common for codes).
  5. Check Hidden.
  6. Save.

The code now appears on every record of that entity type, is invisible to donors, and is accessible in scripts and reports.

Accessing Integration Codes in Scripts

// On a campaign (form):
var glCode = campaign.get('GL_ACCOUNT_CODE').value;

// On a payment method:
var paymentType = purchaseOrder.payment.paymentMethod.get('PaymentCategory').value;

// On a fund:
var agencyCode = orderItem.fund.get('AgencyCode').value;

// On a contact:
var employeeId = contact.get('EmployeeNumber').value;

// On an organization:
var erpId = organization.get('ERP_ORG_ID').value;

Always guard against null:

var codeField = campaign.get('GL_ACCOUNT_CODE');
var glCode = (codeField != null && codeField.value != '') ? codeField.value : 'DEFAULT';

Using Integration Codes in Reports

Integration codes appear as columns in DonorPoint reports automatically — you don’t need to add them manually. Any report that includes the entity the code is attached to will have the code as an available column.

For example, a transaction detail report will automatically include:

  • The GL code from the campaign
  • The GL code from the item
  • The payment category from the payment method
  • The agency code from the fund

This makes integration codes the primary mechanism for reconciling DonorPoint exports against your financial system.

Integration Codes in Merge Tags

Integration codes can be included in email content and confirmation page content using EL expressions:

Your donation has been recorded under GL account #{campaign.get('GL_ACCOUNT_CODE').value}.

Setting Integration Code Values

Integration code values are set on each individual record:

  • Campaign: On the campaign’s Advanced Options tab, under Custom Fields
  • Fund: On the fund edit page, in the custom fields section
  • Payment Method: On the payment method edit page
  • Contact/Organization: On the contact or org edit page, on the Customization tab

Values can also be set in bulk via import files — include the integration code field name as a column header in your import CSV.

Common Integration Code Patterns

GL Account Codes on Funds

Assign GL account codes to funds to enable automatic GL export:

  • Fund name: “Annual Fund”
  • Integration code GL_ACCOUNT: “40100”

In your payout export or custom report, include the GL_ACCOUNT column alongside the fund name and amount for direct import into your accounting system.

Processor Codes on Payment Methods

Tag payment methods with codes for your payment processor reconciliation:

  • Payment method: “Visa/Mastercard”
  • Integration code ProcessorCode: “PPFLOWPRO”

Campaign Budget Codes

Attach cost center or budget codes to campaigns:

  • Campaign: “2024 Annual Workplace Campaign”
  • Integration code CostCenter: “CC-UW-2024”

External IDs on Contacts

Store employee numbers, student IDs, or CRM IDs on contacts:

  • Contact: “Jane Smith”
  • Integration code EmployeeId: “EMP-004521”

Use this for matching DonorPoint exports back to your HRIS or CRM.