• +91-9950348952
  • lizarweb@gmail.com

Web cart Multi-Location Commerce

Wwb‑Cart Multi-Location eCommerce solution to help online merchants easily open an online store where multiple vendors sell their products, services, rentals and electronic goods through a single storefront, whether it be a small online mall or a huge marketplace like eBay or Amazon. You can check the web-cart demo and documentation.

For Live Demo: Click Here

For More Details: Click Here

Key Contents

1. Installation

1.1 Installing Locally

1.1.1 Setting up Virtual Host

1.1.2 Enabling OpenSSL PHP Extension and other PHP configuration

1.2 Installing on Virtual Private Server or Shared hosting

1.2.1 Enabling OpenSSL PHP Extension and other PHP configuration

2. Configuration

2.1 Environment Configuration

2.2 Business Settings – Timezone, Currency etc.

2.3 Site Settings – Logo, Title etc.

2.4 Email Configuration

2.5 Payment Settings

2.6 Subscribers Settings

2.7 Profile Settings

3. Settings Locations for Stores

3.1 Adding Roles with Permissions

3.2 Assigning Staff to a Store

4. Storefront

4.1 Login and Signup

4.2 Account Overview

4.2.1 Viewing Orders

4.2.2 Shipping Addresses

4.2.3 Editing Profile

4.3 Changing Store’s Location

4.4 Filtering and Sorting Products

4.5 Shopping Cart

4.5.1 Selecting Shipping Address

4.5.2 Choosing Payment Method

4.6 Promotional Deals

4.7 Promotional Banners

4.8 Customizing Page Sections

5. Admin Panel

5.1 Product and Catalog Management

5.1.1 Managing Products

5.1.1.1 Adding Categories

5.1.1.2 Adding Brands

5.1.1.3 Adding Product’s Specifications

5.1.4.4 Adding Products

5.1.4.5 Approving Product’s Ratings and Reviews

5.1.2 Orders Management

5.2 Customers Management

5.3 Deals, Coupons and Discounts

5.4 Sales Report

5.5 Adding Custom Pages

5.5.1 Adding Page Sections

5.6 Promotional Banners

5.7 Applying Custom CSS


1. Installation

Webcart is made with PHP Laravel framework. Basically, setting up any project made with Laravel is required to perform these major steps:

1. Generate APP KEY.
2. Setup database credentials in “.env” file.
3. Perform database migration and seeding.

1.1 Installing Locally

Step 1. Download XAMPP (or WAMP) and install it

https://www.apachefriends.org/index.html

Step 2. Navigate to “htdocs” (in case of XAMPP) or “www” (in case of WAMP) directory. For XAMPP, by default it is located at: “C:\xampp\htdocs”.

Step 3. Inside of “htdocs” or “www”, create a new directory, let’s call it “webcart”
C:\xampp\htdocs\webcart

Step 4. Copy “webcart.zip” and unzip it in that directory. So, you have files like:
C:\xampp\htdocs\webcart\.env
C:\xampp\htdocs\webcart\composer.json
and so on.

Note:

“webcart.zip” is provided inside of the folder named “webcart” in the package.

Step 5. Open “.env” file, and fill in database credentials.

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_webcart
DB_USERNAME=root
DB_PASSWORD=

Step 6. Open XAMPP and start Apache and MySQL server. Then, open your web browser and navigate to http://localhost/phpmyadmin

Step 7. Create a new database and name it “laravel_webcart”, the same that you named it in “.env” file.

Step 8. Navigate to “webcart” directory in your terminal or command prompt:

> cd C:\xampp\htdocs\webcart

And, run command from this directory:

> php artisan webcart:install

Provide email, username and password for Super Admin and confirm. Subsequently, it will generate APP KEY, perform database migration and seeding.

Note:

You can also do this by running these commands in order:

> php artisan key:generate
> php artisan migrate
> php artisan db:seed

Or, simply run:

> php artisan key:generate

