Overview Of OpenCart

What is OpenCart?

  • OpenCart is an open-source eCommerce platform, which means you can download and update it free of cost. It is based on PHP and MVC architecture that works on a MySQL or PostgreSQL database and uses various HTML components. Also, you are not liable to pay any monthly fee for using OpenCart. It comes with a robust store management caliber, which states that you can benefit from its in-built SEO, manage customers, products, coupon codes, tax rules, orders, and more.
  • Moreover, OpenCart allows you to pick exceptional themes and modules to expand your online store’s functionality. Furthermore, the OpenCart users get dedicated commercial or free community support.
  • Presently, OpenCart provides two platforms: Free and Cloud Store, which is a Paid platform.

Why OpenCart?

  • It allows to create custom eCommerce websites. This platform provides a range of features , including product management, order management, payment integration, customer management and many others, enabling you to easily manage and operate your online stores efficiently.

What is MVC architecture?

  • MVC is not an application, basically it follows a design pattern and based on layered architecture. In OpenCart, Model, View and Controller are the three layered which are used for passing the data to each other layered in a well defined manner.

MVC diagram


  • In OpenCart, Controller play a role of mediator which manage the whole control of program. while any customer hit a URL through browser, then the controller file will be called. Inside the controller we can load the model and call methods of that model file to get the related data. After getting response from model file controller send the data to the view file. We can also include the JS and CSS files in OpenCart’s controller.


  • Model file used to fetch the data from database by using SQL queries and return same data to controller. Model file mainly used to perform some operation with database through SQL Commands like DDL (Data Definition Language i.e. Create, Alter, Drop, Truncate, etc.) and DML (Data Manipulation Language i.e. Select, Insert, Update, Delete, Merge, etc.).


  • View file receives the resultant data from controller file in php, json, etc format and view that data to the browsers. You can write the HTML, JS/JQuery, Css and PHP code in view file in opencart. We use the .tpl Extension for the view file.


  • We also use a file called language file for sting mapping with the array index. Controller loads this language file by fetching the all the index with their string conversion and render those array index to the .tpl file.

Folder Structure