Recurring Gifts

How monthly, quarterly and yearly gifts are charged and recorded in Salesforce.

The short version

Salesforce keeps the schedule. Stripe holds the cards and moves the money. Every morning at 5:00 AM, Salesforce finds the recurring gifts due that day and asks Stripe to charge each donor's saved card. The donor does not need to do anything.

Where it lives

Each morning

  1. At 5:00 AM the job picks up every Active commitment whose Next Payment Date is today or earlier.
  2. It charges the saved card in Stripe.
  3. If the charge goes through: a gift (engagement) is recorded with the fund, appeal and source code from the commitment, and the Next Payment Date moves forward one month, quarter or year.
  4. If the card is declined: the commitment's status changes to Failing, the decline reason is saved in Last Charge Error, and it appears on the Did Not Go Through list. It is not tried again on its own.
  5. A summary email goes to Laurie and Bridget listing what was charged and what did not go through.

Thank-you letters for recurring charges are set to Don't Send for now, so monthly donors do not get a letter every month.

What it looks like in Stripe

DescriptionADK recurring gift RC-0001 (the commitment's record number)
CustomerThe donor's existing Stripe customer (the one their card moved over with)
Metadatasource = ADK Recurring Gift and donor = <donor name>
Donor's card statementADK's usual Stripe descriptor, the same as any other ADK charge

To see only recurring charges in Stripe, filter payments on metadata source = ADK Recurring Gift.

Common tasks

WhenWhat to do
A donor's card was declined and they have given a new cardUpdate the card in Stripe, then set the commitment's status back to Active. It charges at the next 5:00 AM run for the payment that was missed.
A donor asks to skip a few monthsSet status to Paused. Paused commitments are never charged. Set it back to Active when they are ready, and adjust the Next Payment Date if needed.
A donor cancelsSet status to Cancelled and fill in Cancelled Date and Cancellation Reason.
Change an amount or the day of the monthEdit Installment Amount, or Collection Day and Next Payment Date. The next charge uses the new values.

Statuses

StatusCharged?Meaning
ActiveYesCharges on its Next Payment Date.
PausedNoOn hold at the donor's request.
FailingNoLast charge was declined; waiting on staff.
CancelledNoThe donor stopped the gift.
ClosedNoReached its end date.
DraftNoNot set up yet.

First run

The first charges run Monday, November 2: 30 gifts totalling $828.75. The next group is November 16 (21 gifts). The 56 commitments moved over from Global Payments are marked Reviewed. Anything added after them starts unreviewed.