After, you can import “laravel_webcart.sql” to your database using phpmyadmin. The default username for Super Admin is “admin” and default password is “admin”. You can change these credentials later.

Note:

“laravel_webcart.sql” is provided inside of the folder named “guide” in the package.

Wait for installation to finish. After, you can navigate to http://localhost/webcart/public in your browser.

1.1.1 Setting up Virtual Host

If you want to use URL like http://webcart.dev or http://webcart.local in place of “http://localhost/webcart/public”, then you can set up virtual host.

To setup virtual host, you need to configure Apache’s virtual host.

Open “C:\xampp\apache\conf\extra\httpd-vhosts.conf” file in your editor and add these lines at the end and save it:

<VirtualHost *:80>
    DocumentRoot “C:/xampp/htdocs/webcart/public”
    ServerName webcart.local
</VirtualHost>

Also, you need to edit “hosts” file. Copy “C:\Windows\System32\drivers\etc\hosts” file to Desktop and open it in your editor. Add these lines to the end and save it:

127.0.0.1       localhost
127.0.0.1       webcart.local

Then, copy “hosts” file from Desktop and paste it back to “C:\Windows\System32\drivers\etc”. Finally, restart apache server and navigate to http://webcart.local in your browser.

1.1.2 Enabling OpenSSL PHP Extension and other PHP configuration

In your php.ini file which is located inside of directory “C:\xampp\php” in case of XAMPP, uncomment these lines if commented:

For example:

;extension=php_openssl.dll is commented. Remove ; to uncomment it.
extension=php_openssl.dll

php.ini

curl.cainfo=“PATH_TO\cacert.pem”
extension=php_openssl.dll
openssl.cafile=“PATH_TO\cacert.pem”
max_execution_time=120
upload_max_filesize=50M
post_max_size=50M

Note:

“cacert.pem” is provided inside of the folder named “guide/certificates” in the package. You may place it inside of xampp installation directory and get its path.

Now, open XAMPP and restart Apache server. Then, navigate to http://webcart.dev in your browser. After, you can login with username/email and password.

1.2 Installing on Virtual Private Server or Shared hosting

Make sure that PHP Version is greater than or equal to 5.6.4
php >= 5.6.4

Step 1. Let’s say you have www/ directory in your server, which is accessible to public via domain.

For example:

/Users/weblizar/www/
is served from https://web-cart.com

Create a new directory at the same level /www. For example, the directory which you have created is “webcart”.
/Users/weblizar/webcart/

Step 2. Copy “webcart.zip” and paste it inside “/webcart” directory.
/Users/weblizar/webcart/webcart.zip

Then, extract “webcart.zip” inside “/webcart” directory. Here, it is not accessible to the web.

Note:

“webcart.zip” is provided inside of the folder named “webcart” in the package.

Step 3. Cut all content inside the “/webcart/public” directory to “www/” directory.

For example:

/Users/weblizar/webcart/public/index.php to /Users/weblizar/www/index.php

Similarly, cut all other files inside:

/Users/weblizar/webcart/public/ to /Users/weblizar/www/

Step 4. Delete public directory which is now empty “/webcart/public”. Later, we will create symbolic link of this.

Step 5. Modify these two lines of “index.php” in /Users/weblizar/www/index.php to update the path.

require __DIR__.'/../webcart/bootstrap/autoload.php';
$app = require_once __DIR__.'/../webcart/bootstrap/app.php';

Step 6. Create a new symbolic link for the target /Users/weblizar/www directory using the command:

> ln -s /Users/weblizar/www /Users/weblizar/webcart/public

Here, the symbolic link is “/Users/weblizar/webcart/public” and the target is “/Users/weblizar/www”.

Also, to create or update a symlink, you can use the command:

> ln -sf /Users/weblizar/www /Users/weblizar/webcart/public

Step 7. Configure database connection in “.env” file located at /Users/weblizar/webcart/.env

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_webcart
DB_USERNAME=root
DB_PASSWORD=

Step 8. Provide recursive permissions to these:

