Improvement: prevent duplicate soft credits
I have a use case here that generates duplicate soft credits. It's no mystery how they're happening, but I wonder about possibilities for preventing them.
Repro:
- Install and configure this extension -- e.g.configure it to create soft credits in both directions for the Spouse relationship.
- Observe that it's working properly -- e.g. when I create a contribution for a contact, and specify no soft credit, the contact who has a Spouse relationship will receive a soft credit for the full amount.
- Enter a contribution for a contact (Contact A) and, at the time of entering the contribution, actually specify a soft credit for their spouse (Contact B).
- Observe that two soft credits for the full amount are created for the spouse. This leads to problems: if you need to edit the contribution for some reason, you'll hit this error when attempting to save the edits: "You cannot enter multiple soft credits for the same contact."
Discussion:
You may ask: "Why would you specify a soft credit for the spouse if you already have this extension installed and configured?"
The answer is: Because we know the data is imperfect. As the Development Director (or other staff), I know my people pretty well, and I know 100% that Bob and Alice are married in the real world. But I'm not 100% sure that they have a Spouse relationship in the CRM, and verifying (or better, correcting) that is tedious. So sometimes I will specify it. It saves me a lot of trouble having to double-check that when entering contributions -- especially when entering them in Batches.
So, the improvement up for discussion is this:
Before the extension creates its automatic soft credit on the spouse relationship, can it check to see if a soft credit to the same contact has already been specified by the user who is entering the contribution -- and then simply not do its automatic soft-credit creation in that case?