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.
- Go to the entity’s Customization tab (or your Account Customization for database-wide fields).
- Click Create New Custom Field.
- Enter a Name (this is how you’ll reference it in scripts and reports).
- Set the Type (Text Field is most common for codes).
- Check Hidden.
- 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.