v39

latestOpenAPI 3.0.0raw.githubusercontent.com2026-08-017897360.9 KB
disbursements

Create a disbursement

Create a disbursement to send money to an organization.

post/v1/disbursements

Headers

Idempotency-Keystring

A client-generated identifier for the request. Replays with the same key return 409 Conflict. The successfully created disbursement can later be located via GET /v1/disbursements?idempotency_key=....

We recommend supplying your own unique identifier for the disbursement in your system, so you can later look it up by an ID you already track.

Request body

organization_idstring required

The ID of the organization that will receive the disbursement.

program_idstring nullable

The identifier for the program that the disbursement is associated with. The program must have grant_disbursement_status enabled. If not provided, your grant_disbursement_status enabled program will be used. If your Chariot account has multiple grant_disbursement_status enabled programs, you must specify the program_id to use for the disbursement.

amountinteger required

The disbursement amount in USD cents. Must be a positive amount.

auto_fundboolean

Enable just-in-time (JIT) funding for this disbursement. When true, Chariot will automatically create an inbound transfer for the disbursement amount when it is approved, eliminating the need to pre-fund your account. This feature must be enabled on your account. Contact Chariot to enable JIT disbursements.

bypass_chariot_organization_verificationboolean

By default (false), the disbursement will remain in the awaiting_verification status until Chariot's compliance team has verified the nonprofit. If set to true, the disbursement will proceed through its normal lifecycle without waiting for Chariot to verify the organization. Only set this if you have independently verified the organization and do not want to wait for or rely on Chariot's verification. This field is only relevant when disbursing to an organization that was created via a verification request.

Example request

{
  "organization_id": "org_1234567890",
  "program_id": "program_01jpjenf5q6cawy43yxfcrxhct",
  "amount": 10000,
  "transactions": [
    {
      "amount": 10000,
      "internal_transaction_id": "GRANT-001",
      "fee_amount": 500,
      "purpose": "General operating support",
      "note": "Allocate to education",
      "recipient_name": "Clean Water Project",
      "donors": {
        "primary_donor": {
          "full_name": "John Doe",
          "first_name": "John",
          "last_name": "Doe",
          "email": "bob@me.com",
          "phone": "415-555-1212",
          "address": {
            "city": "New York",
            "country": "US",
            "line1": "123 Main St.",
            "postal_code": "12345",
            "state": "NY"
          }
        },
        "joint_donor": {
          "full_name": "John Doe",
          "first_name": "John",
          "last_name": "Doe",
          "email": "bob@me.com",
          "phone": "415-555-1212",
          "address": {
            "city": "New York",
            "country": "US",
            "line1": "123 Main St.",
            "postal_code": "12345",
            "state": "NY"
          }
        }
      },
      "daf_grant": {
        "fund_name": "Smith Family Fund"
      },
      "corporate_match": {
        "company_name": "Acme Corporation"
      }
    }
  ]
}

Response

The disbursement was created

idstring required

The unique identifier for the disbursement

organization_idstring required

The unique identifier for the organization that will receive the payment

program_idstring required

The unique identifier for the program that the disbursement belongs to

amountinteger required

The payment amount in USD cents. Must be a positive amount.

descriptionstring

A description for the disbursement

auto_fundboolean

Whether just-in-time (JIT) funding is enabled for this disbursement. When true, Chariot automatically creates an inbound transfer for the disbursement amount when it is approved.

created_atstring date-time

The date and time the disbursement was created

updated_atstring date-time

The date and time the disbursement was last updated

status'pending_approval' | 'canceled' | 'awaiting_verification' | 'rejected' | 'validating_organization' | 'awaiting_account_claim' | 'awaiting_balance' | 'submitted' | 'stopped' | 'completed' | 'failed'

The lifecycle status of the disbursement. Possible values include:

  • pending_approval: The disbursement is awaiting approval from the grantmaker
  • canceled: The disbursement was canceled by the grantmaker
  • awaiting_verification: The disbursement is awaiting verification from Chariot
  • rejected: The disbursement was rejected by Chariot before being submitted
  • validating_organization: Validating recipient organization's payment and contact information before submission.
  • awaiting_account_claim: The disbursement is awaiting account claim by the nonprofit or check delay expiration
  • awaiting_balance: The disbursement is awaiting sufficient grantmaker balance
  • submitted: The disbursement payment has been submitted to the payment network and is being processed
  • stopped: The disbursement payment was stopped after it was submitted
  • completed: The disbursement payment has been completed and funds have been received by the receiving organization
  • failed: The disbursement payment failed or the receiving organization did not receive the payment

