OpenCart: Remove step 3 on the checkout page

When it comes to checkout, OpenCart provides a way for your customers to specify different addresses for delivery and billing. Some may consider it a fraud risk to separate addresses and would rather let buyers specify a single address only.

OpenCart doesn't allow doing it by default. However, we've developed a simple and free module to do it.

UPDATED on 10/05/2016: OpenCart 2.x version is now available!

This is a free vQmod that removes step 3 (delivery details) on the checkout page. It is a one-file vQmod addon so you need vQmod installed. However, if you don't want to use vQmod, you can modify your core files according to the xml file - it only introduces a couple of changes.

This module doesn't remove shipping as such, it just makes it impossible for customers to choose different addresses for billing and delivery. The reason for that is that some consider it a fraud risk to separate addresses.

You can download the file here: [wpdm_file id=4]


Martin is the founder of MultiMerch who has dedicated his life to building great products.

  • HLJ

    Helo, really need this mod but not working when i upload to my xml folder using oc
    still ask's me for existing address or new address option. Will appreciate if you could help

  • Martin Boze

    If you are using a theme other than default, you'll need to replace all occurrences of /default/ with /yourtheme/ in the xml. If you are using the default theme and it still doesn't work, check your vqmod.log for error messages for this specific xml.

  • Pamela Alford

    Trying to get this to work, but it is completely removing the ability to go to all the other steps in the checkout. Any idea what I may be doing wrong? The steps are fairly simple and I am used to making these mods - but something isn't right. Thanks

    • Martin Boze

      It really depends on in what way it doesn't work for you. Any error messages, anything in vqmod logs? You will need to tune it if you aren't using the default theme.

      You might want to mail us a line with the link if it is online so we can check it out, but it will probably take some time.

  • Pamela Alford

    Thank you for getting back to me - I would gladly pay to have someone remove Step 3 for me if it could be done quickly! I am using a custom theme which is probably why it isn't working.

    Possible to get quick help? or no?

    • Martin Boze

      Please mail your details at, we'll need either a link to your site or your theme. For most themes it can be done quickly.

  • update for v1.5.2.1 ?

  • Martin Boze

    Updated to work with 1.5.2.x

  • Lucian

    working with 1.5.4 . Thanks !

  • Rafael

    Perfect! Working with


  • So I think your extension/action would work for my site, but I had a question. I went to your demo site, "Demo
    The module in action can be seen in our demo store: There is no checkout step 3 on the checkout page"

    But when I went there, I added some items to the demo shopping cart, and then tried to check out, both by logging into the default demo account and by registering a new account. In both instances, there was indeed a checkout step 3 shown on the demo site.

    I had tried to put the xml file on our server, and I replaced the word default with the name of our theme, but it didn't seem to remove that step either.

  • If you are using a theme other than default, you'll need to replace all occurrences of /default/ with /yourtheme/ in the xml

    And I assume that the name of my theme is found by going to System->Settings->Edit(name of store)->Store tab->Template

    I assume that the name of the theme is what is listed in the template box?

  • Sorry to post so many replies. So I did get your extension to run, and it did remove the shipping address step, but there is a major bug (in my opinion) for customers checking out who have previously registered an account. If a customer has an existing account, their account has an address saved for both the billing and the shipping information, let's call it SHIP_ONE. Let's say that they move to a new house, and go to place a new order. This time they enter SHIP_TWO under the single address field.

    When I go to inspect their order in Opencart's Orders page, it shows this second order with the following information, SHIP_TWO for billing, and SHIP_ONE for shipping! So when they have already registered an account, it never updates the original shipping address entered when they first created the account!

    I think this occurs because Opencart removes the option for the checkbox when a registered user is going through check-out. If they already have an account, Opencart doesn't show that checkbox, and forces the customer to pick both a billing and a shipping address. But in this case it just defaults back to the original shipping address. Now if the action copied the new address information into both fields whenever a person goes to checkout, that would solve the problem and make this work flawlessly (in my opinion).

  • Alexandros

    Hello Martin, it's possible remove Step 3 on Opencart v2.?

    • Martin at MultiMerch

      Hi Alexandros!

      It's not possible with this particular version of the module (as you can see the post itself is quite a bit out of date), but since it's been quite a popular request we've decided to update it to OpenCart 2.x.

      I'll publish an update to this post shortly :)

  • Divya

    Can u plz give me link for download it..??