> chmod -R 777 /Users/webcart/storage/framework
> chmod -R 777 /Users/webcart/storage/logs
> chmod -R 777 /Users/webcart/bootstrap/cache
> chmod -R 777 /Users/webcart/config
> chmod -R 777 /Users/www/public/img
> chmod -R 777 /Users/www/public/css/custom
> chmod -R 777 /Users/www/public/resources

Step 9. Using SSH to your server, navigate to /Users/weblizar/webcart/ and run
command:

> php artisan webcart:install

Provide email, username and password for Super Admin and confirm. Subsequently, it will generate APP KEY, perform database migration and seeding.

Note:

You can also do this by simply running command:

> php artisan key:generate

After, you can import “laravel_webcart.sql” to your database using phpmyadmin. The default username for Super Admin is “admin” and default password is “admin”. You can change these credentials later.

Note:

“laravel_webcart.sql” is provided inside of the folder named “guide” in the package.

Wait for installation to finish. After, you can navigate to https://web-cart.com in your browser. After, you can login with username/email and password.

1.2.1 Enabling OpenSSL PHP Extension and other PHP configuration

You need to have access to php.ini file in your server to set these if not set already, then uncomment these lines if commented:

For example:

;extension=php_openssl.dll is commented. Remove ; to uncomment it.
extension=php_openssl.dll

php.ini

curl.cainfo=“PATH_TO\cacert.pem”
extension=php_openssl.dll
openssl.cafile=“PATH_TO\cacert.pem”
extension=php_openssl.dll
max_execution_time=120
upload_max_filesize=50M
post_max_size=50M

Note:

“cacert.pem” is provided inside of the folder named “guide/certificates” in the package. You may place it in your server and get its path.

2. Configuration

2.1 Environment Configuration

To turn off debugging, open “config/app.php” and search for this line:

'debug' => env('APP_DEBUG', false),

Change it to:

'debug' => false,

To set environment to production, open “config/app.php” and search for this line:

'env' => env('APP_ENV', 'local'),

Change it to:

'env' =>'production',

and so on.

2.2 Business Settings – Timezone, Currency etc.

You can access business settings from admin panel. For that, you need to login with an account having permission to access business settings. Next, you can navigate to ‘Manage’ > ‘Settings’ > ‘Business’.

Navigate to Admin Panel - Webcart

 

Access Business Settings - Webcart

– “App Name” – will be used at the time of sending emails.

– “Timezone”   represents application’s timezone.

– “Currency” – this should be set only one time. Also, currency conversion of your product’s price will not be done if changed. For this reason, this should not be changed.

SEO for Home Page:

– “Meta title”, “Meta description”, “Meta keywords”

– “Google Analytics Script”

Note:

If “Meta title” is unset, then “App Name” will be used.

2.3 Site Settings – Logo, Title etc.

Navigate to ‘Manage’ > ‘Settings’ > ‘Overview’. Here, you will find:

Site Settings - Webcart

Store:

– “Enable Maintenance Mode” – if maintenance mode is enabled, then only staff with any role can access admin panel. Also, you can login using using https://web-cart.com/login.

– “Contact Email” – to be appeared in footer.

– “Logo Name” – to be appeared in top navigation.

– “Social Links” – to be appeared in footer.

Tax / Shipping:

– “Tax Rate (in %)” – applies to total order value.

– “Shipping Cost” – applies to total order value.

– “Shipping Cost applies below price” – applies only if total order value is below this price value.

For example:

If total order value is 200, “Shipping Cost” is 100 and “Shipping Cost applies below price” is 499, then total will be 300 after applying shipping cost.

Admin Panel:

– “Enable Table Data Export” – allows data-tables to be exported to PDF, CSV, Excel, Print etc.

Google Recaptcha:

– “Enable Google Recaptcha” – enable “Google Recaptcha” validation when signing up.

Also, you will need to provide “Public Key” or “Site Key” and “Private Key” or “Secret Key”.

