Integration · Technical Guide

Salesforce Nonprofit Cloud Integration: A Technical Guide to the Gratefully AI Layer

By Muddsar Jamil, founder of Gratefully. Twenty years building enterprise software in Silicon Valley. Twenty years in nonprofits.

Gratefully connects to Salesforce Nonprofit Cloud, Agentforce Nonprofit, and NPSP through standard REST and Bulk APIs. It is read-only by default, needs no managed package or schema changes, and syncs in under an hour. Your Salesforce stays the system of record; Gratefully adds a donor intelligence layer that also reads your emails, notes, and documents.

The 2026 context: three product names, two data models

If you run Salesforce at a nonprofit in 2026, you are on one of two generations of the product, and the difference matters more than it ever has.

Agentforce Nonprofit is the current generation. Salesforce announced the rename from Nonprofit Cloud on December 2, 2025, attaching prebuilt AI agents for prospect research, participant management, volunteer coverage, and donor support. The Power of Us program changed at the same time: since December 2025, new applicants receive 10 free Agentforce Nonprofit CRM licenses instead of the 10 free NPSP licenses the sector relied on for over a decade.

NPSP is the previous generation, and Salesforce has stopped building new capability on it. The clearest dated public signal came in December 2025, when the Power of Us Program removed the ten free NPSP licences it had offered new applicants for years and began issuing ten Agentforce Nonprofit licences instead. Organisations already running NPSP keep their licences and their support, and Salesforce has published no end-of-support date, so nothing is breaking. New investment is simply going somewhere else. Salesforce announced the end of innovation for NPSP in 2024. It remains supported, with no announced end-of-life date, but it has not received a new feature in roughly three years, and none of the new AI agents run on it. Moving off it is not an upgrade: Salesforce implementation partners describe the NPSP to Agentforce Nonprofit transition as a full re-implementation with a different data model, typically taking months.

That leaves thousands of nonprofits in the same spot: a stable, paid-for NPSP org that works, a migration project nobody has budgeted, and AI capabilities gated behind the platform they have not moved to.

This is exactly the gap an integration layer fills. Gratefully connects to both generations, NPSP included, through the same standard Salesforce APIs. You do not need to migrate, buy Data Cloud, or license agents to get cited, plain-English answers from the donor data you already have. Weighing the layer against Salesforce's own AI? That comparison lives on its own page: Gratefully vs Salesforce Nonprofit.

"The NPSP orgs I talk to are not unhappy with Salesforce as a system of record. It holds the gifts, the households, the campaign history, and it holds them well. What they cannot do is get intelligence back out of it. The answer to a simple question like 'who is slipping away and why' is technically in there, but it takes a report request, an admin, and a week. That gap is what we built the layer for."

Muddsar Jamil, founder of Gratefully

What Salesforce calls it in 2026, and why the names keep changing

Three names get used interchangeably in this conversation and they are not the same thing.

Agentforce Nonprofit is the current name for Salesforce's purpose-built nonprofit CRM. Salesforce's own product page now leads with the line "Agentforce Nonprofit (formerly Nonprofit Cloud)". Anything you read about Nonprofit Cloud dated before 2026 is describing this product.

Nonprofit Cloud is the previous name for that same product, launched in 2023. It is still in wide use, including on parts of Salesforce's own pricing page, which is why both names appear in this guide.

NPSP, the Nonprofit Success Pack, is the older managed package that installs on top of standard Sales Cloud. It is not an earlier version of Nonprofit Cloud. It is a different data model. NPSP records a donation as an Opportunity. Agentforce Nonprofit splits the same activity into Gift Transactions for one-off gifts and Gift Commitments for pledges and recurring giving.

That last difference is the one that decides everything else on this page. Adding AI to Salesforce is not one question. It is a different question depending on which of the two data models your gifts live in.

A layer on top of Salesforce, not a replacement

Gratefully connects to Salesforce Nonprofit Cloud (NPC), Agentforce Nonprofit, and the Nonprofit Success Pack (NPSP) via standard REST and Bulk APIs. Salesforce remains your system of record for constituents, gifts, recurring schedules, pledges, soft credits, and campaign hierarchies. Nothing about your org changes: no schema changes, no custom objects, no managed package.

What Gratefully adds is a knowledge graph that combines your structured Salesforce records with the unstructured material Salesforce reporting cannot see: gift officer notes, email threads, meeting recaps, board memos, and attached documents. That combined graph is what lets your team ask questions in plain English and get answers cited back to the specific record, note, or email they came from. More on how the graph works: nonprofit knowledge graphs.

