Project60 / org.project60.sepa

SEPA direct debit integration with civicrm
19 stars 46 forks source link

Allow edit recurrent contribution #706

Open francescbassas opened 6 months ago

francescbassas commented 6 months ago

We are starting to use the extension for the first time.

If I am not mistaken, once a mandate has been generated, there is no option to modify the recurring contribution to be able to modify, for example, the amount to be direct debited. Is it for some reason or is it simply that this functionality has not been enabled?

Detsieber commented 6 months ago

From a legal point of view, it would be no problem to have differing amounts for ongoing mandates. So, no reason why we shouldn't have that in CiviSEPA.

However: It is not too long ago, that changing recurring contributions was enabled in CiviCRM core. So there is probably some work to do for enhancing CiviSEPA. And this probably would need funding...

francescbassas commented 6 months ago

Thanks @Detsieber.

Stripe extensions allow it, can serve as a reference. Taking a quick look I think this variable needs to be defined.

We will assess the need and perhaps propose some PR. However, we have generated a report with SearchKit that also allows us to edit the amounts of recurring contributions and will surely serve as a workaround.

bjendres commented 6 months ago

@francescbassas writes

If I am not mistaken, once a mandate has been generated, there is no option to modify the recurring contribution to be able to modify, for example, the amount to be direct debited. Is it for some reason or is it simply that this functionality has not been enabled?

CiviSEPA considers the recurring (RCUR) mandates as immuntable. The current way of doing this (called "replace mandate") would end the existing mandate and create a new one (with a different frequency, collection day, amount, ...).

However, we developed a concept for introducing a mandate of type FLEX where some external process would have to create the installments - including the amount. The project this was for is currently on hold, so I don't know if and when this will be implemented. Does that sound like something that would work for you?

francescbassas commented 6 months ago

@bjendres if I understood you correctly... mandates of type FLEX would allow you to edit their amounts and installments without the necessity of regenerate the mandate. This would adjust to the need to be able to modify the amounts owed, for example when we modify the price of the subscribed magazine.

bjendres commented 6 months ago

.. mandates of type FLEX would allow you to edit their amounts and installments without the necessity of regenerate the mandate.

Not quite. Mandates of type FLEX would call a hook/api/function during the batching process to return the next contribution (if any) to be collected on this mandate.

However, this is just a concept so far, and it's not clear if the organisation we created it for is going to go for it.

francescbassas commented 6 months ago

I just discovered in Settings CiviSepa page the option "Mandate modifications":

A strict interpretation of the SEPA standards would not allow you to modify an active mandate. Furthermore, it can potentially cause technial problems. If you enable this option, you will get extra actions on the 'edit mandate' page. Be aware that you should send out a new prenotification to the debitor every time you modify a mandate.

This enables the option to change the amount and also the frequency, I understand that therefore it will also modify the recurring contribution, which is what I looking for, right?

imatge

bjendres commented 6 months ago

Yes, I assumed you had seen that already. Does that work for you?

francescbassas commented 6 months ago

I think so. I'm still getting used to using the extension.