Page MenuHomePhabricator

Change recurring donation frequency from monthly to yearly in the civi UI
Closed, ResolvedPublic

Description

I was talking to @AMJohnson about this. It looks like the civi UI purposely doesn't let you edit a donation's frequency but would going from monthly -> yearly be a special case we would wan to add?

Event Timeline

Just to add a bit more context on the reason why we inquired is we are building a monthly recurring to annual recurring option for the portal so donors will be able to make this type of change themselves. As we do not currently have the ability for now our process is still to cancel and then ask them to restart.

AKanji-WMF subscribed.

Should be do-able via some customization of the UI

not strictly donor portal but adding it here for feature parity

@AMJohnson I think we can change this upstream in CiviCRM as I don't see why it shouldn't be possible for payment processors to allow this (and then we can set ours to do so where appropriate). I don't think we need to limit this to monthly to annual changes, it could be any frequency change.

Would we want the next scheduled date to be updated automatically in this case as well? E.g. if a monthly donor is changed to annual, we move their next scheduled date to one year from the last successful transaction date.

@Lars looping in @KHill-WMF as we have been discussing this logic for donor portal and want to ensure parity with there. I think Kevin has documented what we landed on in terms of logic for next transaction date.

@KHill-WMF Once you've defined the logic/flows we'll schedule

From @Eileenmcnaughton
this worked to make frequency_unit editable

image.png (177×1 px, 34 KB)

obv should be SmashPig processor not Dummy

Present last monthly recurring amount (minimum gift of $5/year), processed on the date of change, and again one year later

We discussed the logic for updating the next scheduled date which is, at least for now, we don't make any changes. This aligns with how it works for donor initiated changes in the portal.

So if the donor changes their monthly donation to annual, the next scheduled donation date remains in effect and the donation after that is a year later.
If the donor changes from annual to monthly, the next donation takes place as scheduled and monthly after that. We can update the next scheduled recurring date manually if the next donation should be sooner. @SHust FYI for DR visibility. If we find this is a frequent change and we want to implement some logic to set the next scheduled date to one month from the current date or the current date or something like that, we can do that in the future.

Change #1219627 had a related patch set uploaded (by Lars SG; author: Lars SG):

[wikimedia/fundraising/crm@master] Allow changing frequency unit for recurring donations in CiviCRM UI

https://gerrit.wikimedia.org/r/1219627

Change #1219627 merged by Eileen:

[wikimedia/fundraising/crm@master] Allow changing frequency unit for recurring donations in CiviCRM UI

https://gerrit.wikimedia.org/r/1219627

@SHust In addition to the above, if you have DR documentation about not changing paypal_ec recurring donations, you might want to update it as it is no longer possible to change paypal_ec recurring donations from the CiviCRM UI.

Hi @Lars!

Regarding your note above "if you have DR documentation about not changing paypal_ec recurring donations, you might want to update it as it is no longer possible to change paypal_ec recurring donations from the CiviCRM UI."

To confirm, we have never made any recurring updates for PayPal recurring donations in Civi including amount changes, email address changes, billing date changes, or pausing. Our related documentation here.

For any donor requested changes to Paypal recurring donations we have cancelled the donation in Civi and asked them to restart. I'm assuming we can still cancel paypal recurring donations from within Civi? (We used to have to do it at PayPal.) :)

Change #1219920 had a related patch set uploaded (by Lars SG; author: Lars SG):

[wikimedia/fundraising/crm@master] Also prevent editing of any recurring details for paypal payment processor

https://gerrit.wikimedia.org/r/1219920

@AMJohnson Yes, you can still cancel any recurring contribution in the CiviCRM UI. But now the recurring contributions that are allowed to be edited, can be edited in the UI and the ones that shouldn't be edited (paypal and paypal_ec payment processors), can't be edited in the UI (the edit link won't show up).

I'll add some comments in that document as to what we can update if you can give me access.

Change #1219920 merged by jenkins-bot:

[wikimedia/fundraising/crm@master] Also prevent editing of any recurring details for paypal payment processor

https://gerrit.wikimedia.org/r/1219920

XenoRyet set Final Story Points to 4.