> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.givechariot.com/v2026-04-01/guides/dafpay/integrating-dafpay/set-up/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.givechariot.com/_mcp/server. # Set Up ### Overview We're going to utilize Chariot's APIs to generate a CID (Connect Identifier) for a nonprofit organization. This CID is a crucial element needed to activate the DAFpay button. To create a CID for an organization, we first need to [Search Chariot's Database](/api/organizations/search) to find the organization's ID using their Name or EIN (Employer Identification Number, Tax ID). Following that, we proceed to create a Connect with the organization's ID. > **Sandbox Testing** > > You can use any valid EIN for testing in sandbox (i.e., American Red Cross 53-0196605). ### Search Organization The [Search Organization](/api/organizations/search) endpoint enables you to search for an organization by name or EIN within Chariot's verified nonprofit database. If the organization you are looking for is not found, please contact [support@givechariot.com](mailto:support@givechariot.com) to request the organization be added. Below are a few examples of different implementations. Modify the `user` object, `ein` field, and access token from step 1 before making the request. **`cURL`** ```curl cURL curl --request GET \ --url https://sandboxapi.givechariot.com/v1/organizations/search?ein=123456789 \ --header 'accept: application/json' \ --header 'authorization: Bearer API_KEY' \ ``` **`JavaScript`** ```javascript JavaScript const options = { method: 'GET', headers: { accept: 'application/json', authorization: 'Bearer ' } }; fetch('https://sandboxapi.givechariot.com/v1/organizations/search?ein=123456789', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err)); ``` Bravo! You have just searched for a nonprofit organization in Chariot's system. Now let's create a Connect for this organization. ### Create Connect > **Nonprofit Contact Requirement** > > This route requires a contact email address for the organization. Ensure the email address provided is unique to the nonprofit and not a generic support email (e.g., [support@platform.com](mailto:support@platform.com)). This email will be used for important messaging related to the organization's Chariot account and can be updated later. The [Create Connect](/api/connects/create) endpoint creates a Connect record or retrieves it if a Connect already exists for the organization in Chariot's system. To create a Connect, the organization's `id` must be provided, which you should have from the previous step! Below are a few examples of different implementations. Modify the `ORGANIZATION_ID` query parameter with the organization's `id`. Don't forget to add the api key! **`cURL`** ```curl cURL curl --request POST \ --url 'https://sandboxapi.givechariot.com/v1/connects' \ --header 'accept: application/json' \ --header 'authorization: Bearer API_KEY' \ --header 'content-type: application/json' \ -d '{ "organization_id": "ORGANIZATION_ID", "contact": { "email": "me@example.com" } }' ``` **`JavaScript`** ```javascript JavaScript const options = { method: 'POST', headers: { accept: 'application/json', 'content-type': 'application/json', authorization: 'Bearer API_KEY' }, body: JSON.stringify({ organization_id: 'ORGANIZATION_ID', contact: { email: 'me@example.com', } }) }; fetch('https://sandboxapi.givechariot.com/v1/connects', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err)); ``` Amazing! You can now start integrating DAFpay to build a front end and start receiving grants for this organization. ### Create a Launch Plan For fundraising platforms with multiple organizations, the [Create Connect](/api/connects/create) needs to be called once for each organization on your platform. As part of development, you should determine when and how these calls will be made for each organization.