ECommerce Insights Blog

Stay on top of it all and get ahead with useful articles, how-tos, tips and tricks on e-commerce.

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