Page MenuHomePhabricator

Deal with recurring donations stuck in 'In Progress' status
Closed, ResolvedPublic1 Estimated Story Points

Description

There are some recurring Ingenico donations stranded in 'In Progress' status since various dates in the past. This means the recurring processor died while it was trying to charge them, and they haven't been charged since then.

The number is somewhere between 5 and 20; more investigation is needed to determine the exact situations. We could just cancel 'em all, or email donors asking permission to restart for the ones that aren't too stale.

This query might be helpful too: https://phabricator.wikimedia.org/T144557#2673161

SELECT ccr.currency, ccr.amount, ccr.modified_date AS last_attempt_date, ccr2.start_date AS other_recurring_start, email
FROM civicrm_contribution_recur ccr
INNER JOIN civicrm_email e ON ccr.contact_id = e.contact_id
-- Check for other subscriptions from the same donor (TODO: join again on email)
LEFT JOIN civicrm_contribution_recur ccr2 ON e.contact_id = ccr2.contact_id
  AND ccr2.contribution_status_id <> 5
  AND ccr2.modified_date > ccr.modified_date
WHERE ccr.contribution_status_id=5
  AND ccr.modified_date > '2016';

Event Timeline

Ejegg added subscribers: MBeat33, Ppena, XenoRyet.

From the task closed as duplicate, specifically about the 4 most recent ones:

We need to get the donations themselves into Civi (see T172216) and then fix the recurring record's next scheduled donation date and take them out of 'In Process' status.

We DON'T want to update the next scheduled date before the donations are in there - that would stop all recurring GC processing.

The drush recurring-globalcollect-patch-history command still works! I just had to make a csv file with 4 rows and 2 columns, then feed that in. The 4 recent records look OK now.

note that civi increments the next sched date in some circumstances when a contribution is added - that code has changed slightly over time (& I think in next civi drop is slightly different than what we have in prod)

@MBeat33 What's your opinion on the older subscriptions? If we haven't charged somebody for a year, should we email them, or just close the recurring donation out as canceled? We're talking about fewer than 10 donors here.

If you can send me the transaction IDs we can send a quick 'hey your donation stopped due to a technical issue' email and invite them to donate again, @Ejegg Closing them out and inviting them to make a new one (after scanning to make sure they have not already) feels better than restarting stuck donations.

Ejegg triaged this task as Medium priority.Sep 13 2017, 8:14 PM
Ejegg set the point value for this task to 1.
Ejegg moved this task from Backlog to Done on the Fundraising Sprint RadioActivewear board.