Aimeos on VPS: Cloud-native Laravel/Symfony E-commerce Platform from Simple Shops to Marketplaces

16.03.2026
20:36

Aimeos is not just another e-commerce package. It's a cloud-native PHP framework built specifically for Laravel and Symfony that scales from one product to billion items with page rendering in 20 milliseconds. Platform develops since 2015, used by 37,000+ developers and available in 30+ languages.

This guide shows who Aimeos is right for, how to install it on THE.Hosting VPS in any of 50+ locations — from Netherlands (Meppel) to Japan (Tokyo), from Germany (Frankfurt) to USA (New Jersey). No marketing — only practice, real requirements and honest recommendations from PHP developers.

What is Aimeos

Aimeos is an open-source e-commerce framework for PHP available as Laravel package, Symfony bundle and TYPO3 extension. Dual license: core under LGPLv3 (can use in commercial projects with condition of publishing changes), Laravel integration under MIT (complete freedom).

History and development:

Development started in 2015 as professional alternative to simple carts for PHP frameworks. Initially created for Laravel but quickly gained Symfony and TYPO3 support. Now actively developed by international community with focus on performance and scalability.

Current state:

Latest version 2025.10 LTS supports Laravel 11-12 and Symfony 6-7. More than 37,000 developers use the platform. GitHub repository active with constant updates. Platform available in 30+ languages including Russian, English, German, French, Spanish, Chinese and Japanese.

Three usage options:

Laravel Shop Distribution — complete shop application ready to launch. Installation takes 5 minutes, includes demo data and all necessary dependencies. Suitable for quick start of new project.

Laravel Headless Distribution — API-only version for creating SPA or PWA. JWT authentication configured out of box. Write frontend yourself in React, Vue, Angular or mobile frameworks. Perfect for modern applications with separated frontend and backend.

Laravel E-commerce Package — adding shop to existing Laravel application. Installs via Composer in few minutes. Integrates with your models, routes and authorization. Doesn't break current project architecture.

Platform architecture:

Aimeos built as set of independent components. HTML frontend for shop users with responsive design. JSON REST API complies with jsonapi.org standard and gives full access to functionality. Admin interface for managing catalog, orders, customers. All components can work separately or together.

Platform uses Domain-Driven Design with clear layer structure. Controllers for presentation logic, managers for business rules, providers for data work. Each layer independent and replaceable without changing other system parts.

Key capabilities:

Scalability from 1 to 1 billion products while maintaining 20ms page rendering speed. Achieved through smart caching, lazy loading and query optimization. ElasticSearch or Solr for fast search across huge catalogs. NoSQL databases for virtually unlimited number of items.

Multi-vendor out of box — create marketplaces where each seller manages their products, prices and delivery. Multi-channel — single admin for web shop, mobile app, point of sale. Multi-warehouse inventory management with reservation and tracking.

All product types you need: simple, bundles, virtual, configurable with options, with custom input, subscriptions with recurring payments. Can combine types and create complex product variants.

Support for 100+ payment systems through Omnipay library. Stripe, PayPal, Braintree, local processors for each country. Integration with any ERP, CRM, CMS through REST API. RTL languages (Arabic, Hebrew) fully supported.

When to Choose Aimeos

Aimeos suits PHP developers wanting flexible e-commerce platform on familiar framework.

Aimeos is perfect if:

You have Laravel or Symfony developers. Aimeos deeply integrated with these frameworks and uses their development approach. No point learning new stack if team already knows Laravel — just add Aimeos package.

You need quick start. Laravel Shop Distribution installation takes 5 minutes and gives working shop with demo data. Configure design, upload products and can launch. Adding shop to existing application also needs just few commands.

You plan scaling. Aimeos designed for growth — from startup with dozens of products to enterprise marketplace with millions of items. Architecture allows horizontal scaling without code rewriting.

You need marketplace. Multi-vendor extension turns shop into platform for multiple sellers. Each vendor gets own dashboard, can manage products, see orders and statistics. Dropshipping and affiliate programs support.

You build B2B application. Complex price lists by customers, corporate discounts, request for quote orders, credit limits, wholesale prices from volume. All supported out of box or easily added.

