3. Installation Wizard

After having downloaded and built NexoPOS 4.x you need to install it. Whether you choose to install NexoPOS 4.x on Windows or Linux, the installation steps are the same. In this guide, we go deeper into the installation wizard and explaining everything you need to know.

Welcome Page

The welcome page is the main page you access once NexoPOS 4.x is downloaded. The address that takes you to this page depends on the configuration you had while creating NexoPOS 4.x environment. This page just shows the different steps you need to go through in order to install NexoPOS.

The only significant action to perform is to click on Database Configuration, which is the next step.

Database Configuration

Before being able to define the database configuration, you must have created a database and the user assigned to that database must be able to create, drop tables along as manipulating data (select, update, delete). The .env file available on the project (or created while installing NexoPOS), should be writable by the PHP process. Typically, you'll need to use 640 as file permission. The storage folder (storage/logs) should also be writable by the php process.

Here, the database configuration consists of providing all the required information in order to ensure NexoPOS can connect to your database. Once set, you need to click on "Save Database".

Application Configuration

This is the last step of this installation wizard. It's the place where must be set the application's name and the master account credentials. Once the step is processed, the .env file will change in a way to prevent this wizard to run once again.

Once filled, click on "Create Installation" to complete the installation. This should take you to the possible next screen which is the Database Migration file.

Database Migration

The database migration ensures the database schema is up to date with the application's files. It's an automated page that doesn't require user action (the process shouldn\'t be stopped, however).

As this page is automated, it runs returns the users automatically to the page he intended to reach.

Login Page

If you're able to reach the login page, that means NexoPOS has successfully been installed. You can now login using the credentials you have defined (for the master account).

Troubleshooting

Here is the issue that might occur while you're doing or after the installation.

flock() expects parameter 1 to be resource, bool given

It looks like this issue occurs when the user (in the case of Linux) that runs run the server (either apache or Laravel built-in server), doesn't have enough permission over the project. In fact, if you're using Ubuntu (or any other Linux distro), you'll need to give the right to the current logged user if you're using "php artisan serve" or to the user that executes apache (or Nginx).

sudo chown user:root . -R

The MAC is invalid.

This happens when the system is unable to decrypt encrypted information. The quick workaround for this is to run :

php artisan key:generate

If the issue persists, consider clearing your cookies.

The payload is invalid.

If this error occurs, it might be related to your domain not matching the information provided on the .env file. Once again, please make sure the "SESSION_DOMAIN" and "APP_URL" match your actual domain name. If you have installed NexoPOS locally, make sure it matches the local name (either 127.0.0.1, localhost, ::1).

APP_URL=http://127.0.0.1
SESSION_DOMAIN=127.0.0.1

As not all environments are similar, you might face an issue during the process. You're invited to let us know via the repository.