What is a Salesforce intelligence layer?

An intelligence layer is software that connects to Salesforce through its APIs, reads your existing records without modifying them, and adds capabilities on top: natural-language querying, entity resolution across structured and unstructured sources, and cited answers. Salesforce stays the system of record; the layer is where the questions get answered.

Standard, Nonprofit Cloud, and NPSP objects we read

Gratefully consumes both the NPSP and the Nonprofit Cloud object models. No custom fields are required, but custom fields on the objects below are automatically picked up.

ObjectWhat it gives the knowledge graphAccess
Account (Household / Organization)
Pulled with RecordType, Household Naming, and primary contact relationships preserved.
Donor entity, household roll-up, organization profileRead
Contact
Email, mailing address, do-not-contact flags, salutation rules, and affiliation links.
Individual donor, board member, volunteer, prospectRead
Opportunity (Gift / Pledge / Recurring Donation)
Includes Stage, CloseDate, Amount, Campaign, and NPSP roll-up fields (npo02__).
Single gifts, soft credits, pledges, recurring schedulesRead
Campaign + CampaignMember
Used for RFM cohorting and natural-language queries like 'donors who gave to the gala but not the annual fund'.
Appeal performance, donor cohorts, segmentationRead
Task / Event / ContentNote
The unstructured layer most CRMs treat as second-class, and the primary source of institutional memory.
Logged calls, meetings, and free-text notesRead
EmailMessage / Activity
Body, ToAddress, FromAddress, and ThreadIdentifier indexed for retrieval and entity resolution.
Inbound and outbound donor correspondenceRead
ContentDocument / Attachment
Streamed through the parsing layer; PII detected at write time before being chunked into the knowledge graph.
PDFs, proposals, gift agreements, prospect briefsRead
User
Enables 'what was David working on?' continuity queries after a staff transition.
Map staff to interaction history for handoff continuityRead

Sync architecture: bulk backfill, then change data capture

The first sync is a bulk backfill through Salesforce Bulk API 2.0. For a typical mid-sized nonprofit, 50,000 to 500,000 constituents and one to five million activity records, the backfill completes in under an hour, with adaptive throttling so it does not crowd out your org's own API limits.

From there, the connector subscribes to Change Data Capture on the eight primary objects, so edits, new gifts, and new activities reach the knowledge graph in near real time. If CDC is not enabled in your org, the connector falls back to incremental polling on SystemModstamp, every five minutes by default. Both paths are idempotent and resumable: an interrupted sync picks up where it left off instead of starting over.

Before anything enters the searchable graph, records pass through PII detection, the same redaction pipeline described in our donor data redaction guide.

Salesforce NPC / NPSPBulk API + CDCPII redactionEntity resolutionKnowledge graph
Records pass through PII detection before they ever enter the searchable graph.

Authentication and OAuth scopes

Gratefully connects through the standard OAuth 2.0 web server flow against a dedicated Gratefully connected app. Your Salesforce admin installs the connected app, approves the requested scopes, and assigns a least-privilege integration user. The core scopes:

ScopeWhy
apiRead access to standard, Nonprofit Cloud, and NPSP objects through the REST and Bulk APIs. This scope also covers reading ContentDocument bodies.
refresh_token, offline_accessLets background sync continue without re-prompting a user.

That is the full list. No write scopes, no Analytics scopes, and no hybrid-app session scopes are requested.

Refresh tokens are stored encrypted at rest. Your admin can revoke them at any time from Salesforce Setup, and ingestion halts within one polling cycle.

Entity resolution across Salesforce and unstructured sources

The same donor shows up as a Salesforce Contact, a separate Account, a spouse on an Affiliation, an email signature, and a name in a meeting note. Gratefully's resolver ties those mentions together using deterministic keys first (Salesforce IDs, email, household roll-up) and probabilistic matching second (name normalization, address fuzzy matching, affiliation graph traversal). Every resolved mention carries a confidence score and a pointer back to the originating Salesforce record, so an answer can always show its work.

Security boundaries your IT team will want to verify

Read-only by default

The default connected app requests no write scopes. Gratefully cannot create, edit, or delete Salesforce records unless your admin explicitly grants write scope later.

Isolated per-org tenancy

Each nonprofit's data lands in a dedicated encrypted tenant. It never trains shared or third-party models, and that is enforced architecturally, not by policy.

Field-level filtering

