Migrating a 15-year-old donor management system to Salesforce NPSP — with custom donation flows, FormAssembly integration, and automated board reporting — in 14 weeks.
The client, a Pune-based education-focused NGO with operations across four Indian states, had been running its donor management on a custom-built Access database since 2008. The system had been extended and patched over 15 years by a succession of contractors, none of whom had left documentation. By 2024, only one person in the organisation knew how to generate a report from it — and she was planning to retire in six months.
The data held in the system was irreplaceable: 22,000 donor records, 15 years of donation history, grant relationships, event attendance, and volunteer records. The database was the institutional memory of the organisation. Losing it, or being unable to access it after the key person left, would have been catastrophic for fundraising continuity.
The additional complication: the NGO's board received a quarterly impact report that had to cross-reference donor data with programme outcomes. This report took the programme director 18 hours to compile manually each quarter. As the organisation grew, this was becoming untenable.
The first challenge was getting the data out. The Access database had no export documentation and several linked tables with undocumented relationships. We reverse-engineered the schema over two weeks, mapping 34 tables to their intended purpose and identifying which represented current, historical, or archived data.
Of the 22,000 donor records, 14,200 were classified as active or recent (donated within 5 years). The remaining 7,800 were archived historical records that would be imported as read-only with a reduced field set. Donation history going back to 2009 was fully preserved — every transaction, every recurring gift, every lapsed donor.
Salesforce NPSP was configured around the NGO's specific fundraising model: individual donors, corporate donors, foundation grants, and government partnerships — each with distinct relationship types, gift entry processes, and reporting requirements. The NPSP Household model was adapted to handle the Indian family-giving patterns that the old system had tracked informally.
FormAssembly was integrated for online donation intake — replacing a static bank transfer form on the website with a dynamic donation form that automatically creates NPSP records, sends tax receipts, and triggers acknowledgement workflows. The first online donation arrived 48 hours after go-live.
The board report was redesigned as a set of Salesforce dashboards and a scheduled report pack that runs automatically on the first day of each quarter. We replicated every metric the board had been reviewing, surfaced new metrics they'd wanted but couldn't measure, and connected programme outcome data via a simple custom object.
The report that took 18 hours to compile now takes 2 hours — 1.5 hours of which is the programme director reviewing and annotating the auto-generated pack rather than building it from scratch. That 16-hour saving recurs every quarter, indefinitely.
Three team members were trained as internal Salesforce administrators — deliberately, so the organisation would never again be dependent on a single person for system knowledge. Training was structured around their actual job functions, not generic Salesforce modules. Each admin received a custom playbook covering the specific processes they'd own.
The retiring database administrator left on schedule six months after go-live. By then, three trained internal admins were operating the system independently, the board report had run automatically for two quarters, and the NGO had processed its first online donation campaign — raising 40% more in its annual appeal than the previous year, partly attributed to improved donor segmentation.
The stakes in this project were different from a commercial engagement. Losing or corrupting the donor data wasn't a business problem — it was an existential threat to relationships that had been built over 15 years. Every migration decision was made with that weight in mind.
The project also reinforced something we believe strongly: the best outcome of a technology implementation is an organisation that can run it independently. Handing over to three capable internal admins, with documentation they actually helped write, was the most important deliverable of the 14 weeks.
"We were terrified of losing what was in that old database. We didn't lose a single record — and now we can actually use the data rather than just hoarding it."
— Executive Director, NGO Client