Skip to main content
POST
Record a donation

Authorizations

Authorization
string
header
required

An API key from Settings, API keys. It starts with rc_live_.

Body

application/json
amount_cents
integer
required

The amount in whole cents: 5000 is $50.00. Not a decimal.

Required range: x >= 1
currency
string
default:usd

A currency code. Stored as you send it.

person_id
string

The donor, one of your people. Wins over donor_email when both are sent.

donor_email
string<email>

The donor's email, when you do not have their person ID. See the operation's description for what happens when it matches nobody.

donor_name
string

Used only when donor_email creates a new person: the first word becomes the first name and the rest the last name.

campaign_id
string

The campaign the gift was given to.

donation_type
enum<string>
default:one_time
Available options:
one_time,
recurring,
post_adoption_bump,
upsell
recurring_schedule
object

Details of a recurring gift's schedule, as keys and values of your choosing. Can only be set when the gift is recorded.

payment_gateway
enum<string> | null

How the money came.

Available options:
stripe,
paypal,
square,
zelle,
cashapp,
venmo,
other,
null
gateway_reference
object

Your payment processor's references for the gift, such as a charge ID. Gifts imported with a reference carry it as external_id, and a later import skips a row whose external_id is already here.

status
enum<string>
default:completed

Only completed gifts count towards a campaign, a donor's giving or the donors list.

Available options:
pending,
completed,
failed,
refunded
donated_at
string<date>

The day of the gift. Today unless you say. A timestamp is cut to its date.

custom_fields
object

Values for your own donation fields, by field key. Every field marked required must be here, and a key that is not one of your fields is refused.

Response

The donation, as it was recorded.

id
string
required
amount_cents
integer
required

The amount in whole cents: 5000 is $50.00.

currency
string
required
donation_type
enum<string>
required
Available options:
one_time,
recurring,
post_adoption_bump,
upsell
status
enum<string>
required

Only completed gifts count towards a campaign, a donor's giving or the donors list.

Available options:
pending,
completed,
failed,
refunded
donated_at
string
required

The day of the gift, YYYY-MM-DD.

created_at
string<date-time>
required

When it was recorded.

updated_at
string<date-time>
required
tenant_id
string

Your organization's ID.

person_id
string | null

The donor. Null for an anonymous gift.

campaign_id
string | null
recurring_schedule
object | null
payment_gateway
enum<string> | null

How the money came.

Available options:
stripe,
paypal,
square,
zelle,
cashapp,
venmo,
other,
null
gateway_reference
object
custom_fields
object