Sensitive fields (SSN, payment tokens, protected custom fields) can be excluded at the connector level so they never leave Salesforce.

Full audit trail

Every retrieval, prompt, and generated answer is logged with the originating SObject IDs, exportable for board oversight or incident review.

For the full security model, see Nonprofit AI data security and the Safe AI Policy Pack.

What plain-English queries look like against your Salesforce data

"Which Major Gift Opportunities in Cultivation stage have not had a logged Task in 60 days?"

Resolves: Opportunity.StageName + Task.ActivityDate + OwnerId, answered with citations to each record.

"Summarize everything we know about the Harrison household before tomorrow's meeting."

Resolves: Account household roll-up + Contacts + Opportunities + ContentNotes + EmailMessage threads, synthesized with source links.

"What was David working on across all his Opportunities and Tasks before he left?"

Resolves: User to OwnerId across objects, plus 90 days of unstructured notes.

Why this matters after a staff transition

"Donors who gave to the 2024 Gala Campaign but not the 2025 Annual Fund, sorted by total giving."

Resolves: CampaignMember + Opportunity roll-ups + NPSP household totals.

Three ways to add AI to Salesforce at a nonprofit

Every nonprofit asking this question is in one of three positions, and the honest answer is different in each. Prices below were read on Salesforce's nonprofit pricing page on 3 September 2026 and are per user per month, billed annually.

1. You are already on Agentforce Nonprofit

This is the straightforward path. Salesforce's own agents are built for the data model you are already running.

At announcement, two agents were generally available: Prospect Research, which assembles background on a prospective donor, and Participant Management, which handles programme participant intake and updates. A Volunteer Capacity and Coverage agent and a Donor Support agent followed in beta.

Agentforce 1 for Sales and Agentforce 1 for Service are both listed at $135, against $60 for Nonprofit Cloud Enterprise and $100 for Unlimited. Data Cloud is included at the Agentforce tiers and sold separately below them. Every eligible nonprofit gets ten free licences through the Power of Us Program, and Agentforce capability sits above that free tier.

If this is you, use it. A layer like ours is additive here, not a substitute.

2. You are on NPSP and considering migrating first

This is where most Salesforce nonprofits actually sit, and where the advice gets least honest, because the people best placed to answer are usually the people who would run the migration.

Here is what is documented. Salesforce's nonprofit agents are built on the Nonprofit Cloud data model. That model is not NPSP's. Moving between them means remapping how every gift in your history is recorded, from Opportunities to Gift Transactions and Gift Commitments, then reviewing every customisation, report and integration built on the old shape. Implementation partners consistently describe it as a reimplementation rather than an upgrade, and they are right that it is not a switch you flip.

That may still be the correct decision. It is a decision about your CRM, though, on a multi-month timeline and a real budget. It is worth separating from the question of whether your team can get useful answers out of your donor data this quarter.

3. You want intelligence on the Salesforce you already run

The third option is to leave the data model alone and read it.

This is what Gratefully does. We connect read-only to whichever generation you are on, NPSP or Agentforce Nonprofit, and build the intelligence layer on top of your records as they are. No managed package, no schema changes, no migration as a prerequisite. The rest of this page is the technical detail of how that connection works.

The honest boundary: this is not a replacement for a CRM decision you need to make anyway. If NPSP is genuinely holding your organisation back, migrate. What a read-only layer does is stop the migration timeline from being the thing that decides when your fundraisers get answers out of their own data.

What you want to knowAgentforce NonprofitMigrate from NPSP firstRead-only layer
Works on the NPSP data modelNo, it is built for Nonprofit CloudOnly after the migration completesYes, both generations
Requires a data migrationNo, if you are already on itYes, a full reimplementationNo
Requires a managed packageNoNoNo
Time to first useful answerDaysMonthsUnder an hour
Changes your system of recordNoYesNo

Do you need Data Cloud or Agentforce to do this?

No. This is the question the 2026 rename created, so it deserves a direct answer.

Salesforce's path to AI on nonprofit data runs through its own stack: Agentforce Nonprofit as the platform, Einstein and agent licensing on top, and Data Cloud where unification across sources is needed. That stack is real, and if you are already migrating to Agentforce Nonprofit, the built-in agents are worth evaluating; the side-by-side comparison covers capabilities and cost honestly, and our longer write-up on why Nonprofit Cloud still needs an intelligence layer explains where the two categories diverge.

