donations

Get a Donation

Get a donation by its unique identifier.

get/v1/donations/{id}

Path parameters

idstring required

The unique identifier for the donation

Response

The donation was retrieved

idstring required

The unique identifier for the donation

external_idstring

A short human-readable identifier for the donation, useful for reconciling against your own systems. This is the same identifier shown on the donation in the Chariot dashboard.

payment_source_idstring required

The unique identifier for the payment source used to segregate deposits between various DAFs and platforms.

amount_grossinteger required

The original amount of the donation as intended by the donor in minor units of the currency. For dollars, for example, this is cents.

amount_netinteger required

The amount of the donation that the nonprofit will receive after DAF and/or platform processing fees are deducted in minor units of the currency. For dollars, for example, this is cents.

amount_feeinteger required

The amount of the fee that was deducted by the DAF or processing platform from the donation in minor units of the currency. For dollars, for example, this is cents.

individual_gift_amountinteger

The amount contributed by the individual donor in minor units of the currency.

currencystring required

The ISO 4217 code for the Transaction's currency.

purposestring required

A description of the donor's intent for the donation. This is useful to understand how the donor intended the donation to be used. For example, "Where needed most" or "General Operating Support" or "Specific Campaign".

notestring required

An informational note from the donor to the nonprofit about the donation. This may contain a message or other useful information that the donor wants to share with the nonprofit.

created_atstring date-time required

The date and time when the donation was created.

updated_atstring date-time

The date and time when the donation was last updated.

canceled_atstring date-time nullable

The date and time when the donation was canceled. A non-null value indicates the donation is tied to a canceled grant initiation and the gift was not received. Expressed in RFC 3339 format.

payment_status'INCOMING_TO_CHARIOT' | 'INCOMING_OUTSIDE_CHARIOT' | 'RECEIVED_IN_CHARIOT' | 'RECEIVED_OUTSIDE_CHARIOT' | 'CANCELED'

The payment status of the donation. Indicates the current state of the payment lifecycle.

Example response

{
  "id": "donation_01j8rs605a4gctmbm58d87mvsj",
  "external_id": "29247869",
  "payment_source_id": "payment_source_01kew60ks7w0epkvp2bgqxrt8z",
  "currency": "USD",
  "purpose": "Where needed most",
  "note": "Please dedicate in memory of grandma",
  "attribution": {
    "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"
      }
    }
  },
  "initiation": {
    "initiated_at": "2020-01-31T23:59:59Z",
    "channel": "INTEGRATED",
    "web_location_url": "https://www.example.com/donation/1234567890",
    "fundraising_platform_name": "Classy",
    "dafpay_form": "DAF day",
    "dafpay_tracking_id": "L9E182VBGP",
    "dafpay_metadata": {
      "funding_source": "DAF",
      "funding_source_id": "daf_01j8rs605a4gctmbm58d87mvsj",
      "funding_source_name": "DAF day"
    },
    "frequency": "ONE_TIME"
  },
  "settlement": {
    "deposit_id": "deposit_01kewb5vgsryzaajza5ynr06kz",
    "received_at": "2020-01-31T23:59:59Z",
    "settled_at": "2020-01-31T23:59:59Z"
  },
  "donor_advised_fund_grant": {
    "organization_name": "Daffy Charitable Fund",
    "donor_fund_name": "The Smith Family Fund",
    "sponsor_grant_id": "93492947-7894-4663-a944-f2469d0027ca"
  },
  "platform": {
    "name": "PayPal Grant Payments",
    "platform_grant_id": "93492947-7894-4663-a944-f2469d0027ca",
    "acceptance": {
      "accepted": true,
      "expires_at": "2020-01-31T23:59:59Z"
    }
  },
  "corporate_match": {
    "company_name": "Google",
    "program_name": "Google Matching Grant Program",
    "source": "Payroll"
  },
  "properties": [
    {
      "property_id": "prop_01j8rs605a4gctmbm58d87mvsj",
      "value": {
        "type": "text"
      }
    }
  ],
  "artifacts": [
    {
      "id": "artifact_01j8rs605a4gctmbm58d87mvsj",
      "name": "donation_receipt.pdf",
      "file_id": "file_01j8rs605a4gctmbm58d87mvsj",
      "created_at": "2020-01-31T23:59:59Z"
    }
  ],
  "created_at": "2020-01-31T23:59:59Z",
  "updated_at": "2020-01-31T23:59:59Z",
  "canceled_at": "2020-01-31T23:59:59Z",
  "payment_status": "INCOMING_TO_CHARIOT"
}

