TopCommerce

TopCommerce - Multivendor Laravel Ecommerce System


TopCommerce is a complete e-commerce system to easily start your online business. If you have planned to buy a single or multivendor e-commerce shopping platform with a guest checkout feature and multiple themes, you can choose TopCommerce as the most suitable platform for single or multivendor e-commerce. It has a fully functional attribute management system. You can add unlimited product variants and product variant options with variant-wise prices.

This system is made using the popular Laravel PHP framework. Strong security is maintained during development, and there is no SQL injection, XSS attack, or CSRF attack possible.

TopCommerce has the following features.

Key Features

Payment Methods

Admin Features

User Features

Seller Features

You will need to make sure your server meets the following requirements:

The installation of this script is super easy. If you can install normal php based scripts on your server, you can install our script. We will tell you how to install this script step by step on a server.

If you extract the zip file, you will see that there are total three folders.

The folder names are: sql, documentation and main_files. The "main_files >> main_files" folder is the main laravel source codes. The "sql" folder contains the main database file "database.sql"

Creating Database using Cpanel

1. Login to your hosting's cpanel using the login information. You will see an interface like this:

2. You will get a search section in the cpanel. Search there by writing the word "database". You will get some options. Click on "MySQL® Database Wizard" option.

3. Then in Step 1, you will have to create a database. In the text field, give your database name and click on next step.

4. Then in Step 2, you will have to create a database user. Give your username and passwords here. Then click on "Create User" button.

5. Now a permission page will come. Just check the tick mark on "ALL PRIVILEGES" and you will see all the options will be automatically checked.

6. Click on the "Next Step" button in the bottom.

7. All task related to database is done.

Uploading Files using Cpanel

1. In the search field of your cpanel, write the word "file". You will get a "File Manager" option. Click on that option.

2. Search for the "public_html" and go into there.

3. Now go to the folders that you got after extracting the main zip and compress the folder "main_files" using any software like winrar.

4. The zip file will be like this.

5. In the cpanel's "public_html", upload this zip file.

6. You will get an interface like this.

7. Drag and drop the zip file here or just click on the "Select File" and select the file from your computer. You will see a progress of uploading file. Wait until it is finished.

8. After finishing the upload, you will see a green bar. It indicates that upload is successful.

9. Now close the upload window. In the public_html section, press on "Go" button to refresh the page. Then you will see the zip file in the right side.

10. Do right click on that file and select "Extract" option.

11. Press on "Extract Files" button.

12. It will take only a few minutes. After finish, you will get a window like this.

13. Just close this window. Then double click on the "main_files" folder and go into there.

14. Now click on the "Select All" from top section.

15. Click on the "Move" option.

16. Delete the "main_files" from the box. Only keep this "/public_html/". Then click on "Move Files".

17. Now, click on "Up One Level".

18. Right click on ".env" file:

19. Click on "Edit":

20. Then Click the "Edit" button:

21. Now edit this file and put the app url, database name, username and password you created previously here:

* Warning: If you are using MySQL version 5.6 or earlier, you should set DEFAULT_SCHEMA_STRING_LENGTH="191" in your .env file to avoid issues with indexing columns using the utf8mb4 character set or else leave it as it is.

DEFAULT_SCHEMA_STRING_LENGTH

22. Then click on the "Save Changes" button for save the changes

23. Now, go back to the homepage and scroll down, or search again as before using the keyword 'phpmyadmin'. Click on the 'phpMyAdmin' option:

24. 8. Now the main phpmyadmin page will come. Click on the newly created database "wsus_test_db" from the left side.:

25. Click on the "Import" option from top.:

26. Now, view the database import interface as shown below. Then click the "Browse" button:

27. Navigate to the 'script' folder and then to the 'database' folder:

28. Select the 'database.sql' file:

29. Then Click the "Open" button:

30. Then click on the "Import" button from bottom.:

Congratulations! Your task is done and you can use our script without any problem. :)

Uploading Files using FTP

1. Download any FTP client on your computer like "FileZilla". Search on Google by "FileZilla" or go to their website to download:
https://filezilla-project.org/

2. Use the first option to download

3. After download, install it and open. The interface will be like this:

4. You can collect your FTP information contacting your hosting provider. Or, going to cpanel, you can create your FTP. In cpanel, search for "FTP".

5. Put ftp username, password in the form. Become sure, you delete the marked box data in the following image.

6. Click on "Create FTP Account" button.

7. Your FTP information will be like this:
FTP Host: {your hosting provider will give you host name}
FTP Port: 21
FTP Username: testftp@websolutionus.com
FTP Password: {that you gave while creating the FTP}

8. Now in filezilla put those information and click on "Quickconnect" button.

9. If connection is successful, you will get an interface like this:

10. Now in the left side box, go to the location where you have extracted the script's file. And in the right side, go to public_html.

11. Then right click on the "main_files" from left side box and click on "Upload". All the files then will be uploaded into the "public_html" of the right side.

The default credentials of the script are:

Admin Login

URL: https://yourdomain.com/admin
Login Email: admin@gmail.com
Login Password: 1234

Student Login

URL: https://yourdomain.com/login
Login Email: student@gmail.com
Login Password: 1234

Instructor Login

URL: https://yourdomain.com/login
Login Email: instructor@gmail.com
Login Password: 1234

For the beginning , Admin need to login first. URL: https://www.yourwebsite.com/admin/login See:

Write the credentails you have saved on the time of Installation

Dashboard

Notifications

You can manage Notifications. See:
  1. Mark All as read
  2. & 3. View All notfications
  1. Delete selected notifications or all notifiations

After login, Setup your ecommerce options. You can access this by clicking on the links, instructed on the image. See:

After seting up the ecommerce options then, select your default theme. You can access this by clicking on the links, instructed on the image or Dashboard >> Manage Theme >> Change Theme. See:

In Demo mode, you can choose whether to show all the themes at once.

Website General Setting can be set up from the admin panel. In this section admin can be change the website title, logo, favicon, copyright, time & date format, default avater, maintenance mode and many more. Go to Setting >> General Setting. See:

Or
  1. Update the App Name
  2. Update the background image of the login page.
  3. This is for security! If you want to change the login URL from "admin/login" to something else, then you can edit this. But remember, if you forget, you can only retrieve the URL from the database.
  4. Click Update to save the changes

Go to Setting >> General Setting >> Time & Date Setting. See:

Go to Setting >> General Setting >> Logo & Favicon. See:

Go to Setting >> General Setting >> Cookie Consent. See:

Go to Setting >> General Setting >> Custom Pagination. See:

Go to Setting >> General Setting >> Default Avater. See:

Go to Setting >> General Setting >> Breadcrumb image. See:

Go to Setting >> General Setting >> Copyright Text. See:

Go to Setting >> General Setting >> Search Engine Crawling. See:

Go to Setting >> General Setting >> Maintenance Mode. See:

Google Recaptcha can be set up from the admin panel. Go to "Setting" from the sidebar. See:

To get your recaptcha keys, go to this link:
https://www.google.com/recaptcha/admin/create
Select version 3.

Add your website's domain name or subdomain name here and after submit you will get a site key and secret key.

Google Analytics can be set up from the admin panel. Go to "Setting >> Credential Setting >> Google Analytic". See:

Google Tag Manager can be set up from the admin panel. Go to "Setting >> Credential Setting >> Google Tag Manager". See:

Facebook pixel credential can be set up from the admin panel. Go to "Setting >> Credential Setting >> Facebook pixel". See:

To get your facebook app id. Go to this link and create a new app:
https://developers.facebook.com/

Social Login credential can be set up from the admin panel. Go to "Setting >> Credential Setting >> Social Login". See:

To get google credentials. go to this link and create a new app :
https://console.developers.google.com

Tawk Live Chat can be set up from the admin panel. Admin can be enable and disable live chat option. Go to "Setting >> Credential Setting >> Tawk Chat". See:

To get your tawk live chat link . goto this link https://dashboard.tawk.to/login add your website's domain name or subdomain name here and after submit you will get a tawk live chat link.

SMTP Email can be set up from the admin panel. Go to "Setting >> Email configuration > Setting". See:

Email template can be set up from the admin panel. Go to "Setting >> Email configuration > email template". See:

To Manage website's multi-language feature. Go to "Setting >> Manage Language". See:

You can setup seo settings from the admin panel. Go to "Setting >> SEO Setup". See:

You can generate sitemap with the product links from the admin panel. Go to "Setting >> Sitemap". See:

Payment Method can be set up from the admin panel. Go to "Setting >> Payment Gateway" from sidebar. See:

Stripe Payment

Paypal Gateway

Paypal Payment Method can be set up from the admin panel. Go to "Payment Method >> Paypal Payment" from sidebar. See:
To get your paypal client id and secret id, goto https://developer.paypal.com/developer/accounts and create a new app and show app details See:

Bank Payment

Cash On Delivary

Razorpay Payment

To get your razorpay credentails, goto https://razorpay.com/

Flutterwave Payment

To get your flutterwave credentails, goto https://dashboard.flutterwave.com/

Mollie Payment

To get your mollie credentails, goto https://www.mollie.com/

Paystack Payment

To get your paystack credentails, goto https://dashboard.paystack.com

Instamojo Payment

To get your instamojo credentails, goto https://www.instamojo.com/

SslCommerz Payment

Crypto Payment

Setup Multi-currency system. Go to Dashboard >> Setting >> Multi-currency. See:

Setup tax amounts. Go to Dashboard >> Setting >> Tax. See:

CSS Stylesheet

Setup custom codes (css). Go to Dashboard >> Setting >> Custom Code >> CSS. See:

Javascripts

Setup custom codes (js). Go to Dashboard >> Setting >> Custom Code >> JS. See:

Clear cache. Go to Dashboard >> Setting >> Clear Cache. See:

Clear database. Go to Dashboard >> Setting >> Clear Database. See:

Manage Admin. Go to Dashboard >> Setting >> Manage Admin. See:

Manage Role and Permissions. Go to Dashboard >> Setting >> Role & Permissions. See:

Manage Addons. Go to Dashboard >> Setting >> Manage Addon. See:

Manage System Update. Go to Dashboard >> Setting >> System Update. See:

Manage Admin Profile & Admin Password. Go to Dashboard >> Profile. See:

Product Category

Manage Product Category. Go to Dashboard >> Manage Product >> Category List. See:

Add Child Category

Product Brands

Manage Product Brands. Go to Dashboard >> Manage Product >> Brands List. See:

Product Labels

Manage Product Labels. Go to Dashboard >> Manage Product >> Labels. See:

Product Unit

Manage Product Units. Go to Dashboard >> Manage Product >> Unit Types. See:

Product Tags

Manage Product Tags. Go to Dashboard >> Manage Product >> Product Tags. See:

Product List and filters

Manage Product. Go to Dashboard >> Manage Product >> Product List. See:
  1. Filter the list using keywords, per page, status, brand, category etc.
  2. Change the status from this toggle button
  3. Change the approval status from this toggle.
  4. Edit, Delete, Add Gallery Images, show reviews, product details, product attributes/options from this dropdown menu
  5. Add new product

Add product

Manage Flash Deal

Edit product

Product Variant

Before adding variant, add product attribute first.

Product Gallery

Manage Seller Product. Go to Dashboard >> Seller Products. See:

Manage Product Attribute. Go to Dashboard >> Manage Product >> Attribute. See:

Manage Product Reviews. Go to Dashboard >> Manage Product >> Product Reviews. See:

Manage Product Inventory. Go to Dashboard >> Manage Product >> Product Inventory. See:

Manage Product Price. Go to Dashboard >> Manage Product >> Product Price. See:

