Recurring contribution fails with "ipn_payment_callback_exception", for membership auto-renewal via PayPalPro
Reproducing on a clean site is hard because I'm having trouble setting up a paypal sandbox account that supports recurring contributions, but if I could, I would reproduce in this way:
The hard steps:
- Ensure a membership type exists that supports auto-renew, preferably with a very short renewal period, perhaps 1 day.
- Ensure a working papal pro payment processor is configured (preferably on a sandbox account if you want to avoid processing actual transactions).
- Select any contact or create a new one, and for this contact, under the Membership tab, click "Submit Credit Card Membership", and there create a membership with auto-renewal.
- Observe that the payment is processed and the membership is created.
The easier steps, once the above is done:
- Wait for the membership renewal payment IPN message to come in from PayPal; if you don't want to wait, figure out how to submit a fake IPN message to your test site, perhaps using PHP and curl (e.g., #1579 (comment 32075))
- Inspect the contact's Contributions tab and observe that this payment has a status of "Pending (Incomplete Transaction)".
- If you wish, replay the IPN notice using the notificationlog extension, or just send it again if you're sending a fake; either way, the contribution status will remain at "Pending (Incomplete Transaction)". Repeat as much as you like.
- Inspect the log files under ConfigAndLog, and observe that the handling of the IPN message generates the rather uninformative log entry:
[error] ipn_payment_callback_exception