weblizar +91-7023103881 +91-9950348952

Documentation

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

Note: "webcart.zip" is provided inside of the folder named "webcart" in the package.
and so on.
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.

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 7.0.0
php >= 7.0.0
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 http://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 http://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"
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.

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

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

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 http://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", "Order Processed" etc.
Email Template - Webcart
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.
Email Configuration Settings - Webcart

2.5 SMS Configuration

SMS Settings - Webcart
Template Layouts:
Here, you can customize SMS templates for various sms such as for "Order Placed", "Order Processed" etc.
SMS Template - Webcart
SMS Configuration:
Currently, Web-Cart supports two SMS providers: Nexmo and MsgClub.
Here, you can enable or disable SMS and select SMS provider. Also, you will need to provide appropriate API Key and Secret Key of the SMS provider.
SMS Configuration - Webcart

2.6 Payment Settings

Webcart supports these payment methods: PayPal, Stripe, Razorpay, Instamojo and PayUmoney/PayUbiz. 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".

PayUmoney / PayUbiz:
"PayUmoney / PayUbiz Payment" – Enable / Disable PayUmoney / PayUbiz Payment Method. Also, for PayUmoney, you will need to provide "PayUmoney Merchant Key", "PayUmoney Merchant Salt" and "PayUmoney Auth Token". And, for PayUbiz, you will need to provide "PayUbiz Merchant Key" and "PayUbiz Merchant Salt".

2.7 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
Email Template:
You can choose email carrier and customize the subscription confirmation email that will be sent to a user.
Subscribers Email Template - 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
[email protected], Confirmed
[email protected], Pending


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

2.8 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
Existing 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 Finance Converter.
Stripe – Currency will be converted to USD using Finance Converter.
Razorpay – Currency will be converted to INR using Finance Converter.
Instamojo – Currency will be converted to INR using Finance Converter.
PayUmoney / PayUbiz – Currency will be converted to INR using 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
Right Side
Below Main Slider - Three Images per row
Below Main Slider - Two Images per row
Below Main Slider - Three Images Layout

Category Page Banners
Main Slider
Below Main Slider - Three Images per row
Below Main Slider - Two Images per row
Below Main Slider - Three Images Layout
Below Filters

Brand Page Banners
Main Slider
Below Main Slider - Three Images per row
Below Main Slider - Two Images per row
Below Main Slider - Three Images Layout
Below Filters

Main Slider:
Main Slider - Webcart

Right Side:
Right Side - Webcart

Below Main Slider - Three Images Layout:
Below Main Slider - Three Images Layout - Webcart

Below Main Slider - Three Images per row:
Below Main Slider - Three Images per row - Webcart

Below Main Slider - Two Images per row:
Below Main Slider - Two Images per row - Webcart

Below Filters:
Below Filters - 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.2 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.3 Adding Brands

You can add a new brand from 'Manage' > 'Products' > 'Brands'.
Adding Brands - Webcart

5.1.4 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.5 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.6 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.2 Managing Shipments

You can pass order from one shipment to another shipment. Also, a shipment can have shippers which can be selected at the time of adding a shipment. Shippers will be able to see the orders received to their shipments and can forward those orders to next shipement or mark them as delivered.
Add Shipments - Webcart

Orders to Shipments - Webcart

5.3 Orders Management

Navigate to 'Manage' > 'Orders' > 'View Orders'. Here, you can view invoices and set status and current status of orders.
Orders Management - Webcart

5.4 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.5 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.6 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.7 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.7.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.8 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: Select position which can be from these.
Set Banners On Category Page: Select position which can be from these.
Set Banners On Brand Page: Select position which can be from these.

5.9 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 Pages or Admin Panel.
Applying Custom CSS - Webcart