Manage Shipping Rules. Go to Dashboard >> Shipping Rules. See:

Manage Orders. Go to Dashboard >> Manage Order >> Order History. See:

  1. Filter Order data by keyword, customer, order status, payment status, sort by, par page
  2. Show order details
  3. Order Invoice
  4. Delete a order

Update Order status

you can update the order status from this button. See:

Update Payment status

you can update the order payment status from this button. See:

Check Bank Payment and approve

you can update the order payment status from this button. See:

Cash On Delivery/ Hand Cash

you can update the order payment status from this button. See:

Manage Order Transaction history. Go to Dashboard >> Manage Order >> Transaction History. See:

Manage Order Status history. Go to Dashboard >> Manage Order >> Status Update History. See:

Manage Coupons and history. Go to Dashboard >> Manage Coupon >> Coupon List. See:

Manage Country, State, City. Go to Dashboard >> Manage Location >> See:

Manage Customers, Pending, Banned, Mail to customers. Dashboard >> Manage Customers >> All Customer. See:

Manage Sellers. Dashboard >> All Sellers. See:

Manage KYC Type. Dashboard >> Manage KYC >> KYC Type. See:

Manage KYC Applications. Dashboard >> Manage KYC >> KYC Applications. See:

Manage Payment Withdraw. Dashboard >> Withdraw Payment >> Withdraw List. See:

Withdraw Method

Manage Seller Wallet. Dashboard >> Seller Wallet >> Wallet History. See:

  1. Enable-Disable automatically approval of wallet balance adding after a complete payment of orders.
  2. Show Details

Manage Theme and Theme Section Dynamic Date. You can update the selected theme data from this page. Dashboard >> Manage Theme. See:

Manage Pages Dynamic Data. Dashboard >> Manage Pages. See:

Manage your custom pages. Dashboard >> Custom Page. See:

Manage your blogs, comments, categories of blog. Dashboard >> Manage Blogs. See:

  1. Enable or Disable auto comment approval.
  2. Reply directly from this page

Manage FAQ. Dashboard >> FAQs. See:

Manage Newsletter. Dashboard >> Newsletter. See:

Manage Testimonial. Dashboard >> Testimonial. See:

