cancel
Showing results for 
Search instead for 
Did you mean: 

Payment process failed because checkboxes/button does not work correct (PayPal)! - Version 1.9.2.4

SOLVED

Payment process failed because checkboxes/button does not work correct (PayPal)! - Version 1.9.2.4

The Problem is, that customers could not complete the order, because after the PayPal login they return back to the order overview and can't click on the "Jetzt bezahlen(Pay now)" button. The button is disabled, even if the checkboxes of AGB (T&C) etc. are checked.

Curiously, the button is activ and clickable before clicking a checkbox. After clicking one checkbox the button is disabled and it stays disabled. Its only at the payment method PayPal on Magento Community Ver. 1.9.2.4.

The question: Is there any fix for this problem yet? German Magento shops still have problems with greyed 'Jetzt kaufen' buttons, T&C checkboxes and PayPal.

BTW.: PayPal seems to work fine! If you deactivate the requirement of the checkboxes, the order can be placed, as usual!

What about the newer version Magento +2.0? Does it the trick?

 

Here is an screenshot (German order process, after redirect from PayPal):

1 REPLY

Re: Payment process failed because checkboxes/button does not work correct (PayPal)! - Version 1.9.2

The solution:

After debugging the problem for two days, I finally came accross this solution:

  1. Search the file ".../app/design/frontend/default//[THEME]/template/paypal/express/review.phtml" (If you don't have this file in your theme, just copy it from the base theme)
  2. Add the following lines of code after "//Workaround to unbind the event listeners for the agreement checkboxes" at the bottom of the file.

Add this (Take the code from here: https://gist.github.com/4503260):

//Workaround to unbind the event listeners for the agreement checkboxes
  var agreementsBlock = $$('.checkout-agreements p.agree')[0];
  if(agreementsBlock != undefined) {
     agreementsBlock.replace('<p class="agree">' + agreementsBlock.innerHTML + '</p>');
}
//]]>
</script>

bellow line 175:

PayPalExpressAjax = new OrderReviewController($('order_review_form'), $('review_button'),
        $('shipping_method'), $('shipping_method_form'), 'details-reload'
    );
    PayPalExpressAjax.addPleaseWait($('review-please-wait'));
  1. This solution won't work for two checkboxes. So if you have two agreements to check (e.g. AGBs & Widerrufsbelehrungen), show them together in one box or provide two links to open them individually.

Credits to this solution: http://stackoverflow.com/a/14262466/5594625 by ceckoslab


( ! ) This could maybe helpful for you too:
Place Order Button disabled with Virtual Products, PayPal Express, and Terms and Conditions


Thanks for your help and messages! :-)