Symptoms

  • After entering the payment details in the checkout and clicking "Continue", the shopping cart is shown again.
  • In Firebug, a 503 error might show up at that moment.
  • In the Magento logs (/var/log or /var/report), one of these errors may be shown:
    • Given encoding not supported on this OS
    • The requested Payment Method is not available

Solution #1

This might be a problem with PHP.
  • Magento 1.x only supports the versions shown here: Magento System Requirements.
  • Make sure you are using a supported PHP version.
  • Note the difference between Magento 1.9.2 and older versions!

Solution #2
This problem can also be related to the hosting platform, e.g. when using HHVM.

Solution #3

Check in the browser console (or Firebug) if any Ajax errors occur in the checkout. Those can also lead the buyer back to the shopping cart.


Technical details

The reason for "Given encoding not supported on this OS" is an exception raised by the Zend_Validate_StringLength class, which tries to do a "ini_set($encoding)", where $encoding is either 'utf-8' or 'UTF-8'. The ini_set command does not work properly.


This is NOT a bug in the Magento module!