Need headless architecture. Laravel Headless Distribution gives clean API without binding to specific frontend. Write SPA in Vue, React or mobile app — backend ready and documented.

Aimeos is NOT suitable if:

You don't have PHP developers. Platform requires Laravel or Symfony knowledge for serious customization. Consultants cost $50-100/hour which can be more expensive than SaaS solutions at start.

You need simplest solution. WooCommerce or Shopify will give shop with ready themes in couple hours without programming. Aimeos more flexible but requires development for unique design.

Budget very limited. Platform itself free but development, hosting, support will cost more than hosted solutions. Premium themes and extensions also paid ($99-$999+ per module).

You're looking for huge ecosystem of ready extensions. WooCommerce has thousands of plugins, Magento hundreds. Aimeos ecosystem smaller — will need to write integrations for your needs.

System Requirements

Aimeos is modern PHP application requiring moderate resources for small shops and serious infrastructure for marketplaces.

Minimum requirements for development:

Configuration 2 vCPU / 2 GB RAM / 20 GB SSD will allow installing Aimeos for local development and testing. PHP 8.1+ mandatory (recommended 8.2+ for better performance). Laravel 11+ or Symfony 6+. MySQL 5.7+ / MariaDB 10.3+ / PostgreSQL 12+. Composer 2.2+ for dependency management. Node.js and npm for frontend building if using standard themes.

Recommended configuration for production:

For real shop with traffic need minimum 4 vCPU / 8 GB RAM / 80 GB NVMe SSD. Why? PHP-FPM with 4-6 worker processes consumes 300-500 MB each — that's 2-3 GB under load. MySQL for catalog with 10,000+ products requires 2-4 GB for efficient index work and query cache.

Redis for sessions and cache — 500 MB-1 GB. Laravel queue workers for background tasks (sending emails, updating indexes) — another 500-800 MB. Asset compilation and temp files — 1 GB buffer. Operating system — 1-2 GB. Reserve for peaks — 1-2 GB.

Total need 8-12 GB RAM for comfortable medium traffic shop operation. On 4 GB will run but with swap at 30+ simultaneous users. For marketplace or high-load shop (100k+ visits/day) take 8 vCPU / 16-32 GB RAM.

NVMe SSD is critical for MySQL performance. Difference between SATA and NVMe especially noticeable with complex selections from catalog with attributes, variants and prices. On SATA shop with 50k+ products slows down at 50+ concurrent users. NVMe handles load without drops.

For marketplaces and enterprise:

Serious projects require 16+ vCPU / 32+ GB RAM / 500+ GB NVMe. ElasticSearch cluster for search — minimum 3 nodes 8 GB RAM each. Redis cluster for distributed cache. Load balancer before web servers. S3/object storage for product images. CDN for static files.

Which VPS to choose on THE.Hosting:

For development fits Beryllium VPS with 2 vCPU / 2 GB RAM / 20 GB NVMe for €3.77/month. Available in all 50+ locations — choose closest.

For production small and medium shop take Ruthenium VPS with 4 vCPU / 8 GB RAM / 80 GB NVMe for ~€20/month. Location choice depends on your audience. European business works best from Netherlands (Meppel) as continent's largest internet hub with excellent Amsterdam connectivity and minimum latency for Western Europe. Germany (Frankfurt) perfect for Central Europe and financial services with strict infrastructure requirements.

Asian market requires local presence. Japan (Tokyo) optimal for all East Asia including Korea, Taiwan and Philippines with 10-30ms latency. Hong Kong — best choice for China and Southeast Asia like Thailand, Vietnam, Singapore and Indonesia. South Korea (Seoul) provides access to region's high-speed infrastructure.

American audience served from USA (New Jersey) for proximity to New York and East Coast. Canadian market better kept locally in Toronto with Canadian data jurisdiction compliance. Brazil (São Paulo) — THE.Hosting's only location in Latin America and region's largest market with 200+ million potential buyers.

For CIS and Eastern Europe Poland (Warsaw) fits with fast access for Ukraine, Belarus and Baltic states. Romania (Bucharest) offers budget plans with good connectivity. Moldova (Chișinău) has Dedicated servers available for enterprise projects.

