API
⌘K
My Developer Account

RecurringDonation

A RecurringDonation is represents a Donation that repeats on a set schedule (weekly, monthly, etc.)

Data for RecurringDonations is read-only; they can not be created or edited through the API.

Example Request

curl https://api.planningcenteronline.com/giving/v2/recurring_donations

View in API Explorer →

Example Object

{
  "type": "RecurringDonation",
  "id": "1",
  "attributes": {
    "amount_cents": 1,
    "amount_currency": "USD",
    "created_at": "2000-01-01T12:00:00Z",
    "last_donation_received_at": "2000-01-01T12:00:00Z",
    "next_occurrence": "2000-01-01T12:00:00Z",
    "release_hold_at": "2000-01-01T12:00:00Z",
    "schedule": {
      "day_in_month": {
        "day": 1
      }
    },
    "status": "string",
    "updated_at": "2000-01-01T12:00:00Z"
  },
  "relationships": {
    "person": {
      "data": {
        "type": "Person",
        "id": "1"
      }
    }
  }
}

Attributes

Name Type Description
amount_cents integer The number of cents scheduled to be donated.
amount_currency currency_abbreviation The currency of `amount_cents`.
created_at date_time The date and time at which a recurring donation was created. Example: `2000-01-01T12:00:00Z`
id primary_key The unique identifier for a recurring donation.
last_donation_received_at date_time The date and time that the last donation was made for a recurring donation. Example: `2000-01-01T12:00:00Z`
next_occurrence date_time The date that the next donation will be made for a recurring donation. Example: `2000-01-01T12:00:00Z`
release_hold_at date_time The date when the hold on a recurring donation with a status of `temporary_hold` will be released.
schedule repeatable_schedule JSON representation of the billing schedule. See the repeatable Ruby gem for more details on the structure and meaning: https://github.com/molawson/repeatable#time-expressions
status string Determines if a recurring donation is active or on hold, and if on hold, the kind of hold that has been placed on it. Possible values: `active`, `indefinite_hold` or `temporary_hold`.
updated_at date_time The date and time at which a recurring donation was last updated. Example: `2000-01-01T12:00:00Z`

Relationships

Name Type Association Type Note
person Person to_one

Can Include

Parameter Value Description Assignable
include designations include associated designations

Pagination

Name Parameter Type Description
per_page per_page integer how many records to return per page (min=1, max=100, default=25)
offset offset integer get results from given offset

Endpoints

Listing

HTTP Method Endpoint
GET /giving/v2/recurring_donations

Reading

HTTP Method Endpoint
GET /giving/v2/recurring_donations/{id}

Associations

HTTP Method Endpoint Returns Details Filter By
GET https://api.planningcenteronline.com/giving/v2/recurring_donations/{recurring_donation_id}/payment_method PaymentMethod
GET https://api.planningcenteronline.com/giving/v2/recurring_donations/{recurring_donation_id}/designations RecurringDonationDesignation

Belongs To

HTTP Method Endpoint Association Details Filter By
GET https://api.planningcenteronline.com/giving/v2/recurring_donations Organization
GET https://api.planningcenteronline.com/giving/v2/people/{person_id}/payment_methods/{payment_method_id}/recurring_donations PaymentMethod
GET https://api.planningcenteronline.com/giving/v2/people/{person_id}/recurring_donations Person