Setting up Benevity
This guide walks you through connecting Benevity to MoveData. This integration processes CSV disbursement reports and imports donation data into Salesforce. MoveData supports both the new disbursement report exported from Benevity's Causes Portal and the legacy disbursement report — a single Benevity integration in MoveData handles either format.
| Field | Detail |
|---|---|
| Product | Benevity |
| Method | CSV file processing |
| Frequency | Manual upload |
Supported extensions#
This integration requires the Fundraising and Donations extension.
Supported file types#
MoveData supports the disbursement report from Benevity in two formats:
- New disbursement report — exported from Benevity's Causes Portal. Includes the
Foreign Exchange Ratecolumn required for currency conversion. - Legacy disbursement report — exported from the previous portal. Still in circulation for charities mid-migration.
You can export both formats from the Benevity Causes Portal.
Note
A single Benevity integration in MoveData handles both formats. MoveData auto-detects which format you've uploaded based on the column headers in the file — you do not need to set anything before upload, or create separate integrations for each format.
Example new disbursement report#
The table below describes the columns you will find in each row of the new disbursement report. You can download an example file to use as a test upload.
| Column | Description | Example |
|---|---|---|
| Nonprofit Name | Your charity's registered name | EXAMPLE CHARITY |
| Nonprofit ID | Benevity's identifier for your charity | 036-100001 |
| Disbursement ID | Unique identifier for the disbursement batch | 1TK1ZW71WQ |
| Disbursement Date | Date Benevity issued the disbursement | 2026-04-16T00:00:00Z |
| Bank Date | Date the disbursement reached your bank ("Not available" if unknown) | Not available |
| Bank Reference ID | Bank-side reference for the disbursement | KQ3NAUEQYWLZ-2026.04.28 |
| Payment Method | How the disbursement was made | EFT |
| Disbursement From (Grantor) | Granting foundation or entity | The Online Giving Foundation |
| Company Name | Employer organisation ("Not shared by donor" if withheld) | Acme Corp |
| Corporate / Peer Campaign | Sub-campaign or peer fundraising context (may be blank) | Fundraiser for Disaster Response |
| Project Name | Benevity project or designation | Community Support Programme |
| Project ID | Benevity's project identifier | 5JEQ6943EX |
| Project External ID | Your external reference for the project (may be blank) | 62893467623b0f2cfbf |
| Community Investment Grant Requirements | Grant-related requirements (may be blank) | Free text |
| Transaction ID | Unique transaction identifier | 780F9UPPK3 |
| Donation Date | Date and time of the donation | 2026-03-03T00:59:59Z |
| Donation Amount | Employee donation amount in the donation currency | 15.0000 |
| Match Amount | Employer match amount in the donation currency (0 if none) | 100.0000 |
| Donation Currency | Three-letter currency code | GBP, USD, EUR |
| Foreign Exchange Rate | Benevity-provided rate for converting the donation currency to your base currency (blank when the donation is already in the base currency) | 0.785000 |
| Cause Support Fee | Platform fee | 7.25 |
| Merchant Fee | Payment processing fee | 0.98 |
| Check Fee | Cheque-issuance fee | 0.00 |
| Fee Comment | Fee notes (may be blank) | Free text |
| Donation Frequency | One-time or recurring | One Time, Unspecified |
| Donation Method | Donation channel | My Rewards, Donation, Payroll |
| Donation Type | Type of donation row | User Donation, Match, User Portfolio Donation |
| Donor First Name / Donor Last Name | Donor name ("Not shared by donor" if anonymous) | Sarah, Williams |
| Donor Email | Donor email ("Not shared by donor" if anonymous) | sarah.williams@acmecorp.com |
| Donor Address / Donor City / Donor State / Province / Donor Zip / Postal Code / Donor Country | Donor address ("Not shared by donor" if anonymous) | 12 Elm Street, Bromley, Kent, BR6 0BH, United Kingdom |
| Donor Comment | Donor comment (may be blank) | Free text |
Example legacy disbursement report#
The table below describes the columns you will find in each row of the legacy disbursement report. You can download an example file to use as a test upload.
| Column | Description | Example |
|---|---|---|
| Company | Employer name | Acme Corp |
| Project | Benevity project or designation | Community Support Programme |
| Donation Date | Date and time of the donation | 2024-12-03T12:25:03Z |
| Donor First Name / Last Name | Donor name ("Not shared by donor" if anonymous) | Sarah, Williams |
| Donor email ("Not shared by donor" if anonymous) | s.williams@acmecorp.com |
|
| Address, City, State/Province, Postal Code | Donor address ("Not shared by donor" if anonymous) | 12 Elm Street, Bromley, Kent, BR6 0BH |
| Activity | Sub-campaign name (may be blank) | Community Fundraiser |
| Comment | Donor comment (may be blank) | Free text |
| Transaction ID | Unique transaction identifier | 61U7SRG4XK |
| Donation Frequency | One-time or recurring | One Time, Unspecified |
| Currency | Three-letter currency code | GBP |
| Project Remote ID | Remote project reference (may be blank) | Community Support 1888218 - FN00180 |
| Source | Donation source channel | My Rewards, BlueSnap, Donation |
| Reason | Donation reason | User Donation, Match |
| Total Donation to be Acknowledged | Employee donation amount | 15.00 |
| Match Amount | Employer match amount (0 if none) | 100.00 |
| Cause Support Fee | Platform fee | 8.28 |
| Merchant Fee | Payment processing fee | 2.50 |
| Fee Comment | Fee notes (may be blank) | Free text |
Handling your CSV file#
Always upload the original file exactly as downloaded from Benevity. Do not open or resave it in Microsoft Excel, Google Sheets, or Numbers. These applications silently reformat dates, strip leading zeros, and alter CSV encoding in ways that cause import failures.
If you need to inspect or edit specific values (for example, to adjust a currency code), use a plain text editor such as Sublime Text, Notepad++, or VS Code. Do not alter column headers, delimiters, or file encoding. Any modifications to the disbursement file are at your own risk.
Date formatting errors are the most common cause of failed imports. If MoveData reports date errors after upload, the file has almost certainly been opened in a spreadsheet application. Re-export the original file from Benevity and upload it again.
Salesforce records created#
MoveData creates different Salesforce records depending on your data model.
| Benevity data | Nonprofit Success Pack (NPSP) | Nonprofit Cloud |
|---|---|---|
| Donor | Contact | Person Account |
| Employer / Company | Account | Account |
| Benevity campaign | Campaign (with hierarchy) | Campaign (with hierarchy) |
| Employee donation | Opportunity | Gift Transaction |
| Employer match | Opportunity | Gift Transaction |
| Recurring donation | Recurring Donation | Gift Commitment |
When foreign-exchange conversion is enabled and the uploaded file is in the new disbursement format, MoveData converts the donation amount, match amount, and fees on each row to your base currency before writing the record — no new record type is created.
Before you begin#
- You need access to the MoveData app in Salesforce.
- You need a disbursement report exported from Benevity in CSV format. Contact your Benevity administrator to obtain this file. Both the new Causes Portal report and the legacy report are supported.
Setting up the integration#
Step 1: Export your disbursement report#
Contact your Benevity administrator to export a disbursement report in CSV format from the Causes Portal. MoveData supports both the new and legacy disbursement formats; you do not need to indicate which one before uploading.
Step 2: Open the integrations tab#
In MoveData, click the Integrations tab from the main navigation.
Step 3: Create a new integration#
Click New Integration to open the integration selector.
Step 4: Select Benevity#
Choose Benevity from the list of available integrations.
Step 5: Name your integration#
Enter a descriptive name for your integration. This helps you identify it later, especially if you manage multiple Benevity uploads.
Step 6: Configure currency conversion#
Benevity disbursement reports can include donations made in multiple currencies. If you want MoveData to convert these to a single base currency — using the Foreign Exchange Rate value provided in each row of the new disbursement format — set the two options below before uploading your first file.
| Option | Description |
|---|---|
| Convert to Base Currency using Foreign Exchange Rate | When set to Yes, MoveData converts donation amounts to your base currency using the Foreign Exchange Rate column on each row of the disbursement report. |
| Base Currency (ISO 4217) | The three-letter ISO 4217 code for your base currency (for example, AUD, GBP, USD). Required when conversion is enabled. |
Warning
These settings apply only to uploads in the new disbursement format. Legacy disbursement reports do not include a Foreign Exchange Rate column, so these settings are silently ignored when a legacy file is uploaded.
Step 7: Save the integration#
Click Save to create the integration record.
Step 8: Upload your CSV file#
Click the Upload File button and select your Benevity disbursement CSV file. MoveData processes the file automatically after upload.
After uploading, check the Notifications tab or Executions tab in MoveData to monitor processing status.
Success
MoveData uses Salesforce Flows for processing, so you can extend the integration with custom field mapping, custom object creation, or business rules through your own Flows.
How campaigns are organised#
MoveData creates a campaign hierarchy (a structured grouping of campaigns) from your Benevity data:
- Top-level campaign: MoveData creates a campaign named "Benevity" automatically.
- Activity / project-level campaigns: When the Activity field (legacy format) or its equivalent in the new format contains a value, MoveData creates a sub-campaign using that value as the name.
How employer matching works#
A single row in your CSV can generate both an employee donation and an employer match. The fields involved are slightly different between the two formats:
| New format | Legacy format | |
|---|---|---|
| Employee donation amount | Donation Amount |
Total Donation to be Acknowledged |
| Employer match amount | Match Amount |
Match Amount |
- Employee donation is created when the donation-amount field is greater than zero.
- Employer match is created when Match Amount is greater than zero. This creates a separate Opportunity (NPSP) or Gift Transaction (Nonprofit Cloud) record linked to the employer.
MoveData uses the Transaction ID as the unique key for employee donations.
For employer matches, it appends _matched to the Transaction ID (for example, TXN123_matched).
How FX conversion works#
The new disbursement format includes a Foreign Exchange Rate column on each row. When the currency conversion settings are enabled, MoveData uses this rate to convert each donation into your base currency before writing the record to Salesforce.
The rate represents the value of one unit of the donation currency in your base currency. MoveData applies it by multiplication: base_amount = Donation Amount × Foreign Exchange Rate. The same conversion is applied to Match Amount and to each fee field on the row.
When the donation currency already matches your base currency (for example, a GBP donation processed against a GBP base), Benevity leaves the Foreign Exchange Rate blank and no conversion is performed — the amount is written to Salesforce as-is.
These settings have no effect on uploads in the legacy disbursement format, which does not include a Foreign Exchange Rate column.
Migrating historical data#
You can import historical donation data through the same file upload process. Export your past disbursement reports from Benevity and upload each CSV file using the Upload File button. Both new and legacy reports are accepted.
Other resources#
- MoveData Benevity Integration — overview of supported features and Salesforce record mapping
- Benevity — Benevity's main website for nonprofits and employers
- Benevity Causes Portal — charity portal for managing disbursements and reports
- Introducing the New Causes Portal Experience — Benevity's announcement of the new portal and disbursement report format
- Benevity Causes Help Centre — support documentation for nonprofits using Benevity
- Understanding Donor Reports — how to read and interpret Benevity disbursement reports
- Where Do I Find My Reports? — locating reports in the Benevity Causes Portal
- MoveData Support — for setup assistance and technical support