For high-load marketplace take Iridium VPS (8 vCPU / 16 GB / 160 GB) or Dedicated Server. Dedicated available in 7 locations — Finland, France, Germany, Moldova, Netherlands, USA and United Kingdom.

PHP hosting requires root access to configure PHP-FPM, install extensions, configure Composer. THE.Hosting provides full root on all plans, NVMe disks everywhere, 24/7 support in Russian and English for help with environment setup.

Installing Aimeos on Ubuntu 24.04

We'll install Aimeos Laravel Shop Distribution — complete shop application on modern stack: Ubuntu 24.04 LTS + PHP 8.3 + Laravel 11 + MySQL 8 + Nginx.

System preparation

Connect via SSH and update system:

sudo apt update && sudo apt upgrade -y

Install basic dependencies:

sudo apt install -y software-properties-common curl wget git unzip

Installing PHP 8.3

Add Ondřej Surý repository:

sudo add-apt-repository ppa:ondrej/php -y
sudo apt update

Install PHP and necessary extensions:

sudo apt install -y php8.3 php8.3-fpm php8.3-cli php8.3-common \
  php8.3-mysql php8.3-mbstring php8.3-xml php8.3-curl \
  php8.3-zip php8.3-gd php8.3-intl php8.3-bcmath \
  php8.3-opcache php8.3-redis

Check version:

php -v

Should show PHP 8.3.x.

Installing Composer 2

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composer
composer --version

MySQL 8 installation

sudo apt install -y mysql-server
sudo systemctl start mysql
sudo systemctl enable mysql

Configure security:

sudo mysql_secure_installation

Create database:

sudo mysql

In MySQL console:

CREATE DATABASE aimeos CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'aimeos'@'localhost' IDENTIFIED BY 'strong_password_here';
GRANT ALL PRIVILEGES ON aimeos.* TO 'aimeos'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Installing Aimeos Shop Distribution

Create directory:

cd /var/www
sudo composer create-project aimeos/aimeos myshop
cd myshop

Set permissions:

sudo chown -R www-dаta:www-data /var/www/myshop
sudo chmod -R 755 /var/www/myshop
sudo chmod -R 775 /var/www/myshop/storage
sudo chmod -R 775 /var/www/myshop/bootstrap/cache

Laravel configuration

Copy .env file:

cp .env.example .env

Edit .env:

nano .env

Main settings:

APP_NAME=MyShop
APP_ENV=production
APP_DEBUG=false
APP_URL=https://your-domain.com

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=aimeos
DB_USERNAME=aimeos
DB_PASSWORD=strong_password_here

SHOP_MULTILOCALE=0
SHOP_MULTISHOP=0
SHOP_ROUTES=1

Generate application key:

php artisan key:generate

Run migrations and setup:

php artisan migrate
php artisan aimeos:setup --option=setup/default/demo:1

Parameter demo:1 adds demo data for testing. For clean installation use demo:0.

PHP-FPM configuration

Edit config:

sudo nano /etc/php/8.3/fpm/pool.d/www.conf

Important parameters:

user = www-data
group = www-data
listen = /run/php/php8.3-fpm.sock
pm = dynamic
pm.max_children = 20
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 10

Restart PHP-FPM:

sudo systemctl restart php8.3-fpm

Nginx setup

Install Nginx:

sudo apt install -y nginx

Create site configuration:

sudo nano /etc/nginx/sites-available/aimeos

Configuration:

server {
    listen 80;
    server_name your-domain.com www.your-domain.com;
    root /var/www/myshop/public;

    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-Content-Type-Options "nosniff";

    index index.php;

    charset utf-8;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location = /favicon.ico { access_log off; log_not_found off; }
    location = /robots.txt  { access_log off; log_not_found off; }

    error_page 404 /index.php;

    location ~ \.php$ {
        fastcgi_pass unix:/run/php/php8.3-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_hide_header X-Powered-By;
    }

    location ~ /\.(?!well-known).* {
        deny all;
    }
}

Activate:

sudo ln -s /etc/nginx/sites-available/aimeos /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

SSL via Let's Encrypt

sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d your-domain.com -d www.your-domain.com

Store access

Frontend: https://your-domain.com
Admin: https://your-domain.com/admin
Admin credentials: admin@example.com / secret (change it!)

Change admin password:

php artisan aimeos:account --super admin@example.com --password=new_strong_password

Initial Store Setup

After logging into admin at /admin configure basic store parameters. In settings specify company name, address, notification email, support phone. Upload logo and favicon. Choose default currency and your region's timezone.

Store languages configured in locale panel. Aimeos supports 30+ languages out of box. Add needed languages and activate them for frontend. For multilingual shop set in .env file SHOP_MULTILOCALE=1 so URLs automatically include language code.

Creating catalog starts with categories. Think through category tree structure for your assortment. Create main sections and subcategories with SEO-optimized URLs. For each category add name, description, image and meta tags.

Adding products done through product panel. Specify SKU article, name, full description, price. Upload images — multiple allowed for gallery. Choose product type: simple, bundle, virtual, configurable or subscription. For products with variants create attributes like size or color and generate all combinations.

Inventory management enabled for each product separately. Specify quantity in stock, allow or deny sale at zero balance, configure reservation at checkout. For multi-warehouse work add multiple warehouses and distribute stock between them.

Payment systems connected through payment settings. Aimeos supports 100+ processors through Omnipay. Install needed provider via Composer, add it in admin and specify API keys. Popular options — Stripe for cards, PayPal for wide audience, local systems for specific countries.

Shipping methods configured flexibly. Fixed cost for whole country, calculation by weight or volume, by geographic zones, free shipping from order amount. Can integrate transport company APIs for automatic cost calculation and parcel tracking.

Themes changed by uploading new templates. Standard theme responsive and SEO-optimized but quite simple. Aimeos marketplace sells premium themes from $99 to $499. Can hire developer to create unique design based on Laravel Blade templates — cost from $2,000 to $10,000 depending on complexity.

Extensions and Integrations

Popular extensions:

Multi-vendor marketplace — paid extension ($399+) turns shop into platform for multiple sellers. Each vendor gets separate dashboard, manages products, sees their orders and sales statistics. Commission support, dropshipping, affiliate programs.

Subscription products — turns any product into subscription with recurring payments. Weekly, monthly, yearly periods. Automatic card charges, renewal notifications, subscription management in user account.

ElasticSearch integration — speeds up search in catalogs from 100,000+ products. Faceted navigation, autocomplete, synonym search. Indexing updates in background without MySQL load.

Import/Export modules — bulk product loading from CSV, XML, JSON. Price and stock updates from ERP systems. Order export for warehouse processing.

API integrations:

JSON REST API complies with jsonapi.org standard. Full access to catalog, cart, orders, customers. Documentation with examples in different programming languages. JWT tokens for secure authentication.

Integration with ERP systems (SAP, Oracle, 1C) through API or file exchange. Product, price, stock synchronization. Order transmission for processing. Delivery status updates.

CRM integrations (Salesforce, HubSpot, Bitrix24) for customer base work. Automatic contact creation from orders. Purchase segmentation. Trigger mailings.

Email marketing (Mailchimp, SendGrid, GetResponse) for promo campaigns. Subscriber synchronization. Abandoned carts. Product recommendations.

Performance and Scaling

Laravel caching

Configure Redis for cache and sessions in .env:

CACHE_DRIVER=redis
SESSION_DRIVER=redis
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

Configuration optimization:

php artisan config:cache
php artisan route:cache
php artisan view:cache

Database optimization

Regular MySQL maintenance:

OPTIMIZE TABLE aimeos_product;
ANALYZE TABLE aimeos_order;

Add indexes on frequently queried fields. Use EXPLAIN for analyzing slow queries.

Queue for background tasks

Configure Laravel Queue for async processing:

QUEUE_CONNECTION=redis

Start workers:

php artisan queue:work --queue=default,mails --tries=3

Email sending, index updates, report generation — everything in background without blocking users.

CDN for static files

Store product images on S3 or compatible storage. Configure CloudFront or Cloudflare CDN. Static delivery from edge servers close to users speeds up page loading.

Horizontal scaling

