Skip to content

Add Salesforce NPSP integration - #547

Open
shivamlalakiya wants to merge 2 commits into
deepset-ai:mainfrom
shivamlalakiya:add-salesforce-npsp
Open

Add Salesforce NPSP integration#547
shivamlalakiya wants to merge 2 commits into
deepset-ai:mainfrom
shivamlalakiya:add-salesforce-npsp

Conversation

@shivamlalakiya

Copy link
Copy Markdown

This PR adds a listing for haystack-salesforce-npsp, a Haystack 2.x Data Ingestion component for Salesforce Nonprofit Success Pack (NPSP) donor data.

The SalesforceNPSPFetcher component ingests donor Contact records, Opportunity gift histories, and NPSP engagement metrics as Haystack Documents for RAG pipelines. It is NPSP-aware (understands npo02__/npsp__ fields) and emits human-readable donor profiles rather than raw JSON.

Adds a single file: integrations/salesforce-npsp.md.

@shivamlalakiya
shivamlalakiya requested a review from a team as a code owner July 19, 2026 17:32
@vercel

vercel Bot commented Jul 19, 2026

Copy link
Copy Markdown

@shivamlalakiya is attempting to deploy a commit to the deepset Team on Vercel.

A member of the Team first needs to authorize it.

@shivamlalakiya

Copy link
Copy Markdown
Author

The red Vercel check is a preview deployment that requires authorization from the deepset team for fork PRs (the check links to Vercel's git-authorize page rather than a build), so it can't be resolved from my side. Nothing in the PR content is failing.

@kacperlukawski kacperlukawski left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @shivamlalakiya That's an interesting tool, thanks for contributing! I made a few comments, and will also run Copilot review soon.

Comment on lines +46 to +50
```bash
export SF_USERNAME="you@yourorg.org"
export SF_PASSWORD="your_password"
export SF_TOKEN="your_security_token"
```

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is providing a username and password a recommended auth schema for Salesforce? It's pretty unusual.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fair question — the current implementation (npsp_core/client.py) only supports the standard SOAP username-password-security-token flow via simple-salesforce, which is common for trusted server-side/backend ingestion jobs. Added a note in the doc to clarify this and flag OAuth 2.0 as a possible future addition.

Comment on lines +1 to +15
---
layout: integration
name: Salesforce NPSP
description: Ingest Salesforce Nonprofit Success Pack (NPSP) donor records, gift histories, and engagement metrics as Documents for RAG.
authors:
- name: Shivam Ashokbhai Lalakiya
socials:
github: shivamlalakiya
pypi: https://pypi.org/project/haystack-salesforce-npsp
repo: https://github.com/PhilanthroPy-Project/salesforce-npsp-integrations
type: Data Ingestion
report_issue: https://github.com/PhilanthroPy-Project/salesforce-npsp-integrations/issues
version: Haystack 2.0
toc: true
---

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we also add a logo?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added a logo field pointing at logos/salesforce-npsp.png (reusing the PhilanthroPy project mark as a stand-in — happy to swap for a dedicated integration logo later).

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

  • Purpose: Add an integration listing page for haystack-salesforce-npsp, documenting how to ingest Salesforce NPSP donor data into Haystack 2.x pipelines as Documents.
  • Changes:
    • Add a new integration page with front matter (name, description, author, PyPI/repo links, issue tracker, type, version).
    • Document installation via pip, required Salesforce env vars, and example usage (standalone + indexing pipeline).

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Adds a logo tile and a short note explaining the username-password-
security-token flow is the standard simple-salesforce SOAP auth,
per review feedback from @kacperlukawski.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants