Reading list Switch to dark mode

    Laravel eCommerce Multi-Tenant SaaS Module

    Laravel eCommerce Multi-Tenant SaaS Module:- The laravel eCommerce multi-tenant SaaS module is an eCommerce virtual mall, where multiple-vendor can sign-up and create their own e-commerce store with their domain name.

    Bagisto is an online e-commerce platform that helps anyone to start their e-commerce store within a few minutes without any technical requirements.

    The merchant doesn’t need to add any plugin to create their store, it is the full end-to-end integration. You have to just signup then you can start your business.

    Feature of Laravel eCommerce Multi-tenant SaaS Module

    • Admin can easily set up and manage saas based eCommerce solution
    • Flexibility and scalability for your business
    • Multiple eCommerce merchants can access at a time
    • The super admin can view the products list of their merchant’s store
    • Super admin will get the email notification whenever a customer orders a product from his merchant’s store
    • The super admin can also view the customer data of their merchant’s store
    • Manage multiple businesses with custom domains or self-provided domains
    • Super admin can also view the orders of their merchant’s store
    • The Merchant can Change the domain from channel settings
    • The Merchant manage their own store using their own dedicated admin dashboard
    • Supported the Bagisto Velocity theme
    • Supported all product types of Bagisto Framework including Simple, Downloadable, Grouped, Bundle, Configurable, Virtual, and Booking.
    • Every merchant will also receive the mail whenever a customer will order from his store
    • High security in a session
    • Easy Customisation
    • Easy Updates of Laravel Multi-Tenant SaaS.
    • ACL system for the Super admin users
    • CMS pages support at super admin
    • Add an option to register a tenant account from the super admin end

    Note:-

    • Do not install bagisto till you configure this extension.
    • Do not seed your database at any point using ‘php artisan db: seed‘ (seeding is done automatically when the seller is registered)
    • Run the command from the root in terminal ‘composer create-project’
    • Find ‘.env’ file in the root directory then changes the APP_URL parameter to your application’s domain name.
    • Add your database credentials in.env where params DB_DATABASE, DB_USERNAME, DB_PASSWORD should be added as of your own database credentials.
    • DB_DATABASE is the name of your database where all the tables will be created.

    Installation of Laravel eCommerce Multi-Tenant SaaS Module

    Customers will get a zip folder after purchasing the extension. After that, Unzip the respective extension zip and then merge the “package” folder into the project root directory.

    Start your headless eCommerce
    now.
    Read More
    SaaS Module installation

    Goto config/app.php file then add the following line under ‘providers

    Webkul\SAASCustomizer\Providers\SAASCustomizerServiceProvider::class

    Do the below entry in config/app.phpaliases

    'Company' => Webkul\SAASCustomizer\Facades\Company::class

    Goto config/concord.php and packages/Webkul/Core/src/Config/concord.php files and add the following line under the ‘modules’ index in both files:

    \Webkul\SAASCustomizer\Providers\ModuleServiceProvider::class 

    Goto composer.json file inside the Bagisto root directory and add the following line under ‘psr-4

    "Webkul\\SAASCustomizer\\":"packages/Webkul/SAASCustomizer/src", 

    Another entry inside file(‘app/Http/Kernel.php’,):

    In this file, you can find an array of’ middleware groups’ inside it there is
    a key named ‘web’ inside it do an entry:

    \Webkul\SAASCustomizer\Http\Middleware\ValidatesDomain::class
    

    Find a file auth.php present inside the config folder from the root and do the following entries:

    Insert the below in gaurd array

    'super-admin' => [
    
    
    'driver' => 'session',
    
    
    'provider' => 'superadmins'
    
    ]

    Then insert the below code in the provider array

    'superadmins' => [
    
     'driver' => 'eloquent',
    
     'model' => Webkul\SAASCustomizer\Models\Agent::class
    
     ]

    insert the below code in the ‘passwords‘ array

    'superadmins' => [
    
    'provider' => 'superadmins',
    
    'table' => 'super_admin_password_resets',
    
    'expire' => 60,
    composer dump-autoload
    
    php artisan SAAS:install
    

    * Access the super admin panel using: http://saas.com/super/login

    Once you run the command “php artisan SAAS:install” then you have to enter your super admin credentials like email id and password

    bagisto saas super login

    Let’s discuss on the few DNS Record

    CNAME:- Cname is standing for Canonical Name. Every website has an IP address to connect to the world wide web. Where we need more than one domain on a single IP address, their Cname will be useful to map the multiple domains on a single IP address.

    For example, If you have your domain shop.mydomain.com and you want this domain point on your main domain(shop.com). Then you have to just replace the IP address of mydomain.com with shop.com so that your CNAME record will be created.

    Wildcard:- With the help of the Wildcard DNS record, we can match the request for the non-existence domain name. A Wildcard DNS record is identified by an “*” asterisk. For example *.example.com.

    wildcard entry

    Super-Admin Panel

    Once the SaaS module is successfully installed, you can open your super admin panel (enter the example.com/super/login). Then the next page will be open like below then you have to enter your credentials then click on Sign in.

    Webkul-Laravel-eCommerec-saas-multi-company-modules-super-admin-loging

    After successfully sign-in in, the super admin dashboard will be open like below. Super-admin can view all the company which is registered on their SaaS Panel.

    bagisto-multi-tenant-saas-tenant-list

    Now as you can see in the below image super admin can export the tenant list from the respective Export Button into two forms CSV/XLS.

    bagisto-multi-tenant-saas-tenant-export-1

    Download the tenant list by selecting the format such as CSV/XLS

    bagisto-laravel-eCommerce-saas-download-tenant-list

    In addition to this, the super admin can also register the tenant from the super admin panel itself.

    bagisto-laravel-eCommerce-super-admin-creating-tenant

    Here the super admin has to enter the below details :

    Name: Enter the name
    Email Address
    : Provide the email
    Phone: Provide the phone number
    User Name: Enter the user name
    Organization Name: Mention the organization name
    Password: Provide the password

    Once you click on the eye-icon on any particular company then you can view company/tenant insights

    bagisto-laravel-eCommerce-multi-tenant-insights

    Tenant’s Insights

    Under the tenant’s insights super admin can see all the information about their tenant store as shown in the below image :

    bagisto-multi-tenant-saas-tenant-insights-1

    Product Information:- No of products available on that company

    Attribute Information:- No of attributes of the tenant

    Customer Information: No of customers available

    Customer Group Information:- Number of customer groups of the tenant

    Category Information: No of category available to that company

    Tenant Domain Information: Domain of that company

    Edit Tenant Detail

    The super admin can also edit their tenant details as per the below image.

    bagisto-multi-company-saas-edit-tenant

    However, the super admin can also delete the tenant as well, as per their requirement as shown in to the below image.

    bagisto-multi-tenant-saas-delete-tenanat

    Tenant’s Customer

    The super admin can see all the customer lists of their tenants as shown in the below image

    Webkul-Laravel-eCommerce-Mulit-Tenant-SaaS-Tenant-Custome-List

    Tenant’s Products

    The super admin can also see all the product lists of their tenants as shown in the below image

    Webkul-Laravel-eCommerce-Mulit-Tenant-SaaS-Tenant-Product-List

    Tenant’s Order

    By navigating to Tenants>Tenant’s Order super admin can see all the orders of their tenants as shown in the below image

    Webkul-Laravel-eCommerce-Mulit-Tenant-SaaS-Tenant-Order-List

    Super Agent

    By navigating to the Settings>Super Agents the super admin can see the agent list.

    bagisto-laravel-ecommerce-multi-tenant-saas-super-agent

    Add Agent

    By hitting the add agent button super admin can add the agent by providing the below information.

    Webkul-Laravel-eCommerce-Mulit-Tenant-SaaS-Super-admin-adding-agent-1

    First Name: Enter the first name

    Last Name: Enter the last name

    Email: Enter the email id

    Password: Set the password

    Status: Select the status

    saas2

    Also, as per the above image super admin can assign the role to the super-agent based on their choice or requirements.

    Roles

    Under the Roles, the super admin can create many roles also with custom permissions.

    bagisto-laravel-eCommerce-multi-tenant-super-admin-role

    Add Role

    bagisto-laravel-eCommerce-multi-tenant-super-admin-edit-role

    Name:- You have to enter the role name.

    Description:- Enter a description of the role.

    Permission:- You have to select the permission type for that particular role, once you select Administrator then all the administrator access will be given.

    bagisto-laravel-ecommerce-multi-company-saas-adding-roles

    At the same time, once you select custom then you have to select what type of permission you want to provide that rule and click on Save Rule.

    Super Locale

    Now the super admin can add the locale by clicking on Setting>>Super Locales>>Add Locale

    Webkul-Laravel-eCommerce-Mulit-Tenant-SaaS-super-admin-adding-locale

    Code: Enter the code

    Name: Enter the name

    Director: Choose the direction

    After that click on the Save Locale button

    Super Currencies

    Click on Setting>>Super Currencies>>Add Currency

    Webkul-Laravel-eCommerce-Mulit-Tenant-SaaS-Super-Currencies

    Add Currency

    Click on Setting>>Super Currencies>>Add Currency

    Webkul-Laravel-eCommerce-Mulit-Tenant-SaaS-super-admin-adding-currency

    Code: Enter the code

    Name: Enter the name

    Currency Symbol: Add the Currency Symbol

    Currency Exchange Rate

    Here You can find the currency exchange rate list as shown in the below image.

    Super admin can easily edit/delete the currency

    Adding Exchange Rate

    Here super admin can add the exchange rate. Click on Setting>>Currency Exchange Rates>>Add Exchange Rate

    Webkul-Laravel-eCommerce-Mulit-Tenant-SaaS-Super-admin-adding-exchange-rate

    Select Target Currency, enter the rate click on Save Exchange Rate

    Super Channels

    Here the super admin can see all their super-channel list. They can also edit his channel once they click on the pencil icon under the action section

    Webkul-Laravel-eCommerce-Mulit-Tenant-SaaS-Super-Channel-List

    By navigating to Settings>>Super Channels>>Super Channels List>>Edit Mode under the action filed, the super admin can edit the below settings.

    webkul-bagisto-laravel-ecommerce-multi-tenant-saas-edit-super-channel-1-4

    General

    Here super admin can find the Code, Name and Hostname of the channel

    Currencies and Locales

    The next step is to set your locales on a particular channel. Click on Setting>>Super Channels>>Super Channels List>>Edit Mode>>Locales(Select the locales(multi-select option))>>Save Channel

    webkul-bagisto-laravel-ecommerce-multi-tenant-saas-super-channel-4

    The super admin can also choose the default locale for the storefront.

    Currencies

    Click on Setting>> open the selected channel in Edit Mode

    • Currency:- You can select or multi-select currency as per your choice.
    • Default Currency:- You have to set your default currency that will be applicable throughout your eCommerce ecosystem

    Once the channel setting has been done click on Save Channel

    Design

    Home Page Content: Under this section super admin can enter the content and image for their storefront.

    Footer Content: The super admin can also enter the footer content that will also reflect on the storefront.

    webkul-bagisto-laravel-ecommerce-multi-tenant-saas-super-channel-Home-page-setting-3

    Logo and Favicon

    Add the logo and favicon image.

    webkul-bagisto-laravel-ecommerce-multi-tenant-saas-edit-super-channel-Logo-Favicon-3

    Home page SEO

    webkul-bagisto-laravel-ecommerce-multi-tenant-saas-edit-super-channel-home-page-SEO-settings-1

    Enter the Meta Title: Super meta title

    Meta Keywords: Enter super meta keywords

    Meta Description: Super meta description

    Send Email

    Now the super admin can send emails to all their tenants with just one click as you can see in the below image :

    bagisto-multi-tenant-saas-send-email-to-tenant

    After that, all the tenants will receive the email sent from the super admin.

    bagisto-multi-tenant-saas-super-admin-email

    CMS

    With the help of CMS(content management system), the super admin can create a new page, edit the page for their store.

    How To Create CMS Page

    To Create a CMS page, open the Super Admin Panel then follow the below step

    Add A New Page

    On SuperAdmin Sidebar, click on  CMS>>Pages>>Add Page 

    After clicking on the Add page, Below is the list of fields you need to fill under General.

    bagisto-multi-tenant-saas-cms-pages

    Page Title:-You have to fill in the page title.

    Channel:- Select the channel.

    Content:-  In this section, you have to write the content which you want to show on this page.

    Enter The SEO Detail

    bagisto-multi-tenant-saas-cms-page-seo

    Meta Title:-

    Provide the main title of the page by which your page will be known as.

    URL Key:-

    Enter the page URL key

    Meta Keywords:-

    The meta keyword for the page needs to be provided to improve its searchability on the search engine for specific keywords.

    Meta Description:-

    Enter the description so that the page can easily appear in search engine listing.

    Configuration

    By navigating to the Configure>Design super admin can add the Logo and Favicon Image as you can see in the below image

    bagisto-multi-tenant-saas-configuration

    Super Agent

    Here super admin will find the Email Address of their Super Agent.

    Webkul-Laravel-eCommerce-Multi-Tenant-SaaS-SuperAgent

    Content

    Under the content section super admin can add the footer text for their Landing Page.

    Webkul-Laravel-eCommerce-Mulit-Tenant-SaaS-super-admin-adding-footer-content

    Super Admin Landing Page

    Webkul-Laravel-eCommerce-Mulit-Tenant-SaaS-Super-admin-front-end

    Merchant Registration

    There is three-step to register on the SaaS module.

    bagisto-multi-tenant-merchant-registration-page

    Step1:- Merchant has to enter the Authentication Credentials like email, password, confirm the password then click on Continue.

    bagisto-multi-tenant-merchant-registration-process

    Step2:- Merchant has to enter the Personal details like First Name, Last Name, Phone number

    bagisto-multi-tenant-merchant-registration-process-2

    Step3:- Merchant has to enter the Organization details like user name and Organization name.

    bagisto-multi-tenant-merchant-registration-process-3

    Merchant Front end

    Now successfully seller front end created like below

    Webkul-Laravel-eCommerce-Mulit-Tenant-SaaS-Tenant-front-end

    Merchant Admin Panel

    The merchant can enter their admin panel with the URL like abc.test.com/admin/login such as below. You will get the backend likewise bagisto.

    bagisto-multi-tenant-saas-merchant-admin-panel

    Custom Domain

    In the SaaS module, Merchant can run their website on their own domain and they will get all benefits of the Custom domain. They will get benefits like below

    • Website will more flexible using own domain
    • Merchant can host their website where they want
    • No more hosting provider restrictions on your website
    • URLs and email addresses are entirely your own

    Domain Mapping is the most important so that customers can access their portal through their custom domain. So let’s discuss a few technical components which are used for domain mapping.

    DNS:- DNS stands for Domain name system. DNS is used to translate the IP address into a domain name, for example, if any can run “example.com” on their browser then the browser will perform a DNS query against the DNS server.

    So that the DNS server can take the hostname and resolve it to a numeric address so that the web browser can connect with the related IP address.

    There is a component DNS Resolver which is used to checking the hostname is available or not in the local cache. Then return to the browser or application.

    That’s all for Laravel eCommerce Multi-Tenant SaaS Module, still, have any issues feel free to contact us.

    Also, you can raise a ticket at https://bagisto.uvdesk.com/en/

    Current Product Version - 1.3.3

    Supported Framework Version - Bagisto: v1.3.3

    Blog Version - Bagisto: v1.3.3
    • Version v0.2.2
    • Version v0.1.6
    • Version Bagisto: v1.3.3
    • Version Bagisto: v1.2.0
    • Version Bagisto: v1.1.0.
    . . .
    Add a comment

    Leave a Comment

    Your email address will not be published. Required fields are marked*


    8 comments

  • Calixte
    Hello,

    Is it compatible with version 1.0 of bagisto?

    Regards,

    • Sanjana Singh (Moderator)
      Hello Calixte,

      Greetings for the day!!!

      Within 2 days, we will live the updated module which is compatible with bagisto v1.0.0.

      • Calixte
        Hello,

        thank you good news

        • saurav pathak (Moderator)
          Most welcome. Do join Bagisto’s social handle to receive all the latest updates viz Facebook, Twitter and Group
  • Nikhil
    Hello,

    By Multi-Tenant do you mean every store will there own database?

    • Sanjana Singh (Moderator)
      Hello Nikhil,

      Greetings for the day!!!

      Here in our system, we have implemented multi-tenancy on single database architecture. Do let us know if you have any further queries!! or you can raise a ticket on https://bagisto.uvdesk.com/

  • Sumit Rawat
    Hello Sanjana,

    Valuable informations from you..Thanx.
    I want to develop an hosted e-commerce platform..
    Is there any other way to do it by using readymade free scripts then buying a costly subscription?.
    Regards,
    Sumit Rawat

    • saurav pathak (Moderator)
      Hi Sumit,

      Thanks for your query. There are scripts but they are generic like building a multi-tenant system, now particularly eCommerce, you have to do further customisation. Bagisto Multi-tenant SaaS module is the very first of its kind that allows you to have your own hosted eCommerce platform like Shopify or BigCommerce. Also, the fee is just a one-time payment, not a subscription.

  • Back to Top
    I have tested and used Webkul Marketplace extension for years under Odoo and now recently also deployed it under Magento 2 and I have to say that not only the code is responsive but also the team :-) Working hard and politely on my little nerdy requests, bug fixing and customization.
    Mohamed Es Fih
    eSolutions for Business Adviser
    www.intracen.org
    Talk to Sales

    Global

    Live Chat

    Message Sent!

    If you have more details or questions, you can reply to the received confirmation email.

    Back to Home

    Table of Content