Fixing The Magento Checkout Glitch

by Michael Lyman

When customers select Proceed to Checkout their cart is emptied

When customers select Proceed to Checkout their cart is emptied

When I began using Magento 9 months ago on our live website, our customer service department occasionally would get emails or phone calls about people having trouble checking out. We spent months trying to determine the cause of this issue without much success.

The problem was as follows: A customer would come to the website, place items in their shopping cart, and then click the “proceed to checkout button” from the shopping cart. Rather than take them to the cart, our Magento website would immediately forward them to the home page and empty all the items from their cart. Because we could not find a common variable that was causing the issue we couldn’t determine how to fix it. The problem didn’t seem confined to a single browser or platform.

The Solution

With the help of Magento support we determined that the cause of the problem was the ISP providers. It appears that ISPs like AOL, Comcast, and Shaw.ca use a technique of changing IP addresses that cause security settings in Magento to empty the cart and not allow people to check out.

It turns out the fix is fairly simple. Change the Session Validation settings in the Magento Admin, found under System > Configurations > Web,  to ‘no’ on everything except “Validate HTTP_USER_AGENT.” After doing this,  go to System > Cache Management and refresh the configuration cache to apply the changes.

By applying these fixes to our site, people who could not place orders were suddenly able to do so. When you consider that, perhaps, one person in ten might actually call to complain, I shudder to think of how many sales might have been lost before we applied the fix.

Changing the Session Validation Settings will solve the problem of not allowing certain customers to checkout on your Magento website

Changing the Session Validation Settings will solve the problem of not allowing certain customers to checkout on your Magento website

