> 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/processing/how-it-works/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.givechariot.com/_mcp/server. # How It Works ## Nonprofit Onboarding #### 1. Create account Sign up for a Chariot Deposit Account to get started #### 2. Set up Payment Sources Configure Payment Sources (DAFs, platforms, lockbox) #### 3. Start receiving gifts Automatically process and reconcile donations from all sources in one unified system To get started with Chariot you'll need to register for an account. After you are approved and verified, you'll be given access to a dashboard where you will be able to manage and create `API Keys`, set up Payment Sources, and process all incoming donations. ## Understanding the Flow Chariot enables nonprofits to unify and streamline the processing of offline gifts from multiple sources including Donor-Advised Funds, fundraising platforms, and physical mail. Here's how it works: ### Payment Sources are Created Payment Sources represent segregated addresses for incoming deposits. These can be: * **Electronic bank addresses** (unique account + routing numbers) for ACH transfers * **Physical mailing addresses** (lockboxes) for processing checks and physical mail Each Payment Source acts as a gateway for money to flow into your Chariot Account while maintaining the source information needed for reconciliation. ### Request GET [https://api.givechariot.com/v1/payment\_sources](https://api.givechariot.com/v1/payment_sources) ```curl curl https://api.givechariot.com/v1/payment_sources \ -H "Authorization: Bearer " ``` ```typescript import { ChariotClient } from "@chariot-giving/typescript-sdk"; async function main() { const client = new ChariotClient({ token: "YOUR_TOKEN_HERE", }); await client.paymentSources.list({}); } main(); ``` ### Deposits are Received When a payment arrives at a Payment Source, Chariot creates a `Deposit` record. A Deposit represents a transfer of money that may contain one or more donations. Deposits can come through different payment rails: * **Account transfers** - Instant transfers from other Chariot accounts * **ACH transfers** - Electronic transfers from external sources * **Check deposits** - Physical checks processed through lockboxes ### Request GET [https://api.givechariot.com/v1/deposits](https://api.givechariot.com/v1/deposits) ```curl curl -G https://api.givechariot.com/v1/deposits \ -H "Authorization: Bearer " \ -d payment_source_id=payment_source_01j8rs605a4gctmbm58d87mvsj ``` ```typescript import { ChariotClient } from "@chariot-giving/typescript-sdk"; async function main() { const client = new ChariotClient({ token: "YOUR_TOKEN_HERE", }); await client.deposits.list({ paymentSourceId: "payment_source_01j8rs605a4gctmbm58d87mvsj", }); } main(); ``` ### Donations are Processed Chariot automatically attaches donation data to each deposit record, creating a complete audit trail. Each Deposit contains one or more `Donation` records that capture the complete gift information including: * Donor attribution (name, email, DAF account) * Gift amounts (gross, net, fees) * Purpose and notes * Corporate match information * Platform details * Custom properties for your CRM integration ### Request GET [https://api.givechariot.com/v1/donations](https://api.givechariot.com/v1/donations) ```curl curl -G https://api.givechariot.com/v1/donations \ -H "Authorization: Bearer " \ -d deposit_id=deposit_01j8rs605a4gctmbm58d87mvsj \ -d payment_source_id=payment_source_01j8rs605a4gctmbm58d87mvsj ``` ```typescript import { ChariotClient } from "@chariot-giving/typescript-sdk"; async function main() { const client = new ChariotClient({ token: "YOUR_TOKEN_HERE", }); await client.donations.list({ depositId: "deposit_01j8rs605a4gctmbm58d87mvsj", paymentSourceId: "payment_source_01j8rs605a4gctmbm58d87mvsj", }); } main(); ``` ## Key Benefits #### Unified Gift Processing Consolidate donations from DAF sponsors, portals, and lockboxes into a single stream #### Automatic Reconciliation Match donations to deposits automatically with complete donation details #### Rich Donor Data Capture donor attribution, corporate matches, platform fees, and more. #### Seamless Integration Export data to your existing CRM and accounting systems > **Info** > > Chariot is a financial technology company, not a bank. Chariot Accounts come with a Demand Deposit Account through our banking services partner, Column N.A., Member FDIC. Deposits in Chariot Accounts are eligible for FDIC insurance up to \$250,000 per depositor, for each insurable capacity in which the account is held.