2.4 Email Configuration

Email Configuration - Webcart

Template Layouts:

Here, you can customize email templates for various emails such as for “Order Placed”, “Payment Failed” etc.

Email Configuration:

You can select from “SMTP” or “Mailgun” as email carrier.

If you select “Mailgun”,  then you will need to provide “Mailgun Domain” and “Mailgun Secret”.

If you select “SMTP”, then you will need to provide “Mail Host”, “Mail Port”, “Mail Encryption”, “SMTP Server Username” and “SMTP Server Password”.

For example:

If you want to use gmail as your email carrier, then “Mail Host” will be “smtp.gmail.com”, “Mail Port” will be “587”, “Mail Encryption” will be “tls”, “SMTP Server Username” will be your gmail account’s email address and “SMTP Server Password” will be your gmail account’s password. Also, you will need to enable less secure app from:
https://myaccount.google.com/lesssecureapps?pli=1.

2.5 Payment Settings

Webcart supports these payment methods: PayPal, Stripe, Razorpay and Instamojo. Also, you can enable or disable them.

Payment Settings - Webcart

PayPal:

– “PayPal Payment” – Enable / Disable PayPal Payment Method.

Also, you will need to provide “API Username”, “API Password” and “API Secret”.

Stripe:

– “Stripe Payment” – Enable / Disable Stripe Payment Method.

Also, you will need to provide “Stripe Key” and “Stripe Secret”.

Razorpay:

– “Razorpay Payment” – Enable / Disable Razorpay Payment Method.

Also, you will need to provide “Razorpay Key” and “Razorpay Secret”.

Instamojo:

– “Instamojo Payment” – Enable / Disable Instamojo Payment Method.

Also, you will need to provide “Instamojo API Key” and “Instamojo Auth Token”.

2.6 Subscribers Settings

There are two ways to collect subscribers. First, you can collect and view subscribers from the application itself. Second, you can use “MailChimp” instead. If you enable “MailChimp Subscription”, then list of subscribers will be managed by “MailChimp”. Also, you will need to provide “MailChimp API” and “MailChimp List ID”.

Subscribers Settings - Webcart

Moreover, you can import subscribers From CSV File.

View Subscribers - Webcart

For example, “data.csv” is the file you can import which contains:

Email, Status
test1@gmail.com, Confirmed
test2@gmail.com, Pending

If user subscribes from storefront, then confirmation email will be sent. In other words, subscriber’s email has to be verified or confirmed.

Email Template:

Finally, you can choose email carrier and customize the subscription confirmation email that will be sent to a user.

2.7 Profile Settings

This allows current user to edit profile. Also, “Super Admin” is allowed to change location from here. If email is change, then email verification link will be sent to the user and, it has to be verified.

Profile Settings - Webcart

3. Settings Locations for Stores

Navigate to ‘Manage’ > ‘Locations’ > ‘View Locations’. Here, you can find current locations of stores. By default, there is only one location. Furthermore, you can edit its name, address and contact number.

Settings Locations for Stores - Webcart

If your business needs more than one location, then you can go to  ‘Manage’ > ‘Locations’ > ‘Add Location’ to add a new location for your business. Later, you can assign staff to this location with access control.

Add Location - Webcart

3.1 Adding Roles with Permissions

Navigate to ‘Manage’ > ‘Staff’ > ‘Roles’ > ‘View Roles’. Here, you can find all the roles that you can assign to your staff. There are certain permissions attached to a role which can be customized.

Adding Roles with Permissions - Webcart

If you want to add more roles with some access control, then you can go to ‘Manage’ > ‘Staff’ > ‘Roles’ > ‘Add Role’. Next, you will need to provide name of role and permissions which are available to this role. Later, you can assign this role to a staff by editing staff’s profile.

Add Role - Webcart

3.2 Assigning Staff to a Store

To add staff to a store, you will need to assign store’s location or simply “Location” to a staff.

Navigate to ‘Manage’ > ‘Staff’ > ‘Add Staff’. Here, you can add new staff. Also, note that the location of new staff will be determined by location of admin who is adding that staff. Means, you will first need to change your own location which you can do either from ‘Manage’ > ‘Dashboard’ > ‘Select Location’ or by simply editing your profile from ‘Manage’ > ‘Settings’ > ‘Profile’. After that, whenever you add new staff, they will be assign to your current store’s location.

Select Location - Webcart

Add Staff to Location - Webcart

Note:

Changing location will filter the admin panel’s data based on the location.

4. Storefront

4.1 Login and Signup

You can login with username or email and password. Also, when signing up, the email has to be verified. The email verification link will be sent using email carrier that is set in email configuration. So, make sure to configure SMTP or Mailgun in Email Settings for sending emails. Moreover, you can enable or disable Google Recaptcha.

4.2 Account Overview

4.2.1 Viewing Orders

Customers can check the current status and overall status of their orders. Also, they can print invoices. And, for downloadable products, customers can access it only after payment is made.

Viewing Orders - Webcart

4.2.2 Shipping Addresses

Customers can edit or remove their shipping addresses.

Shipping Addresses - Webcart

4.2.3 Editing Profile

Customers can edit their profiles. Also, if the email is change, then it has to be verified.

Editing Profile - Webcart

4.3 Changing Store’s Location

Users can browse products by store’s location. Also, this will filter products, categories, brands and banners, coupons, discounts associated with the location.

Changing Store’s Location - Webcart

4.4 Filtering and Sorting Products

Products can be filtered by category, brand, specification and price range. Also, they can be sorted by price, popularity, ratings and reviews.

4.5 Shopping Cart

Shopping Cart - Webcart

4.5.1 Selecting Shipping Address

The customer will be prompted to provide a new shipping address or select an existing shipping address at the time of checkout.

Selecting Shipping Address - Webcart

4.5.2 Choosing Payment Method

Following payment methods are available:

Cash on Delivery (COD)
Paypal – Currency will be converted to USD using Google Finance Converter.
Stripe – Currency will be converted to USD using Google Finance Converter.
Razorpay – Currency will be converted to INR using Google Finance Converter.
Instamojo – Currency will be converted to INR using Google Finance Converter.

Choosing Payment Method - Webcart

4.6 Promotional Deals

Deal can be created from the admin panel. Also, it will appear in order according to its priority.

Promotional Deals - Webcart

4.7 Promotional Banners

There are positions where you can place promotional banners in these pages.

Home Page Banners – Main Slider or On Right Side
Category Page Banners – Main Slider or Below Filters
Brand Page Banners – Main Slider or Below Filters

Promotional Banners - Webcart

Category and Brand Page Banners - Webcart

4.8 Customizing Page Sections

There are various page sections available in different pages which can be customize from the admin panel.

5. Admin Panel

5.1 Product and Catalog Management

5.1.1 Managing Products

When you want to add a new product. First, you need to make sure that category, brand, specifications are all set.

5.1.1.1 Adding Categories

You can add a new category from ‘Manage’ > ‘Products’ > ‘Categories’. Webcart supports multi-level categories. Also, if “Parent Category” is set to “None”, then it is a root category. Furthermore, you can select specifications which will allow filtering of products by specification in category page.

Adding Categories - Webcart

5.1.1.2 Adding Brands

You can add a new brand from ‘Manage’ > ‘Products’ > ‘Brands’.

Adding Brands - Webcart

5.1.1.3 Adding Product’s Specifications

You can add a new specification from ‘Manage’ > ‘Products’ > ‘Add Specifications’. Also, users can filter products according to specification.

Adding Product’s Specifications - Webcart

5.1.4.4 Adding Products

To add a new product to a store, navigate to ‘Manage’ > ‘Products’ > ‘Add Product’.

Adding Products - Webcart

Moreover, for downloadable product, access to this file will be given after payment is done. Also, Downloadable file is required to be in “zip”, “rar” or “7z” format.

