Recent PayPal Services Issues
Posted on July 2, 2015
Update – July 3 2015 : PayPal has made changes that seem to have fixed this. As a precaution, we’ve released a dev version 18.104.22.168 which implements the fix and can be downloaded automatically from your WordPress dashboard.
Sometime around the start of July 2015 people have been experiencing issues with PayPal transactions not showing up for Events Manager Pro bookings. This means that customers making bookings will not receive confirmation emails for successful payments, leading to all sorts of confusion.
Whilst we’re not entirely sure about how widespread this issue is, it has become apparent that it is affecting a lot of people, and that this isn’t limited just to Events Manager Pro but likely any WordPress plugin attempting to communicate with PayPal to securely verify a payment notification. These findings also indicate that PayPal is likely to blame.
We, along with various other WordPress plugin developers, have notified PayPal about this issue in the hopes that they fix this ASAP, however rather than wait for them we’ve made a workaround which solves the problem. We hope that PayPal will sort this out in a matter of hours, if they don’t by tomorrow we will likely release an update implementing this fix, given that (whilst unnecessary) it should have no long-term implications.
Firstly, we recommend you set the ‘Delete Bookings Pending Payment’ option to 0 in Events > Payment Gateways > PayPal so that bookings don’t get erroneously deleted whilst awaiting payment.
Users with an active license can automatically implement this fix by updating the latest dev version within the admin dashboard, and ignore the following instructions.
We’ve made a small adjustment to the file /events-manager-pro/add-ons/gateways/gateway.paypal.php which you can now download and replace on your site.
Alternatively, you can edit the file above directly by finding this line:
$ipn_verification_result = wp_remote_get($domain.'?'.$req, array('httpversion', '1.1'));
and replace it with
$args = array('httpversion'=>'1.1','user-agent'=>'Events Manager Pro '.EMP_VERSION); $ipn_verification_result = wp_remote_get($domain.'?'.$req, $args);
Once you’ve implemented this fix, your bookings should start going through as normal.
For previous bookings made between the PayPal service problems arising and implementing the fix, please visit your PayPal account and go to History > IPN History. You’ll see some notifications are still retrying, those should go through. Select the ones that have failed and resend them, they should go through as well.
If you’ve already manually approved these bookings in the meantime, don’t worry, all that will happen is the record of a paid transaction record will appear for the booking.