Install Laravel Inventory Software NexoPOS to cpanel

NexoPOS 4 is a free point of sale system built using Laravel, TailwindCSS, Vue and other open-source resources. This POS System focuses on utilities and functionalities to offer for most businesses all the tools they need to manage better their store. NexoPOS 4.x includes a responsive and beautiful dashboard that eases the interaction either on a smartphone, tablet, or desktop.


Included Features
  • Stock Procurement
  • Silent Updates
  • Recurring Expenses
  • Unit Of Measures
  • Responsive Design
  • Customers & Groups
  • Multiple Taxes
  • Media Manager
  • Orders Management
  • Reward System
  • Coupon Management
  • Cash Register
  • Reporting
  • Role & Permissions Manager
Installation Steps
  • Setup domain or subdomain
  • SSH access for Hosting
  • Download source code
  • Remove /public from URL
  • Setup database
  • Complete installation
  • Background Worker


Let's start the process one by one, we will follow the instruction.

1. Setup domain or subdomain

2. SSH access for Hosting

Most of the hosting companies do not provide ssh access by default. Sometimes it can be risky for whom do not know detail about the ssh feature. In short, we can say that it is a command-line tool for host management. If you do not have SSH access to your domain then please contact your hosting provider.

You can use putty to access your hosting from your desktop. You need an SSH key to connect your server. Sometimes its time consuming and a little bit complex. I use the default terminal feature provided by the hosting company. It is your choice.

3. Download Source Code

You should follow the latest stable version on Github. You should download that version by writing wget command. You should extract the zip file and move it to the root folder.

In my case, I am going to download the NexoPOS 4.5.3 version.

wget https://github.com/Blair2004/NexoPOS-4x/archive/refs/tags/v4.5.3.zip

Now we'll need to unzip the file by running the command

unzip v4.5.3.zip

After unzipping, all the content will be within a folder "NexoPOS-4x-4.5.3", we'll then copy that content to the current directory.

cp NexoPOS-4x-4.5.3/* . -r

You'll need to use the terminal to download the dependencies. Before doing that you need to create .env file.

cp NexoPOS-4x-4.5.3/.env.example .env

To install dependent packages using the command

composer install

Right after, we need to create a link with the store like that.

php artisan storage:link

And we need to generate a key using the command:

php artisan key:generate

4. Remove /public from URL

We can not browse the application by accessing the domain/subdomain. It will only show the files and folders. You can add /public to your domain/subdomain to browse the application. We need to access this application on the root domain/subdomain. We will take the help of the .htaccess file to solve the issue.

<IfModule mod_rewrite.c>

<IfModule mod_negotiation.c>

Options -MultiViews

</IfModule>

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} -d [OR]

RewriteCond %{REQUEST_FILENAME} -f

RewriteRule ^ ^$1 [N]

RewriteCond %{REQUEST_URI} (\.\w+$) [NC]

RewriteRule ^(.*)$ public/$1

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^ server.php

</IfModule>

This will remove public from the domain and load your application on the root domian/subdomain.

5. Setup database

Now let's create a database, database user and password from your cpanel. Allow appropriate access for the database user.

6. Complete installation

This is the last step you provide your database credentials and create an admin account with your expected email address.

7. Setup background worker

Task automation feature works with the help of default cronjob provided by cpanel. You need to set up a cron task so that will run some commands for a specific period of time.

/your/location/php /your/location/nexopos-4x/artisan queue:work --sleep=3 --tries=3 --max-time=3600

If you need any help then please let me know.

You can get a full guideline here on https://my.nexopos.com/en/documentation/how-tos/how-to-install-nexopos-from-the-cpanel