Client Overview
An international development NGO working with local partners in six countries reached out to ProvidusCRM. Institutional grants from government aid agencies, trusts, and foundations fund most of its work, alongside individual donors and corporate partners.
The NGO had run its supporter database on CiviCRM for over a decade. However, its grants, programme results, and partner reporting all sat outside the CRM. The leadership team wanted a CRM for their NGO that connected every pound raised to the programme it paid for and the results it produced.
The client therefore chose Salesforce Nonprofit Cloud and asked our team to lead the migration.

Their Challenge
CiviCRM held individual supporters and their regular gifts well. However, years of extensions and custom fields had made upgrades risky, and only one staff member understood how they fitted together. Institutional funding sat in spreadsheets instead, with proposal deadlines, tranche payments, and reporting dates tracked by hand.
Programme data created a second gap. Each country office and local partner sent results to the head office in its own spreadsheet format. So, the programmes team spent days combining indicator data before every funder report. Also, grants arrived in US dollars and euros, while the NGO reported in pounds, and currency conversions happened in yet another file.
As a result, leadership could not see in one place how much restricted grant income remained for each project. It also could not see whether each project was on track against its agreed indicators.

Solution We Delivered
Our team started with the migration from CiviCRM. We exported contacts, contributions, recurring contributions, relationships, and activities, and kept each CiviCRM contact ID as a legacy ID. Individuals became Person Accounts, households became Party Relationship Groups, and organisations became business Accounts.
Contributions became Gift Transactions, and recurring contributions became Gift Commitments. We also mapped each CiviCRM financial type to a Gift Designation and merged duplicates before loading. Our consultants then reconciled contribution totals by financial type against CiviCRM before cutover.
The NGO kept its GoCardless account, so we linked each existing Direct Debit mandate to its Gift Commitment through FinDock. Regular donors kept giving without completing a new Direct Debit instruction.
We then built the institutional funding process. Early proposals sit as Donor Gift Concepts, and awarded grants become Gift Commitments whose schedules match each funder's tranche payments. Every grant has its own restricted Gift Designation. We also enabled multiple currencies, so each grant is recorded in its contract currency and reported in pounds. Flow creates tasks ahead of every proposal and report deadline.
After that, we set up Nonprofit Cloud Outcome Management. Each programme has Outcomes and Indicator Definitions, and Indicator Assignments link each indicator to its programme and outcome. A lookup on each grant then links it to the programmes it funds. Local partners submit Indicator Results for each reporting period through an Experience Cloud partner portal. They see only their own projects, and beneficiary data stays with the partner that collected it.
Finally, we built a funder report for each grant. It combines income received, restricted balance remaining, and indicator progress for the period. Programme managers now start each report from live figures.
Impact
- Single Source of Truth: We migrated over a decade of CiviCRM history into Nonprofit Cloud, reducing duplicate supporter records by 30%.
- Faster Funder Reporting: We combined grant income and indicator results in one report per grant, cutting report preparation time by 50%.
- On-Time Grant Management: We automated proposal and reporting reminders, so 100% of funder reports were submitted by their deadlines.
- Connected Partners: We moved six country offices and their local partners onto one reporting portal, reducing manual data consolidation by 70%.