For marketplaces with millions of products deploy multiple app servers behind load balancer. MySQL master for writes plus read replicas for reads. Redis cluster for distributed cache. ElasticSearch cluster minimum 3 nodes. Shared file storage or S3 for images.

Security

Basic protection

HTTPS mandatory — Let's Encrypt free. Laravel CSRF protection enabled by default. XSS filtering through Blade templates. SQL injection prevented by Eloquent ORM.

Regular updates:

composer update
php artisan migrate
php artisan aimeos:setup

File permissions

Configure correct file permissions:

sudo chown -R www-dаta:www-data /var/www/myshop
sudo chmod -R 755 /var/www/myshop
sudo chmod -R 775 storage bootstrap/cache

Deny PHP execution in uploads:

location ~* /uploads/.*\.php$ {
    deny all;
}

Backups

Automatic database backups daily:

mysqldump -u aimeos -p aimeos > /backup/aimeos_$(date +%Y%m%d).sql

File backup to S3 or other storage. Test restoration regularly.

Frequently Asked Questions

Can Aimeos be used for free?

Yes, core completely open-source under LGPLv3, Laravel integration under MIT. But premium extensions paid (multi-vendor from $399, themes from $99).

What's difference between Laravel Shop and Laravel Package?

Shop Distribution — ready application for new project. Package — adding shop to existing Laravel application.

Does it support Symfony?

Yes, there's Symfony Bundle working with Symfony 6-7. Functionality same as for Laravel.

Can create marketplace?

Yes, through paid Multi-vendor extension ($399+). Gives full functionality for platform with multiple sellers.

How to install in existing Laravel project?

Via Composer: composer require aimeos/aimeos-laravel, then php artisan aimeos:setup.

Does it support millions of products?

Yes, with ElasticSearch and proper architecture scales to billion items. Rendering stays 20ms.

Is there headless version?

Yes, Laravel Headless Distribution with JWT auth and JSON API only. Write frontend yourself.

Which payment systems supported?

100+ through Omnipay library: Stripe, PayPal, Braintree, Square and local processors for each country.

Support and Community

Official resources:

Documentation aimeos.org/docs — detailed installation and development guides. Forum aimeos.org/help — active community answers questions. GitHub github.com/aimeos — source code and issue tracker. YouTube channel with video tutorials.

Commercial support:

Aimeos developers offer paid support and consulting. Rates from €100/hour for European clients. Support packages from €500/month for enterprise projects.

Agencies and partners:

Certified partners in Germany, USA, India. Specialize in Aimeos development, migration from other platforms, marketplace creation. Rates $50-150/hour depending on region and experience.

Training:

Official documentation free and covers all platform aspects. Community tutorials on YouTube and blogs. Commercial courses from partners (€299-€999).

Conclusion

Aimeos is powerful and flexible e-commerce platform on PHP. Deep integration with Laravel and Symfony makes it natural choice for PHP developers. Architecture allows scaling from startup to enterprise marketplace without code rewriting.

Main advantages: cloud architecture ready for scaling, fast installation and deployment, 20ms performance even on millions of products, multi-vendor and multi-channel out of box, complete REST API for headless scenarios.

Having studied this guide you've gained: understanding of Aimeos capabilities and usage scenarios, step-by-step Ubuntu installation with MySQL, knowledge of hosting requirements and selection recommendations, practical setup and optimization advice.

On THE.Hosting servers you can deploy Aimeos in any of 50+ locations — choose closest to your audience: Netherlands (Meppel) for European e-commerce, Japan (Tokyo) for Asian market, USA (New Jersey) for American clients or Germany (Frankfurt) as European central point. All servers with NVMe disks, root access and 24/7 support in Russian and English.

Useful THE.Hosting Links

Products:

Support and Information:

For Partners:

Contacts:

  • Telegram: @thehosting
  • Email: support@the.hosting
  • Phone: +44 (204) 577-00-80

Additional Resources:

Other articles

16.03.2026
7
Knowledge base / Instructions / Review
nopCommerce on VPS: Powerful .NET Platform for E-commerce Stores of Any Scale
16.03.2026
5
Knowledge base / All about domains
.app Domain — Your Digital Home for Applications