Manage Contact Messages. Dashboard >> Contact Messages. See:

  • Update the receiving admin email of the contact message.
  • Click top right corner user icon and follow the steps. See:

    Click top right corner user icon and follow the steps. See:

    Click top right corner user icon and follow the steps. See:

    Click top right corner user icon and follow the steps. See

    Delete Account

    Follow the steps, see:

    Order Invoice

    Pay unpaid order

    Cancle unpaid order

    Add Delivered Order Review

    Follow the steps, see:

    Follow the steps, see:

    Follow the steps, see:

    Follow the steps, see:

    Follow the steps. See:

    or from User Panel

    Follow the steps. See:

    Or from User Panel

    Click top right corner user icon and follow the steps. See:

    Follow the steps. See:

    Follow the steps. See:

    Follow the steps. See:

    Follow the steps. See:

    Follow the steps. See:

    1. Filters
    2. Manage Publish status
    3. Update or manage product variants, gallery, show details etc.
    4. Add new product
    for other actions follow the same guideline as admin panel product manager guideline.

    Manage Product Reviews. Go to Dashboard >> Product Reviews. See:

    Manage Product Inventory. Go to Dashboard >> Product Inventory. See:

    Manage Product Price. Go to Dashboard >> Product Price. See:

    Follow the steps. See:

    Follow the steps. See:

    Follow the steps. See:

    If you need any help from us, you can contact via our support email:
    websolutionus1@gmail.com

    Our support will reply within 24-48 hours.

    Version 3.0 — Breaking Change

    Notes / Compatibility

    Starting from version 3.0.0, the new versioning system will be in effect. Updates will only be supported for installations running version 3.0.0 or higher. Users on versions below 3.0.0 will need to perform a fresh installation.

    Added

    Changed / Improved

    Performance / Tech

    Version 2.0

    Overall:
    - Upgraded Laravel 8 to 10 Version.
    - Added Project Installer.
    - Optimized Project Update Feature.
    

    Version 1.7

    Overall:
    - ADDED : User own account delete option
    - UPDATED : User panel sidebar
    - OPTIMIZED : Home page speed optimized
    - OPTIMIZED : Css file optimized
    - OPTIMIZED : jQuery file optimized
    - ADDED : Script version auto update option
    
    

    Version 1.6

    Overall:
    - Home page add to cart product quantity increment issue fixed
    - Shop page add to cart product quantity increment issue fixed
    - Product detail page add to cart product quantity increment issue fixed
    - Flash sale page add to cart product quantity increment issue fixed
    - Campaign page add to cart product quantity increment issue fixed
    - Home page speed optimized
    - Shop page speed optimized
    - Product detail page speed optimized
    - Flash sale page speed optimized
    - Campaign page speed optimized
    - Home page code optimized
    - Shop page code optimized
    - Product detail page code optimized
    - Flash sale page code optimized
    - Campaign page code optimized
    
    Changed Files:
    - resources/views/index.blade.php
    - resources/views/ajax_products.blade.php
    - resources/views/campaign_detail.blade.php
    - resources/views/flash_deal.blade.php
    - resources/views/layout.blade.php
    - resources/views/product_detail.blade.php
    
    

    Version 1.5

    Overall:
    - Paymongo payment gateway integrated
    
    Changed Files:
    - app/Http/Controllers/Admin/PaymentMethodController.php
    - app/Http/Controllers/User/CheckoutController.php
    - app/Http/Controllers/User/PaymentController.php
    - resources/lang/en/admin.php
    - resources/lang/en/user.php
    - resources/lang/en/user_validation.php
    - resources/views/admin/payment_method.blade.php
    - resources/views/payment.blade.php
    - routes/web.php
    
    New Files:
    - app/Models/PaymongoPayment.php
    

    Version 1.4

    Overall:
    - Some minor issue fixed
    Changed Files:
    - Controllers\User\CheckoutController.php
    - Controllers\Auth\LoginController.php
    

    Version 1.3

    Overall:
    - Homepage campaign countdown issue fixed
    
    Changed Files:
    - public/user/css/style.css
    - public/user/css/responsive.css
    - public/user/js/main.js
    - resources/views/flash_deal.blade.php
    - resources/views/index.blade.php
    

    Version 1.2

    Overall:
    - Login with social media issue fixed
    - Product validation issue fixed
    - Seller approved issue fixed
    
    Changed Files:
    - Controller/Admin/ProductController.php
    - Controller/Admin/SellerController.php
    - Controller/Seller/SellerProductController.php
    - App\Models\User.php
    

    Version 1.1

    Overall:
    - Campaign offer calculation issue fixed
    - Product youtube video link issue fixed
    
    Changed Files:
    - views/ajax_products.blade.php
    - views/campaign_detail.blade.php
    - views/compare.blade.php
    - views/flash_deal.blade.php
    - views/index.blade.php
    - views/layout.blade.php
    - views/product_detail.blade.php
    - views/user/wishlist.blade.php
    - controllers/CartController.php
    - controllers/HomeController.php
    - controllers/Admin/SellerProductController.php
    - controllers/Admin/ProductController.php
    - controllers/Auth/LoginController.php
    

    Version 1.0

    Initial Release
    

    Demo

    Front End: https://demo.websolutionus.com/topcommerce/
    Admin Panel: https://demo.websolutionus.com/topcommerce/admin
    Admin Panel Login: admin@gmail.com | 1234
    User Panel: https://demo.websolutionus.com/topcommerce/login
    User Panel Login: user@gmail.com | 1234
    Seller Panel: https://demo.websolutionus.com/topcommerce/login
    Seller Panel Login: seller@gmail.com | 1234