Changes

Changed in 10 of the 41 revisions of this API.251360

    • removed the optional property lockbox_id from the response with the 200 status

      response-optional-property-removed

    • removed the optional property mail_item_id from the response with the 200 status

      response-optional-property-removed

    • added the optional property external_id to the response with the 200 status

      response-optional-property-added

    • added the optional property lockbox_id to the response with the 200 status

      response-optional-property-added

    • added the optional property mail_item_id to the response with the 200 status

      response-optional-property-added

  • b87f7738d3361025See the full diff
    • removed the required property code from the response with the 400 status

      response-required-property-removed

    • removed the required property code from the response with the 401 status

      response-required-property-removed

    • removed the required property code from the response with the 403 status

      response-required-property-removed

    • removed the required property code from the response with the 404 status

      response-required-property-removed

    • removed the required property code from the response with the 500 status

      response-required-property-removed

    • removed the required property message from the response with the 400 status

      response-required-property-removed

    • removed the required property message from the response with the 401 status

      response-required-property-removed

    • removed the required property message from the response with the 403 status

      response-required-property-removed

    • removed the required property message from the response with the 404 status

      response-required-property-removed

    • removed the required property message from the response with the 500 status

      response-required-property-removed

    • media type application/json was changed to a more specific media type application/problem+json for the response status 400

      response-media-type-name-specialized

    • media type application/json was changed to a more specific media type application/problem+json for the response status 401

      response-media-type-name-specialized

    • media type application/json was changed to a more specific media type application/problem+json for the response status 403

      response-media-type-name-specialized

    • media type application/json was changed to a more specific media type application/problem+json for the response status 404

      response-media-type-name-specialized

    • media type application/json was changed to a more specific media type application/problem+json for the response status 500

      response-media-type-name-specialized

    • added the required property detail to the response with the 400 status

      response-required-property-added

    • added the required property detail to the response with the 401 status

      response-required-property-added

    • added the required property detail to the response with the 403 status

      response-required-property-added

    • added the required property detail to the response with the 404 status

      response-required-property-added

    • added the required property detail to the response with the 500 status

      response-required-property-added

    • added the required property status to the response with the 400 status

      response-required-property-added

    • added the required property status to the response with the 401 status

      response-required-property-added

    • added the required property status to the response with the 403 status

      response-required-property-added

    • added the required property status to the response with the 404 status

      response-required-property-added

    • added the required property status to the response with the 500 status

      response-required-property-added

    • added the required property title to the response with the 400 status

      response-required-property-added

    • added the required property title to the response with the 401 status

      response-required-property-added

    • added the required property title to the response with the 403 status

      response-required-property-added

    • added the required property title to the response with the 404 status

      response-required-property-added

    • added the required property title to the response with the 500 status

      response-required-property-added

    • added the required property type to the response with the 400 status

      response-required-property-added

    • added the required property type to the response with the 401 status

      response-required-property-added

    • added the required property type to the response with the 403 status

      response-required-property-added

    • added the required property type to the response with the 404 status

      response-required-property-added

    • added the required property type to the response with the 500 status

      response-required-property-added

    This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

    • removed the optional property details from the response with the 400 status

      response-optional-property-removed

    • removed the optional property details from the response with the 401 status

      response-optional-property-removed

    • removed the optional property details from the response with the 403 status

      response-optional-property-removed

    • removed the optional property details from the response with the 404 status

      response-optional-property-removed

    • removed the optional property details from the response with the 500 status

      response-optional-property-removed

    • added the optional property details/items/debug to the response with the 400 status

      response-optional-property-added

    • added the optional property details/items/debug to the response with the 401 status

      response-optional-property-added

    • added the optional property details/items/debug to the response with the 403 status

      response-optional-property-added

    • added the optional property details/items/debug to the response with the 404 status

      response-optional-property-added

    • added the optional property details/items/debug to the response with the 500 status

      response-optional-property-added

    • added the optional property details/items/type to the response with the 400 status

      response-optional-property-added

    • added the optional property details/items/type to the response with the 401 status

      response-optional-property-added

    • added the optional property details/items/type to the response with the 403 status

      response-optional-property-added

    • added the optional property details/items/type to the response with the 404 status

      response-optional-property-added

    • added the optional property details/items/type to the response with the 500 status

      response-optional-property-added

    • added the optional property details/items/value to the response with the 400 status

      response-optional-property-added

    • added the optional property details/items/value to the response with the 401 status

      response-optional-property-added

    • added the optional property details/items/value to the response with the 403 status

      response-optional-property-added

    • added the optional property details/items/value to the response with the 404 status

      response-optional-property-added

    • added the optional property details/items/value to the response with the 500 status

      response-optional-property-added

  • 90671617b825155See the full diff
    • the code response's property type/format changed from number/ to string/ for status 400

      response-property-type-changed

    • the code response's property type/format changed from number/ to string/ for status 401

      response-property-type-changed

    • the code response's property type/format changed from number/ to string/ for status 403

      response-property-type-changed

    • the code response's property type/format changed from number/ to string/ for status 404

      response-property-type-changed

    • the code response's property type/format changed from number/ to string/ for status 500

      response-property-type-changed

    • removed the required property error from the response with the 400 status

      response-required-property-removed

    • removed the required property error from the response with the 401 status

      response-required-property-removed

    • removed the required property error from the response with the 403 status

      response-required-property-removed

    • removed the required property error from the response with the 404 status

      response-required-property-removed

    • removed the required property error from the response with the 500 status

      response-required-property-removed

    • removed the required property timestamp from the response with the 400 status

      response-required-property-removed

    • removed the required property timestamp from the response with the 401 status

      response-required-property-removed

    • removed the required property timestamp from the response with the 403 status

      response-required-property-removed

    • removed the required property timestamp from the response with the 404 status

      response-required-property-removed

    • removed the required property timestamp from the response with the 500 status

      response-required-property-removed

    • added the optional property details to the response with the 400 status

      response-optional-property-added

    • added the optional property details to the response with the 401 status

      response-optional-property-added

    • added the optional property details to the response with the 403 status

      response-optional-property-added

    • added the optional property details to the response with the 404 status

      response-optional-property-added

    • added the optional property details to the response with the 500 status

      response-optional-property-added

    This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

    • removed the UNSPECIFIED enum value from the payment_status response property for the response status 200

      response-property-enum-value-removed

  • 60a0df78dd7a66See the full diff
    • added the new CANCELED enum value to the payment_status response property for the response status 200

      response-property-enum-value-added

    • added the new INCOMING_OUTSIDE_CHARIOT enum value to the payment_status response property for the response status 200

      response-property-enum-value-added

    • added the new INCOMING_TO_CHARIOT enum value to the payment_status response property for the response status 200

      response-property-enum-value-added

    • added the new RECEIVED_IN_CHARIOT enum value to the payment_status response property for the response status 200

      response-property-enum-value-added

    • added the new RECEIVED_OUTSIDE_CHARIOT enum value to the payment_status response property for the response status 200

      response-property-enum-value-added

    • added the new UNSPECIFIED enum value to the payment_status response property for the response status 200

      response-property-enum-value-added

    • removed the PAYMENT_STATUS_CANCELED enum value from the payment_status response property for the response status 200

      response-property-enum-value-removed

    • removed the PAYMENT_STATUS_INCOMING_OUTSIDE_CHARIOT enum value from the payment_status response property for the response status 200

      response-property-enum-value-removed

    • removed the PAYMENT_STATUS_INCOMING_TO_CHARIOT enum value from the payment_status response property for the response status 200

      response-property-enum-value-removed

    • removed the PAYMENT_STATUS_RECEIVED_IN_CHARIOT enum value from the payment_status response property for the response status 200

      response-property-enum-value-removed

    • removed the PAYMENT_STATUS_RECEIVED_OUTSIDE_CHARIOT enum value from the payment_status response property for the response status 200

      response-property-enum-value-removed

    • removed the PAYMENT_STATUS_UNSPECIFIED enum value from the payment_status response property for the response status 200

      response-property-enum-value-removed

    • added the optional property payment_status to the response with the 200 status

      response-optional-property-added

    • added the optional property canceled_at to the response with the 200 status

      response-optional-property-added

    • added the optional property individual_gift_amount to the response with the 200 status

      response-optional-property-added

    • added the optional property initiation/allOf[DonationInitiation]/channel to the response with the 200 status

      response-optional-property-added

    • added the optional property initiation/allOf[DonationInitiation]/dafpay_form to the response with the 200 status

      response-optional-property-added