See also: Why Johnny Can’t Read Your Web Page…

  • Blake

    So many problems but did not hear of this one yet. Do you know if by making these changes if it adversely affects any other customers (lost sessions, etc.) Thanks!

  • Mike

    I have not seen any adverse affects for other customers

  • Blake

    Thanks for the quick response. We have only seen 1 complaint in 1 month and had no idea why. Possible it was caused by this. Will give it a try

  • http://www.ruralking.com Blake W

    This guide has been very helpful in fixing our similar issues. Recently we have received calls that similar issues are happening again. I wonder if I should turn validate HTTP_USER_AGENT to ‘no’ as well?

  • Mike

    I had asked Magento support that same question but they said no. I’m not really sure what that setting does so I took their advise and left it on. Let me know if you turn it off and the results.

  • http://www.ruralking.com Blake W

    I had a few more customers call in with checkout issues yesterday. Normally I will only get a customer once a week or so that has checkout problems. Sometimes people on msn browser, aol browser, old IE, etc… have problems in general with using Magento. I had about 3 or 4 call in yesterday for some odd reason. Sales drastically increased by about 4 times the normal flow of orders, immediately when I switched this to ‘no’ and refreshed the cache. It very well could be coincidence, but I wanted to share this information. Thanks Mike for the quick reply by the way. Good Luck with all your Magento endeavors!

  • Mike

    SO what you are saying Blake is that you set “HTTP_USER_AGENT” to no as well and you saw an increase of orders and no adverse effects?

    I might do the switch as well. Please confirm that I understood you correctly.

  • http://www.ruralking.com Blake W

    Yes you understood correctly, but I can’t confirm this is because of the HTTP_USER_AGENT. It SURE looks like it, and I am convinced it is for the time being, but it could also be the warmer weather in Illinois. The bottom line is, I changed it, and orders shot up and are still up, you can take it however you wish. I am choosing to believe that setting HTTP_USER_AGENT to ‘no’ did increase my sales drastically. Hope it helps you as well.

  • http://www.ruralking.com Blake Whitkanack

    There have been no adverse affects. The number of calls from people who can’t checkout has remained the same. I am going to start taking their information such as ISP, browser, security settings, etc…

    While the number of problems called in has remained the same, sales have sure shot up. Is it because of the warm weather or is it because the change I made? It was awful ironic that literally minutes after turning HTTP_USER_AGENT to ‘no’, sales lit up.

    I am using version 1.2.0.3 by the way.

  • http://ecommerce.digitalview.com James

    Has anyone solved this issue in version 1.3.1? The configuration is different now, and the fix isn’t working. Any ideas?

  • Mike

    James,

    I have not yet upgraded to version 1.3.1

    Are all these settings now gone in the admin GUI in 1.3.1?

    If so how are they handling these same settings? I can’t imagine that they completely did away with them or you wouldn’t be having the same issues…

    Let us know.

  • Eric

    I got a customers who has Firefox and the site works, they can ADD Products to cart. When they try IE6 or Opera 9.64 it does NOT work. It does NOT allow them to add items to cart.

  • http://laksmono.com/2009/05/13/userscustomers-cannot-checkout-magento-cart/ Users/Customers Cannot Checkout Magento Cart | Grady Laksmono
  • bluecos

    WE HAVE SAME PROBLEM !!! we run 1.3.1.1

    IE6 or Opera 9.64 it does NOT work. It does NOT allow them to add items to cart. EMPTY CART

  • bluecos

    also with seeting on this screen not working in IE 6 & OPERA on

  • dasopium

    Hey everybody,
    I followed this for a while, cause I have the same Problems. Yet I can not tell if my solution works, but I want to share what I found. Maybe it’ll help someone: Here are some Links to threads that I read. The best solution seems to be a change in the .htaccess for ie6 (“BrowserMatch “MSIE 6\.0;” nokeepalive downgrade-1.0 force-response-1.0″)

    In german:
    http://www.magentocommerce.com/boards/viewthread/32940/

    In german:
    http://rackspeed.de/forum/magento-faq-installation-and-updates/ie6-onepage-checkout-probleme-bleibt-haengen-142

    A video with http vs. https
    http://www.grosse-puppendahl.de/magento/ie6-checkout-bug.swf.html

    Read the last post by “nileco”
    http://www.magentocommerce.com/boards/viewthread/23430/P15/

  • http://wubi.figit.com/?p=183 Blog Title » Blog Archive » Admin Configuration

    [...] Under Session Validation Settings, I set “Validate HTTP_USER_AGENT” to yes, all others should be no. As per the discussion at: http://thewellrunsite.com/2009/02/12/fixing-the-magento-checkout-glitch/ [...]

  • http://mediavangelist.com/ Jay Benfield

    All I can say is thanks! I’ve been trying to isolate/reproduce/correct this issue for a couple days on a store running 1.3.1.1.

  • http://www.sanjaal.com bimal

    In my installation, these settings are always turned off. This should be a problem that arised itself (without my clear notification).
    But again, a fresh installation too did not work then after.

  • rob

    I am currently going through compliance for billing and this issue has prevented me from being accepted so the issue needs to be resolved. Exact problem is when clicking on proceed to checkout cart empties and it goes back to the front page. I have tried to replicate the issue myself on 10-20 difference computers at different addresses just can not get it. I have now turned the settings off to see if billing still has the problem. I have the newest version of magento but the browser problems are still a worry. Has anyone found a solution????

    Regards Rob

  • http://www.websdeveloper.com/blue-parabola-blog-magento-feature-analysis-series-part-10-checkout-offering/ Blue Parabola Blog: Magento Feature Analysis Series, Part 10: Checkout Offering | Webs Developer

    [...] also points out an issue where dynamic IPs could cause an “empty cart” problem because of a security measure [...]

  • http://www.everythingbiorb.com/ CJ

    I just wanted to post my experience- We’ve had the same problems for a while and I had a customer who helped us a lot, she tried from work and home to place an order for 2 days. Didn’t work either place, same empty shopping cart error, I changed the session validation settings & she was then able to complete the order. I am running Magento ver. 1.3.2.3.

    Another question though- should my “Use HTTP Only (under session cookie management) ” setting be set to no or yes if I have secure URL’s enabled in the frontend, thanks a lot

  • cryingMen

    same problem here and no solution in sight, any news?

  • Tim

    Thanks man… I needed this.

    We are running Magento ver. 1.3.2.3

  • Ralf

    For all that this didn´t help:
    (your magento-installation isn´t at servers root?! -> domain.tld/magento)
    Turn “Use Secure URLs in Frontend”-Setting to No
    in Config->Web->Secure – this helps for me.
    (next clear all cache at magento (/var/session and /var/cache) and the browser-cache…
    I hope this helps all they are going through hell with this bug!

  • saho

    I ran across this post, thought it might be of some help
    http://www.sonassi.com/knowledge-base/random-redirect-to-homepage-with-magento/

  • Montagist

    I’ve been having this problem but when I checked the settings everything was already set to “No”. I changed Validate HTTP_USER_AGENT to “Yes”, but I don’t think it will make a difference. Might you have any suggestions or insight?

  • http://www.kfinds.com Quang

    I just had this problem and now it fixed. Thank you so much for your post.
    If you interested in samurai swords or hunting gears check out my site and I’ll give you a discount for this post. lol

  • http://india-part-time-job.blogspot.com/ Part time jobs

    Nice information… keep going on

  • http://www.vastplanetblog.com Michael Vorel

    Hi Michael, first off thank you for writing this post as this has been an odd situation to deal with. I tried your fix on a 1.8 magento professional and still didn’t work. Wondering if you might have an alternative that you discovered. Below id my current settings.

    Session Validation Settings
    Validate REMOTE_ADDR [GLOBAL] NO
    Validate HTTP_VIA [GLOBAL] NO
    Validate HTTP_X_FORWARDED_FOR [GLOBAL] NO
    Validate HTTP_USER_AGENT [GLOBAL] YES
    Use SID on Frontend – Allows customers to stay logged in when switching between different stores. [WEBSITE] YES

    Many Thanks,
    Michael

  • John Stapleton

    Thank you for taking the time to post this. I have carried out the requested changes above but I am afraid that this does not resolve the matter.

    I am currently on magento 1.4 and the site is hosted on a reseller account.

    Would you have any ideas as to why this might be the case? I do not mind paying for your time.

    The site is http://www.comfyearplugs.com.

    Regards. John

  • http://www.mactonweb.com seo bangalore

     very good post, thanks for your ideas and thoughts.

Previous post:

Next post: