Skip to navigation

Update a Donation

Update fields on an existing donation. Fields set in the request body are written (including empty strings and zeros). Fields listed in clear_fields are nulled — only nullable columns are clearable. Fields that are neither set nor listed are left unchanged. A field path may not be cleared and carry a value in the same request.

Authentication

AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Path parameters

idstringRequired
The unique identifier for the donation

Request

The request to update fields on an existing donation.

  • Fields set in the body are written, including empty strings and zeros.
  • Objects such as recipient or attribution.primary_donor update key by key. Only the fields you set inside the object change.
  • metadata replaces the stored map as a whole.
  • Fields listed in clear_fields are nulled. Only nullable columns may be cleared; a path that resolves to a NOT NULL column is rejected.
  • Fields that are neither set nor listed are left unchanged.

A field path may not be cleared and carry a value in the same request.

clear_fieldslist of stringsOptional

Field paths to null (dot notation, e.g. note, attribution.primary_donor.email). Unknown paths are rejected. So are amount_gross, amount_fee, currency, and effective_date, which have no empty representation.

source_idstringOptional

The identifier of the Source that sent this donation. The source must already exist.

external_idstringOptional
The identifier for the donation as reported by its source, such as the transaction ID. Use it to reconcile the donation in Chariot against the original source donation record.
amount_grosslongOptional

The total amount of the donation in minor units of the currency. Must be non-negative. For dollars, for example, this is cents.

amount_feelongOptional

The amount of the fee that was deducted from the donation in minor units of the currency. amount_net is always amount_gross minus amount_fee, so you can’t set it.

individual_gift_amountlongOptional
The portion of the gross amount contributed directly by the donor.
currencystringOptional

The ISO 4217 code for every amount on the donation. Can’t be cleared.

exchange_rateobjectOptional

The exchange rate used to convert the donation into target_currency, when the source reported one.

donation_typeenumOptional

The kind of gift.

  • individual: a gift from an individual donor.
  • match: a company’s match of an employee’s gift.
  • daf: a grant from a donor-advised fund.
  • other: any other kind of gift.
Allowed values:
frequencyenumOptional
Whether the donor set the gift to repeat.
Allowed values:
effective_datedatetimeOptional
The date of the donation, as reported by the source. Expressed in RFC 3339 format.
grantorobjectOptional
The entity responsible for issuing a grant or payment to a recipient.
external_distribution_idstringOptional
The platform's identifier for the payout that carried this donation. Platforms such as Benevity batch many donations into one payout, so several donations can share the same value.
recipientobjectOptional
The nonprofit the donation was made out to, as named by the source.
purposestringOptional
A description of the donor's intent for the donation. For example, "Where needed most" or "General Operating Support" or "Specific Campaign".
notestringOptional
An informational note from the donor to the nonprofit about the donation.
attributionobjectOptional
How the donation is attributed to a donor.
initiationobjectOptional
How and where the donor initiated the gift.
donor_advised_fund_grantobjectOptional
Details specific to Donor Advised Fund donations. Leave it out when the donation did not come from a DAF provider.
corporate_matchobjectOptional
Details specific to matched donations. Leave it out when no corporate sponsor matched the donation.
metadatamap from strings to anyOptional

Arbitrary key-value pairs recorded against the donation. Setting this field replaces the stored map. Naming metadata in clear_fields removes it.

artifact_file_idslist of stringsOptional
Files to attach to the donation, as File identifiers your organization owns. Existing artifacts stay attached. Repeating an identifier has no effect.

Response

The donation was updated
idstringRead-only
The unique identifier for the donation in Chariot's system.
amount_grosslong
The total amount of the donation in minor units of the currency. For dollars, for example, this is cents.
amount_netlong
The amount of the donation that the nonprofit will receive after processing fees are deducted in minor units of the currency. For dollars, for example, this is cents.
amount_feelong
The amount of the fee that was deducted from the donation in minor units of the currency. For dollars, for example, this is cents.
currencystring

The ISO 4217 code for every amount on the donation. Defaults to USD unless the source reports another currency.

created_atdatetimeRead-only
The date and time the donation record was created in Chariot.
external_idstringOptional
The identifier for the donation as reported by its source, such as the transaction ID. Use it to reconcile the donation in Chariot against the original source donation record.
source_idstringOptional

The identifier of the Source that sent this donation.

individual_gift_amountlong or nullOptional
The portion of the gross amount contributed directly by the donor.
exchange_rateobject or nullOptional

The exchange rate used to convert the donation into target_currency. Null when currency is already the target currency, or when no rate was reported.

donation_typeenum or nullOptional

The kind of gift.

  • individual: a gift from an individual donor.
  • match: a company’s match of an employee’s gift.
  • daf: a grant from a donor-advised fund.
  • other: any other kind of gift.
Allowed values:
frequencyenum or nullOptional
Whether the donor set the gift to repeat. Null when the source didn't report it.
Allowed values:
effective_datedatetimeOptional
The date of the donation, as reported by the source. Expressed in RFC 3339 format.
grantorobjectOptional
The entity responsible for issuing a grant or payment to a recipient.
created_byobjectOptional
Who created the donation.
external_distribution_idstringOptional
The platform's identifier for the payout that carried this donation. Platforms such as Benevity batch many donations into one payout, so several donations can share the same value.
recipientobjectOptional
The nonprofit the donation was made out to, as named by the source.
purposestringOptional
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".
notestringOptional
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.
attributionobjectOptional
How the donation is attributed to a donor.
initiationobjectOptional
How and where the donor initiated the gift.
settlementobjectOptional
How the funds are moving from the donor to the recipient.
donor_advised_fund_grantobjectOptional
Details specific to Donor Advised Fund donations. Empty when the donation did not come from a DAF provider.
metadatamap from strings to anyOptional

Arbitrary key-value pairs recorded against the donation. Use this for reconciliation data, campaign identifiers, or other integration data.

corporate_matchobjectOptional
Details specific to matched donations. Empty when no corporate sponsor matched the donation.
propertieslist of objectsOptional
A list of custom properties for the donation.
artifactslist of objectsOptional

A list of source artifacts that were used to create the donation. These can include the raw source files (PDFs, CSVs, etc.) that were received from upstream platforms or systems.

linked_objectslist of objectsOptionalRead-only

Other objects connected to this donation, such as the Grant or Mail Item that produced it. Each entry names the object’s type and identifier; fetch the object itself for its details.

updated_atdatetimeOptionalRead-only
The date and time when the donation was last updated.
canceled_atdatetime or nullOptionalRead-only
When the donation was canceled. If set, the donor's payment did not complete and the recipient did not receive the gift. Expressed in RFC 3339 format.
payment_statusenumOptionalRead-only
The payment status of the donation. Indicates the current state of the payment lifecycle.
Allowed values:
payment_source_idstringOptionalDeprecated

Deprecated. Use source_id.

platformobjectOptionalDeprecated
Deprecated. Information about the platform that facilitated the donation. Empty when no platform facilitated the donation.

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
500
Internal Server Error