New PaypalPro Recurring Payments (PPRP) creating duplicate contributions and inaccurate status
Paypal Recurring Payments Pro (aka PPRP) seems to be having an issue introduced somewhere between 5.49 and 5.57. 5.58 hasn't fixed it.
The issue has two incorrect behaviors:
- creates duplicate Contributions (both status Completed) and sends two email receipts when the Recurring Plan (In Progress) is created successfully. One Contribution contains the Invoice ID and the other contains the Transaction ID. On the Paypal side there is only one payment and only one recurring plan.
- if the credit card fails, the recurring plan and a single Contribution are created in Civi with incorrect status. The Contribution has an Invoice ID but no Transaction ID. The recurring plan exists at Paypal but isn't active at Paypal. No transaction exists at Paypal.
@JonGold because we have talked about other Paypal Pro issues recently I'm looping you in @eileen because of https://github.com/civicrm/civicrm-core/commit/ba2fb5afa3aa403467ae4934731684cc51bc830d I'm asking you please if your commit may be related
We have done the following testing
- identified that Paypal Standard doesn't have the same problem
- removed custom php code, tpl, and extensions that might have been interfering
Because of the sensitive nature of the donor data I haven't posted any screenshots, but we have several examples to show privately to those interested in helping fix. Bounty and/or consulting $ are available for discussion.