Menu Close
    Hire Us Request Quote Reading List Switch to Dark Mode

    How to build eCommerce website using Laravel?

    Building a Laravel eCommerce website requires a full understanding of the eCommerce ecosystem and also the right data workflows.

    With that, there is the use of the framework that should be easy to code and should have wide community support also should be scalable.

    Thus of all the PHP Frameworks, Laravel is, of course, the most suited PHP Frameworks that should be used for creating an eCommerce shop.

    Source: Acuity Software

    However, with the complexity involved in developing the eCommerce framework, rather than one should better use a combination of Open Source eCommerce Framework that is truly built on Laravel such as Bagisto.

    Bagisto is the next-gen eCommerce Framework that offers Multi-Warehouse Inventory out of the box

    Here I am going to show how you can easily set up your eCommerce Shop using the Bagisto Laravel eCommerce package.

    Bagisto — Laravel eCommerce

    Bagisto is an open Source eCommerce Framework built on the top of Laravel and alsoVue.js. 

    Live Demo – Bagisto

    With the code-driven approach and also the fully customizable structure, you can easily add/change anything and can even deploy your code in the Bagisto framework and create your own laravel eCommerce website.


    • OS: Ubuntu 16.04 LTS or Higher / Windows 7 or Higher (WAMP / XAMPP).
    • Server: Apache 2 or NGINX
    • RAM: 3 GB or higher.
    • PHP: 7.2 or higher.
    • Processor: Clock Cycle 1Ghz or higher.
    • For MariaDB users – 10.2.7 or Higher.
    • MySQL: 5.7.23 or higher.
    • Node: 8.11.3 LTS or higher.
    • Composer: 1.6.5 or higher.

    Using Composer

    Below we are going to describe how you can install the Bagisto by using the composer.


    Follow the steps below to configure the Bagisto.

    • Downloading Bagisto

    Open the SSH terminal and go to the specified folder also run the command below to download the project on to your local machine or server

    composer create-project bagisto/bagisto

    In case, the composer is not installed in your system, you can also run the composer commands, by downloading the composer.phar file and put it in the root directory, then run the command below.

    php composer.phar create-project bagisto/bagisto

    For a downloadable zip file

    In case you have downloaded the zip file, get inside the directory bagisto-master, then run the below command.

    composer install
    • Setting .env Variables

    Once the process has been executed, open the .env file using editors and set your .env variable, especially the ones below:


    For a downloadable zip file

    If you have downloaded the zip file, you will get the .env.example file. Just make a copy of that file as .env

    cp .env.example .env

    and also set all the .env variable as mentioned above. Once the variables have been set, generate the application key

    php artisan key:generate


    Run the commands below to continue the installation process

    Execute below command to create a migration table in the database as defined in your .env file

    php artisan migrate

    Now the database will be seeded with default data using seed classes.

    php artisan db:seed

    With the command below, your configuration, assets (CSS, js, images, etc) and all necessary files will be copied to the specified publish location

    php artisan vendor:publish
    -> Press 0 and then press enter to publish all assets and configurations.

    You should create a symbolic link of storage directory with the public using the below command so that the images are publicly accessible.

    php artisan storage:link

    This is the end of the installation process.

    Installation Video

    You can also go through the video tutorial for the complete installation process.

    Accessing Front-End

     after the successful installation, just need to click the public folder.

    thus the front page of your website will pop up in front of you.

    Accessing the Admin Panel

    To access the admin panel of your shop, you can also follow the below URL


    And use the following credentials

    Using the GUI Installer

    However, the new version also has been launched recently,  the GUI Installer has been added, which has made the process of setting up your Bagisto eCommerce store much easier.

    Thus follow the below steps to install Bagisto using GUI Installer.

    1. After you have downloaded the Bagisto package and extracted that, go to the root directory of the Bagisto and also run the below command to install all the dependencies of Bagisto.

    1. Once the dependencies have been installed, you need to click on the public folder as there in the directory.
    2. The Bagisto installer will pop up in the next step where it will check for the minimum configuration as mentioned in the prerequisites. If everything is allright, click the Continue button.
    3. In the next step, you need to fill the environment variables, at last Save and Continue.

    App Name

    Here you need to provide the name for your application or your eCommerce store.

    App URL

    Provide the name for the database that you have created for the store.


    The database server username will be provided here.


    Here you also need to provide the password for the database server.

    1.  Next, you will need to click on the Migrate and Seed button to perform successful migration and also for loading test data in the tables.
    2. Once the Migration and Seeder operation is completed, click on the Continue button.
    3. At last, you will be needed to provide Admin details for your eCommerce store.
    4. Click on Finish after the installation has been over and you will be redirected to the Sign In Page, where you will provide the admin details to check the admin panel.


    Above are the steps by which you can easily set up your Laravel eCommerce website in Bagisto and can also modify it as per your requirements.

    As per the roadmap, new features will also be added like the Multi-Vendor marketplace and Laravel POS System.

    Bagisto Laravel POS

    The best thing about laravel eCommerce website is the simplicity and also the customizable structure by which you can easily customize the bagisto eCommerce Framework.

    Moreover, the framework has been developed by the Webkul, which is also the leader for creating e-commerce extension and plugins for the past 10 years.

    Let us also know about your feedback in the comments below and also if you are looking for any help regarding Bagisto Installation.

    . . .

    Comments (54)

    Add Your Comment

  • Rahul Anand
    Except for the home page, all other pages are throwing 404. I am using Nginx, php 7.2. and created a virtual domain and pointed it to the public directory of the framework. Only home page is working.
    • saurav pathak
      Hi Rahul,

      I request you to please raise a ticket regarding this here and do provide SSH details also so we can check. More specifically, we need to check the Nginx configuration so if possible root access can be provided, would be better.

  • Jesvin
    I download the files using composer and check the composer.json file, In it the basic requirements are
    “php”: “^7.1.3”,
    “laravel/framework”: “5.6.*”,
    its looks like old, and in the documentation you said PHP: 7.2 or higher any updates is pending?
    I check the migration files, its contains only the basic files.
    I don’t get any code from web.php and api.php
    • saurav pathak
      Hi Jesvin,

      The version that you need to have is ^7.1.3, the same is there in documentation too. May I know on which page have you seen the incorrect version?

  • lavin
    The page is keep running after I gave db details while installing configure.
  • Cess
    I tried to run php artisan migrate and this happened:

    Illuminate\Database\QueryException ?[49;22m : ?[33mSQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to
    your MariaDB server version for the right syntax to use near ‘json null, `created_at` timestamp null, `updated_at` timestamp null) default cha’ at line 1 ……

    Please help

  • Valpuia
    I install zip package and did exactly like the installation guide, but after serving it gives error “Class Webkul\Core\Repositories\SliderRepository does not exist”
  • adam
    when i’m trying to login fashboard page

    Class ‘NumberFormatter’ not found

    keep showing to me !!

  • Chato
    Generating autoload files
    Carbon 1 is deprecated, see how to migrate to Carbon 2.
    You can run “.\vendor\bin\upgrade-carbon” to get help in updating carbon and other frameworks and libraries that depend on it.
    > Illuminate\Foundation\ComposerScripts::postAutoloadDump

    Is mandatory to update Carbon? Or can I continue this way?

  • Prajakta

    I’m trying to run this command: php artisan db:seed

    When i execute it showing following error:
    SQLSTATE[42S02]: Base table or view not found: 1146 Table ‘bagisto.channels’ doesn’t exist (SQL: select * from `channels` where `hostname` in (,,

    Can you help me on this? Thank you

    • saurav pathak
      Drop all the tables and run the migration & seed commands again.
  • Adonai

    I’m trying to install Bagisto manually because UI installation stops on step Migration & Seed without showing errors.

    When I execute command “php artisan migrate” the process stop with this error: In Concord.php line 265: Class ‘Webkul\Discount\Models\CatalogRuleProductsPriceProxy’ not found.

    I suppose it is the error that is stopping the UI installation UI.

    Could you help me? Thank you.

    • saurav pathak

      Go to the file location where there is a discount model(packages/Webkul/Discount/src/Models/CatalogRulesProductsPriceProxy.php) in your bagisto folder that you might have, and just rename the file name from ‘CatalogRulesProductsPriceProxy.php’ to ‘CatalogRuleProductsPriceProxy.php’

      • Adonai
        Thanks for answering so fast!! The problem was solved with that correction, but then something similar happened with another class: ‘Webkul \ Discount \ Models \ CartRuleLabelsProxy’. I did the same and continued the migration. Many thanks!
        • saurav pathak
          Welcome, do let us know if you have any further query.
  • Back to Top
    Hire Us!
    Brief us about your requirements and we'll get back to you.
    Woo! Hooy!
    We have just recieved your project brief and our expert will contact you shortly.
    Send Again

    Table of Content

    Hide Index