To see a description of each status, see the "Disbursement Lifecycle" section of the Chariot documentation.

bypass_chariot_organization_verificationboolean

Whether the disbursement bypasses Chariot's organization verification. When true, the disbursement proceeds without waiting for Chariot to verify the organization.

idempotency_keystring

The Idempotency-Key header value the disbursement was created with. Only set for single-create disbursements; bulk-created disbursements omit this field.

Example response

{
  "id": "disbursement_01jpjen1s23s29kkmnjsb6fzga",
  "organization_id": "org_01jpjenf5q6cawy43yxfcrxhct",
  "organization": {
    "id": "org_01jpjenf5q6cawy43yxfcrxhct",
    "ein": "123456789",
    "name": "American Red Cross",
    "parent_organization_id": "org_01j8rs605a4gctmbm58d87mvsk",
    "physical_address": {
      "city": "New York",
      "country": "US",
      "line1": "123 Main St.",
      "postal_code": "12345",
      "state": "NY"
    },
    "classification": {
      "subsection_code": {
        "code": 1,
        "name": "UNCONDITIONAL",
        "description": "Unconditional Exemption"
      },
      "filing_requirement_code": {
        "code": 1,
        "name": "UNCONDITIONAL",
        "description": "Unconditional Exemption"
      },
      "foundation_code": {
        "code": 1,
        "name": "UNCONDITIONAL",
        "description": "Unconditional Exemption"
      },
      "affiliation_code": {
        "code": 1,
        "name": "UNCONDITIONAL",
        "description": "Unconditional Exemption"
      },
      "organization_code": {
        "code": 1,
        "name": "UNCONDITIONAL",
        "description": "Unconditional Exemption"
      },
      "exempt_status_code": {
        "code": 1,
        "name": "UNCONDITIONAL",
        "description": "Unconditional Exemption"
      },
      "deductibility_code": {
        "code": 1,
        "name": "UNCONDITIONAL",
        "description": "Unconditional Exemption"
      },
      "ntee_code": {
        "code": "A",
        "description": "Animal Welfare",
        "parent_code": "A",
        "parent_description": "Animal Welfare"
      },
      "naics_code": {
        "naics2": "31",
        "naics2_description": "Manufacturing",
        "naics4": "3112",
        "naics4_description": "Grain and Oilseed Milling",
        "naics6": "311221",
        "naics6_description": "Wet Corn Milling and Starch Manufacturing"
      }
    },
    "compliance": {
      "daf_eligible": true,
      "irs_pub_78": {
        "compliant": true,
        "last_found_at": "2020-01-31T23:00:00Z"
      },
      "ofac": {
        "compliant": true,
        "last_found_at": "2020-01-31T23:00:00Z"
      },
      "foundation_code": {
        "compliant": true,
        "last_found_at": "2020-01-31T23:00:00Z"
      },
      "california_attorney_general_registry": {
        "compliant": true,
        "last_found_at": "2020-01-31T23:00:00Z"
      },
      "california_franchise_tax_board": {
        "compliant": true,
        "last_found_at": "2020-01-31T23:00:00Z"
      }
    },
    "mission_statement": "To provide relief to those in need",
    "web": {
      "domain": "redcross.org"
    },
    "officers": [
      {
        "title": "Executive Director"
      }
    ],
    "incorporation": {
      "formation_year": "2005",
      "state": "AZ",
      "ruling_date": "2020-07"
    }
  },
  "program_id": "program_01jpjenf5q6cawy43yxfcrxhct",
  "amount": 10000,
  "description": "Annual grant to Acme Inc.",
  "created_at": "2020-01-31T23:00:00Z",
  "updated_at": "2020-01-31T23:00:00Z",
  "status": "pending_approval",
  "cancelation": {
    "canceled_by": "user@example.com",
    "canceled_at": "2020-01-31T23:00:00Z"
  },
  "approval": {
    "approved_by": "user@example.com",
    "approved_at": "2020-01-31T23:00:00Z"
  },
  "rejection": {
    "reason": "insufficient_funds",
    "rejected_at": "2020-01-31T23:00:00Z"
  },
  "verification": {
    "verified_at": "2020-01-31T23:00:00Z"
  },
  "stop": {
    "stopped_by": "user@example.com",
    "stopped_at": "2020-01-31T23:00:00Z"
  },
  "program_details": {
    "id": "program_01jpjenf5q6cawy43yxfcrxhct",
    "name": "Annual Grants"
  },
  "transfers": [
    {
      "account_transfer": {
        "transfer_id": "account_transfer_01j8rs605a4gctmbm58d87mvsj",
        "amount": 10000,
        "status": "complete",
        "created_at": "2020-01-31T23:00:00Z",
        "updated_at": "2020-01-31T23:00:00Z"
      },
      "ach_transfer": {
        "transfer_id": "ach_transfer_01j8rs605a4gctmbm58d87mvsj",
        "amount": 10000,
        "status": "initiated",
        "direction": "credit",
        "standard_entry_class_code": "corporate_credit_or_debit",
        "company_entry_description": "Disbursement to nonprofit",
        "trace_number": "012345678901234",
        "effective_date": "2020-01-31T23:00:00Z",
        "submitted_at": "2020-01-31T23:00:00Z",
        "settled_at": "2020-07-12 15:00:00.000",
        "rejected_at": "2020-07-12 15:00:00.000",
        "returned_at": "2020-07-12 15:00:00.000",
        "created_at": "2020-01-31T23:00:00Z",
        "updated_at": "2020-01-31T23:00:00Z"
      },
      "check_transfer": {
        "transfer_id": "check_transfer_01j8rs605a4gctmbm58d87mvsj",
        "amount": 10000,
        "status": "issued",
        "memo": "Disbursement to nonprofit",
        "note": "Please deposit promptly",
        "check_number": "123456789",
        "recipient_name": "Charity Good",
        "mailing_address": {
          "city": "New York",
          "country": "US",
          "line1": "123 Main St.",
          "line2": "Suite 2504",
          "postal_code": "12345",
          "state": "NY"
        },
        "bank_of_first_deposit_routing_number": "021000089",
        "postal_tracking_updates": [
          {
            "id": 1,
            "event_type": "in_transit",
            "created_at": "2020-01-31T23:00:00Z"
          }
        ],
        "submitted_at": "2020-01-31T23:00:00Z",
        "canceled_at": "2020-01-31T23:00:00Z",
        "stopped_at": "2020-01-31T23:00:00Z",
        "deposited_at": "2020-01-31T23:00:00Z",
        "created_at": "2020-01-31T23:00:00Z",
        "updated_at": "2020-01-31T23:00:00Z"
      },
      "real_time_payments_transfer": {
        "transfer_id": "real_time_payments_transfer_01j8rs605a4gctmbm58d87mvsj",
        "amount": 10000,
        "status": "complete",
        "creditor_name": "Acme Inc.",
        "remittance_information": "Real-Time Payment: Acme Inc.",
        "transaction_identification": "20260101101050001T1BTEST01234557890",
        "submitted_at": "2020-01-31T23:00:00Z",
        "acknowledged_at": "2020-01-31T23:00:05Z",
        "rejected_at": "2020-01-31T23:00:05Z",
        "created_at": "2020-01-31T23:00:00Z",
        "updated_at": "2020-01-31T23:00:00Z"
      }
    }
  ],
  "transactions": [
    {
      "id": "txn_1LaXpKGUcADgqoEMl0Cx0Ygg",
      "amount": 10000,
      "internal_transaction_id": "GRANT-001",
      "fee_amount": 500,
      "net_amount": 9500,
      "purpose": "General operating support",
      "note": "Allocate to education",
      "recipient_name": "Clean Water Project",
      "donors": {
        "primary_donor": {
          "full_name": "John Doe",
          "first_name": "John",
          "last_name": "Doe",
          "email": "bob@me.com",
          "phone": "415-555-1212",
          "address": {
            "city": "New York",
            "country": "US",
            "line1": "123 Main St.",
            "postal_code": "12345",
            "state": "NY"
          }
        },
        "joint_donor": {
          "full_name": "John Doe",
          "first_name": "John",
          "last_name": "Doe",
          "email": "bob@me.com",
          "phone": "415-555-1212",
          "address": {
            "city": "New York",
            "country": "US",
            "line1": "123 Main St.",
            "postal_code": "12345",
            "state": "NY"
          }
        }
      },
      "daf_grant": {
        "fund_name": "Smith Family Fund"
      },
      "corporate_match": {
        "company_name": "Acme Corporation"
      },
      "created_at": "2020-01-31T23:00:00Z",
      "updated_at": "2020-01-31T23:00:00Z"
    }
  ],
  "idempotency_key": "8e91b2f3-d7c4-4a59-9a91-72a40b1f2c3d"
}