How to fix “Please make sure your password match issue” in Magento 1.9.1.0

Recently we have found an issue with the latest Magento 1.9.1.0 version. The user may get this error at the checkout or from the ‘Create an Account link’. When a user registers, he keep getting the password mismatch error even though the password is entered & re-entered correctly.

The default Magento form validation does not indicate a miss-match, but once a user clicks on ‘Register’ it returns the mismatch error. After looking into the core code of Magento 1.9.1.0 we have figured out that –

Children of class Mage_Customer_Model_Customer should use getPasswordConfirmation() instead of getConfirmation()

In class Mage_Customer_Model_Customer, method validate() was changed

Before 1.9.1.0

$confirmation = $this->getConfirmation();

After 1.9.1.0

$confirmation = $this->getPasswordConfirmation();
Due to the method change in core code on Magento 1.9.1.0, if any of the 3rd party extension like 'onepagecheckout' which was using this method, will not work as expected. To ensure that extensions work as expected with Magento 1.9.1.0, we need to check the version in code & accordingly call the required method -
$info = Mage::getVersionInfo();
$version = "{$info['major']}.{$info['minor']}.{$info['revision']}.{$info['patch']}";

if($version == '1.9.1.0 '){
  $customer->setPasswordConfirmation($customerRequest->getParam('confirm_password'));
} else {
 $customer->setConfirmation($customerRequest->getParam('confirm_password'));
}

We have already made our Magento Checkout Pro Extension compatible with Magento 1.9.1.0

Join our Newsletter

Never miss the latest offers, voucher codes and useful articles delivered weekly in your inbox.