Skip to main content

Installation

This guide explains the standard way to install RoboExchanger on a live server or a local test server.

Before you start

You need these things before installation:

  • A valid RoboExchanger license key
  • A domain or subdomain connected to your server
  • PHP 8.3 or higher
  • MySQL or MariaDB
  • Composer access
  • Cron access
info

Node.js is not required for a normal application install. It is only needed if you want to rebuild frontend assets.

Server requirements

Your server must support:

  • PHP 8.3 or higher
  • MySQL or MariaDB
  • PHP extensions: bcmath, curl, ctype, fileinfo, gd, json, libxml, mbstring, openssl, pdo, pdo_mysql, simplexml, tokenizer, xml
  • Writable folders: storage and bootstrap/cache
tip

The built-in installer supports only mysql and mariadb.

Physical server size recommendation

The application does not force CPU, RAM, or disk limits by code.

These values are practical recommendations for a physical server based on normal RoboExchanger use, including:

  • website traffic
  • admin panel usage
  • file uploads
  • cron jobs
  • queue and notification work
Use caseCPURAMDisk
Small test server1 core2 GB20 GB SSD
Minimum small production server2 CPU cores4 GB40 GB SSD
Better production starting point4 CPU cores8 GB80 GB SSD

Which size should you choose

  • Use 1 core / 2 GB / 20 GB only for testing or low-use internal staging
  • Use at least 2 cores / 4 GB / 40 GB SSD for a real small live website
  • Use 4 cores / 8 GB / 80 GB SSD if you expect regular traffic, more uploads, more orders, or frequent email and Telegram jobs

Important note about disk size

Disk usage depends on:

  • customer KYC uploads
  • logs
  • cached files
  • exported files
  • backups you keep on the same server

If your business stores many customer documents, use more disk than the minimum.

Step 1: Upload the project

Upload the full project to your hosting account or server.

Point your domain or subdomain to the public directory of the project.

Make sure the .env.example file is present. If .env does not exist, the installer can create it from .env.example.

Step 2: Install PHP dependencies

Open terminal or SSH in the project root and run:

composer install --no-dev --optimize-autoloader

If you are installing on a test server and you want development packages too, you can run:

composer install

Step 3: Create a database

Create one new MySQL or MariaDB database and one database user.

Give the database user full access to that database.

Keep these details ready:

  • Database host
  • Database port
  • Database name
  • Database username
  • Database password

Step 4: Set folder permissions

The application must be able to write inside these paths:

  • storage
  • bootstrap/cache

On most Linux servers, this is a common command:

chmod -R 775 storage bootstrap/cache

If your host uses a different permission model, use the settings recommended by your hosting provider.

Step 5: Open the installer

Open this URL in your browser:

https://your-domain.com/install

The installer checks:

  • Your license key
  • PHP version
  • Required PHP extensions
  • Writable folders
  • Environment file readiness

Step 6: Verify your license

In the installer:

  1. Check the detected domain.
  2. Enter your license key.
  3. Click the verify button.

The installer will not continue until the license is verified successfully.

caution

Use the final domain you really want to use. The installer checks that your application URL host matches the detected install domain.

Step 7: Fill in the installation form

After license verification, complete the installation form with:

  • Application name
  • Application URL
  • Database connection
  • Database host
  • Database port
  • Database name
  • Database username
  • Database password
  • Admin name
  • Admin email
  • Admin password

The admin email and password you enter here will become your first admin login.

Installation form field guide

FieldWhat to enterImportant note
Application nameYour website or company nameThis is the main name used in the application
Application URLYour final live website URLUse the full https:// URL and the real domain you activated
Database connectionmysql or mariadbThe built-in installer supports only these database types
Database hostUsually 127.0.0.1, localhost, or your DB server hostAsk your hosting provider if you are not sure
Database portUsually 3306Use the real port from your database service
Database nameThe database you created for this appMake sure the name is correct
Database usernameThe database user with access to that databaseThis user must have permission to create tables
Database passwordThe password for that database userCopy it carefully, including uppercase and symbols
Admin nameYour first administrator nameUse a real name so other admins know who owns the account
Admin emailYour first administrator login emailYou will use this email to sign in later
Admin passwordA strong first administrator passwordKeep it safe because this is your first admin login

Common installation mistakes

  • Using http:// instead of https:// in the application URL
  • Activating the license on one domain and running the installer on another domain
  • Using the wrong database host or port
  • Pointing the domain to the project root instead of the public directory
  • Forgetting writable permission for storage and bootstrap/cache
  • Running the app without the required cron job

Step 8: Run the installer

When you submit the form, RoboExchanger will:

  • Save your application and database settings
  • Run the database migrations
  • Seed required base data
  • Create the first admin account
  • Activate the license for this installation
  • Clear the application cache

After a successful install, you will be redirected to the admin login page.

Step 9: Sign in to the admin panel

Open:

https://your-domain.com/admin/login

Then sign in with the admin email and password you created during installation.

Required cron job

After installation, add this cron job on your server:

* * * * * php /full-path-to-your-project/artisan schedule:run >> /dev/null 2>&1

This is important. It runs scheduled tasks like:

  • Exchange timeout updates
  • Sitemap generation
  • Daily cleanup tasks
  • License refresh tasks
tip

For best production performance, use Performance & Optimization and run queue workers with Supervisor instead of the scheduler.

Before you go live, review these items:

  1. Open the .env file and make sure production mode is enabled:
APP_ENV=production
APP_DEBUG=false
  1. Clear the config and cache:
php artisan config:clear
php artisan cache:clear
  1. Open the admin panel and configure:
  • General settings
  • SMTP or mail settings
  • Payment gateways
  • Currencies and exchange directions
  • Logo, SEO, and content pages
  1. If media files do not load correctly, run:
php artisan storage:link

Common problems

Installer cannot continue

Check the failed requirement in the installer page. Most problems come from missing PHP extensions or folder permission issues.

License verification fails

Make sure:

  • The license key is correct
  • The domain is correct
  • The app is opened on the same domain you want to activate

Database connection fails

Check the database host, port, database name, username, password, and database user privileges.

The installer says the URL or domain is invalid

Check these points:

  • the application URL starts with https://
  • the domain matches the real domain you opened in the browser
  • the license was verified for that same domain

The first admin cannot log in after install

Check these points:

  • you are using the exact admin email from the installer form
  • you are using the exact admin password from the installer form
  • the installation finished completely and redirected correctly
  • you are opening /admin/login, not /login

The app opens the license center instead of the website

This means the installation needs a valid active license state. Refresh or reactivate the license from the license center.

After installation, continue with:

  1. Performance & Optimization
  2. Access Admin Panel
  3. Admin Overview
  4. Settings Overview