– “Virtual Product” – If you don’t check this, then you must provide “Number in Stock” and “Maximum allowed Quantity per Order”.

– “Featured Image” – can be added at the time of adding a new product.

– More images for a product can be added only after the product is added. Means, by editing a product.

More images For A Product - Webcart

– “Maximum allowed Quantity per Order” – User can not add more than this quantity of a product per order.

5.1.4.5 Approving Product’s Ratings and Reviews

To view customer reviews, navigate to ‘Manage’ > ‘Customers’ > ‘Reviews’. Reviews are marked as pending by default and need to be
approved. Also, only one review is allowed for a product per user. However, user can edit the review.

Approving Product’s Ratings and Reviews - Webcart

5.1.2 Orders Management

Navigate to ‘Manage’ > ‘Orders’ > ‘View Orders’. Here, you can view invoices and set status and current status of orders.

Orders Management - Webcart

Note:

Set “Status” to “Processed” only when order is delivered and then invoice can be viewed. This can’t be reversed means you can’t set “Status” back to “Pending”.

Edit Order - Webcart

5.2 Customers Management

Navigate to ‘Manage’ > ‘Customers’ > ‘View Customers’. Here, you can edit customers, shipping addresses and view their orders.

Customers Management - Webcart

Edit Customer - Webcart

5.3 Deals, Coupons and Discounts

Navigate to ‘Manage’ > ‘Deals’ > ‘Add Deal’. Here, you can add deal and set its priority. Means, if Deal1’s priority is 1 and Deal2′ priority is 2, then Deal1 will appear first.

Deals - Webcart

Navigate to ‘Manage’ > ‘Orders’ > ‘Coupons’ > ‘Add Coupon’. Coupons are applicable to orders. Also, you can set order’s amount above which coupon is valid and validity period.

Coupons - Webcart

Navigate to ‘Manage’ > ‘Products’ > ‘Discounts’. Here, you can set discount to products by percentage. Also, you can set its validity period.

Discounts - Webcart

Add Discount to Products - Webcart

5.4 Sales Report

Navigate to ‘Manage’ > ‘Report’ > ‘Product Sales Report’. Here, you can view product sales report in a period. First, select a product, period, group and then click “GET SALES REPORT”.

Period available: Today, Yesterday, Last 7 Days, Last 15 Days, Last Month, Last 6 Months, Last Year, Current Month and Current Year.

Group available: Year, Month and Day.

Sales Report - Webcart

Also, this will be filtered by location.

5.5 Adding Custom Pages

Navigate to ‘Manage’ > ‘Pages’ > ‘Add Page’. Here, you can create unlimited pages. Also, this supports images and videos.

Adding Custom Pages - Webcart

5.5.1 Adding Page Sections

There are various page sections available with different positions which you can place in home page, brand page and category page.

Adding Page Sections - Webcart

5.6 Promotional Banners

Navigate to ‘Manage’ > ‘Deals’ > ‘Banner’. Here, you can add promotional banners to your store. That is, you can set banners on home page, category page and brand page.

Add Promotional Banners - Webcart

Set Banners On Home Page: First, select position which can be Main Slider, Right Side etc.

Set Banners On Category Page: First, select category. Next, select position which can be Main Slider, Below Filters etc.

Set Banners On Brand Page: First, select brand. Next, select position which can be Main Slider, Below Filters etc.

5.7 Applying Custom CSS

You can apply custom CSS if needed. First, navigate to ‘Manage’ > ‘Settings’ > ‘Custom CSS’. Next, you can select where you want to apply CSS. This can be Store Page, Admin Panel or Login / Signup Pages.

Applying Custom CSS - Webcart

 

Get Start with WebCart: Multi Vendor eCommerce Marketplace

Demo Super Admin : Username : super_admin/123456

Demo Admin Login : Username : userdemo/userdemo    

Demo Vendor Login : Username : vendor1/123456      

Demo Customer Login : Username : customer1/123456