Project60 / org.project60.sepa

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

Store original collection date #576

Open bjendres opened 4 years ago

bjendres commented 4 years ago

To avoid issues like #575 we need to store the original collection date without any deferrals or adjustments due to late submission. One place could be the civicrm_sdd_contribution_txgroup table.

bkaless commented 4 years ago

Dear Björn,

Do you have a guess about the amount of resources to solve this problem? Maybe we can find a budget at SfE or elsewhere. I assume that this question concerns more organisations than just us.

Best regards Bene

bjendres commented 4 years ago

Do you have a guess about the amount of resources to solve this problem? Maybe we can find a budget at SfE or elsewhere. I assume that this question concerns more organisations than just us.

I would reckon that it would be about 4-6 hours of work. But I'm not sure a lot of people have this issue, as it only seems to happen in edge cases - or when somebody/something changes the dates of the collected contributions to something else than the collection date (like in #575).

But don't get me wrong, the system would be a lot more resilient when this is implemented.

MarcMichalsky commented 4 years ago

Hello @bjendres,

I think you got me wrong on #575. The bank booked the money later than it should have. This is why the booking date is not the one specified in the Sepa group XML file.

But even if I correct the booking date in the CSV file manually the CiviSepa does not recognize that the group was already generated. It only works correctly if I also change the value date to the booking date. So the error would even happen if the bank sends the right booking date.

We can prevent this error only by setting the grace period to zero. Maybe other organisations always handle it this way.

bjendres commented 4 years ago

As I said before, when using the grace period you should always be cautious.

With respect to CiviBanking: most people only use one of the dates, and then import into both fields. It's possible that there's issues in CiviBanking in that scenario that I don't know about. But this isn't the place for this.

The bank booked the money later than it should have

I still don't get how they could adjust the collection time without asking you. That should be one more reason to make sure that CiviSEPA calculates the right collection date by itself by adding the bank holidays.

In any case: the system would be more resilient when this ticket is implemented.