But none of it is a prerequisite for an intelligence layer. Gratefully needs three things: API access via the connected app, a least-privilege integration user, and read scope on the objects you approve. Those exist on every Salesforce nonprofit org, including NPSP orgs that will never see an Agentforce agent. The knowledge graph, PII redaction, entity resolution, and cited answers all run on Gratefully's side of the API boundary.

The practical implication: an NPSP org can add modern donor AI this quarter without touching its migration timeline, and an org mid-migration can keep its intelligence layer constant while the CRM underneath it changes. The integration is the same either way.

Setup: under 60 minutes, no managed package

  1. Authorize. Your Salesforce admin authorizes the Gratefully connected app (read-only scopes) and assigns the integration user profile.
  2. Scope. Select in-scope objects and custom fields; exclude sensitive fields at the connector level.
  3. Backfill. The Bulk API 2.0 backfill runs in the background; you can start querying as the first batches land.
  4. Stay current. Change Data Capture (or fallback polling) keeps the graph current; audit logs and citations are available from the first answer.

Ready to connect Salesforce?

Add an intelligence layer to the Salesforce you already run, NPSP or Nonprofit Cloud, in an afternoon

Salesforce remains the system of record. Gratefully adds the cited, plain-English donor intelligence layer that surfaces everything your team knows, including the parts that never fit in a Salesforce field.

Related reading: Nonprofit Knowledge Graphs whitepaper · AI Data Security guide · Institutional memory loss

Frequently asked questions

Does Gratefully work with NPSP or only the new Nonprofit Cloud?

Both. Gratefully connects to NPSP, Nonprofit Cloud, and Agentforce Nonprofit through the same standard REST and Bulk APIs. NPSP orgs get the full intelligence layer even though Salesforce's own new AI agents do not run on NPSP.

Is Agentforce Nonprofit the same thing as Nonprofit Cloud?

Yes. Salesforce renamed Nonprofit Cloud to Agentforce Nonprofit on December 2, 2025 and added prebuilt AI agents. Both names still appear on Salesforce's own pages, but it is the same underlying platform, so guidance written about Nonprofit Cloud still applies.

Do I need Salesforce Data Cloud for Gratefully to work?

No. Gratefully builds its knowledge graph on its own infrastructure from data read through the standard APIs. No Data Cloud, Einstein, or agent licensing is required.

Does the integration require a managed package or schema changes?

No. Gratefully uses a connected app with OAuth 2.0 and reads through the REST and Bulk APIs. Nothing is installed in your org and no objects or fields are added.

Can Gratefully write to or change our Salesforce records?

Not by default. The connected app requests read-only scopes. Write access exists only if your admin explicitly grants write scope later.

How long does the initial sync take?

For a typical mid-sized nonprofit (50,000 to 500,000 constituents), the Bulk API 2.0 backfill completes in under an hour, and querying can begin as the first batches land.

What happens if we revoke access?

Your Salesforce admin can revoke the refresh token from Salesforce Setup at any time. Ingestion halts within one polling cycle.

Should we migrate from NPSP before adding an intelligence layer?

The two decisions are independent. The layer connects to both generations, so you can add it now and migrate on your own timeline, or keep it constant through a migration. NPSP remains supported with no announced end-of-life date, though it stopped receiving new features.

Can I add AI to Salesforce if we are still on NPSP?

Yes, but not with Salesforce's own nonprofit agents, which are built on the Nonprofit Cloud data model rather than NPSP's. A read-only intelligence layer reads NPSP objects as they are, so it works without a migration. Migrating is a separate CRM decision on a much longer timeline.

Is NPSP being retired?

No. Salesforce has published no end-of-support date and existing organisations keep their licences and support. New capability is going elsewhere though. In December 2025 the Power of Us Program stopped offering free NPSP licences to new applicants and began issuing Agentforce Nonprofit licences instead.

What does Agentforce Nonprofit cost?

On Salesforce's nonprofit pricing page, Nonprofit Cloud Enterprise is $60 per user per month and Unlimited is $100, both billed annually. Agentforce 1 for Sales and Agentforce 1 for Service are both $135, with Data Cloud included at those tiers. Every eligible nonprofit gets ten free licences through the Power of Us Program.

About the author

Muddsar Jamil is the founder of Gratefully, the AI workspace built for nonprofit fundraising. He spent 20 years as a software engineer in Silicon Valley at Adobe, Workday, and SugarCRM, and nearly as long volunteering and working with nonprofits across the San Francisco Bay Area. Gratefully is where his two passions meet: technology that helps nonprofits raise more and build deeper donor relationships.

Share this guide