Charities Trust Platform Key Syntax
Identifiers use the prefix ct:
The Charities Trust integration processes donations from two sources: Payroll (payroll giving) and Other Sources (corporate matching, direct payments, and partner programmes). MoveData uses the platform code ct. Key formats differ by source.
Payroll Giving#
| NPSP Object | NPC Object | Identifier | Example | Platform Key Value |
|---|---|---|---|---|
| Contact | Person Account | PGA Donor Ref No | 274967 |
ct:274967 |
| Account (Employer) | Account (Employer) | Employer Name (slug) | hooli |
ct:hooli |
| Campaign (top-level) | Campaign (top-level) | — | — | ct:ct |
| Campaign (Employer records) | Campaign (Employer records) | Employer Name (slug) | globexindustries |
ct:globexindustries |
| Recurring Donation | Gift Commitment | PGA Donor Ref No | 274967 |
ct:274967 |
| Opportunity | Gift Transaction | Date:DonorRef:Sequence | 2026-03-27:274967:1 |
ct:2026-03-27:274967:1 |
| Opportunity (Matched Gift) | Gift Transaction (Matched Gift) | Date:DonorRef:Sequence:match | 2026-03-27:1012184:1:match |
ct:2026-03-27:1012184:1:match |
Payroll contacts#
Contacts are identified by the PGA Donor Reference Number (e.g., ct:48526). The format varies by Payroll Giving Agency — some use numeric IDs, others use composites like GP269750/12403964. MoveData uses the reference as-is from the CSV.
Payroll accounts (employers)#
Accounts are keyed by a slugified version of the employer name (e.g., ct:globexindustries).
Payroll campaign hierarchy#
Campaigns use a two-level structure. All donations are grouped under a generic Charities Trust campaign (ct:ct). Each employer becomes a fundraiser campaign underneath, keyed by the same slugified employer name as the Account (e.g., ct:globexindustries).
Payroll recurring donations#
Recurring donations use the same key as the donor's PGA Donor Reference Number (e.g., ct:274967).
Payroll donations#
Donations are keyed by a composite of Date:DonorRef:Sequence (e.g., ct:2026-03-27:274967:1).
Payroll matched gifts#
When an employer matches donations, MoveData creates a separate matched gift Donation. The key appends :match to the original donation key (e.g., ct:2026-03-27:1012184:1:match).
Other Sources#
| NPSP Object | NPC Object | Identifier | Example | Platform Key Value |
|---|---|---|---|---|
| Contact | Person Account | Source Name + Surname (slug) | mg:tesmer |
ct:mg:tesmer |
| Campaign (top-level) | Campaign (top-level) | — | — | ct:ct |
| Campaign (Source records) | Campaign (Source records) | Source Name (hash) | fd5c7c7b2db9b159b53e33bf7dce455a |
ct:fd5c7c7b2db9b159b53e33bf7dce455a |
| Opportunity | Gift Transaction | Source Transaction Reference | AVUK-APP-18624 |
ct:AVUK-APP-18624 |
Other Sources contacts#
Contacts for Other Sources use a composite of the slugified source name and donor surname (e.g., ct:mg:tesmer). When no donor information exists, MoveData processes the donation as anonymous.
Other Sources campaign hierarchy#
Other Sources campaigns share the same top-level Charities Trust campaign (ct:ct). Each donation source becomes a fundraiser campaign underneath, keyed by a hash of the source name (e.g., ct:fd5c7c7b2db9b159b53e33bf7dce455a).
Other Sources donations#
Donations for Other Sources use different key formats depending on the source.
- With a transaction reference: MoveData uses the transaction ID directly (e.g.,
ct:AVUK-APP-18624). - Without a transaction reference: The key falls back to a
Date:Sequencecomposite (e.g.,ct:2025-11-18:1).
MoveData processes Other Sources donations as one-off transactions and does not create a recurring donation.