Run this command to check your PHP version. MarketPro requires PHP 8.1 or higher.
php --version
# Should output: PHP 8.2.x (or higher)
Also verify these required extensions are enabled:
php -m | grep -E "pdo|mbstring|openssl|tokenizer|xml|curl|gd|fileinfo|zip"
# All 9 should appear in the output
Download and install Composer from getcomposer.org or use these commands:
# Linux / macOS
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
# Verify installation
composer --version
# Should output: Composer version 2.x.x
Windows users: download the Composer-Setup.exe installer from getcomposer.org โ it handles everything automatically.
# Log into MySQL
mysql -u root -p
# Create database and user
CREATE DATABASE marketpro CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'marketpro_user'@'localhost' IDENTIFIED BY 'StrongPassword123!';
GRANT ALL PRIVILEGES ON marketpro.* TO 'marketpro_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Extract the marketpro.zip to your desired location, then navigate into the folder:
cd marketpro
composer install
# This downloads ~30MB of Laravel packages โ takes 1-3 minutes
composer install times out via SSH, run it locally first and upload the generated vendor/ folder via FTP/SFTP. It's large (~80MB) but this is a one-time operation.cp .env.example .env
php artisan key:generate
# Output: Application key set successfully.
Open .env in a text editor and update these values:
## App
APP_NAME="My Marketplace"
APP_URL=http://localhost:8000
APP_ENV=local # Change to "production" when live
APP_DEBUG=true # Change to "false" in production
## Database
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=marketpro
DB_USERNAME=marketpro_user
DB_PASSWORD=StrongPassword123!
## Mail (optional โ needed for order emails)
MAIL_MAILER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=your@email.com
MAIL_PASSWORD=your-app-password
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=noreply@yourstore.com
MAIL_FROM_NAME="My Marketplace"
## AI Features (optional)
ANTHROPIC_API_KEY=sk-ant-api03-... # Leave empty to skip AI
php artisan marketpro:install
This command automatically:
- โCreates all 11 upload directories in
public/uploads/ - โRuns all database migrations (creates 40+ tables)
- โSeeds demo data: admin, vendor, and customer accounts
- โSeeds all default settings (currency, language, theme colors)
- โCreates
resources/lang/en.jsonbase language file - โClears config, route, view, and application caches
php artisan marketpro:install --fresh to drop all tables and start clean. Use --no-seed to skip demo data (good for production).php artisan serve
# Server running at: http://127.0.0.1:8000
Test all three demo accounts:
- โSet your Site Name, Tagline, and Contact Email
- โSet Currency Symbol (e.g.
$) and Currency Code (e.g.USD) - โSet Currency Decimals (2 for most currencies, 0 for JPY/KRW)
- โEnable Multi-Currency Switcher if you want customers to switch currencies
- โSet Free Shipping Threshold (e.g. $50 = orders over $50 ship free)
- โSet Global Return Days (default: 30 โ products can override this)
- โSet Default Commission Rate per vendor sale (e.g. 10%)
- โUpload your Logo (PNG or SVG recommended, max 2MB)
- โUpload your Favicon (ICO or PNG, 32ร32px, max 512KB)
- โPick a Primary Color from 8 presets or enter a custom hex code
- โChoose a Font Family from 10 Google Font options
- โSet Border Radius to match your brand style (none to full/pill)
Changes apply immediately to all pages without clearing cache โ the theme CSS is generated dynamically on each request.
Enable and configure whichever gateways you want to accept. At minimum, enable Cash on Delivery so customers can place test orders immediately.
pk_test_... and sk_test_...) during development. Switch to live keys (pk_live_...) before launch.- โEnable COD (no config needed โ instant)
- โEnable Stripe and paste your Publishable Key + Secret Key
- โEnable PayPal and paste Client ID + Secret. Toggle Sandbox mode for testing.
- โEnable Bank Transfer and add your account details in the instructions field
If you have an Anthropic API key, add it to your .env first:
ANTHROPIC_API_KEY=sk-ant-api03-your-key-here
Then go to Admin โ AI Features and toggle the master switch ON. You can enable individual features selectively โ only enable what you need to manage API costs. Every feature that's off falls back gracefully to a non-AI alternative.
Option A โ Vendor self-registers: Direct vendors to /vendor/register. Their account will be pending approval. Go to Admin โ Vendors to approve them.
Option B โ Create from admin: Go to Admin โ Vendors โ Add Vendor. Fill in shop name, email, and password. The account is created as approved immediately.
Option C โ Auto-approve all vendors: Go to Admin โ Settings โ General and enable "Auto-Approve Vendors". New vendor registrations will be instantly approved.
public_html/). Keep public/ as the web root.public/ subfolder. This is essential โ never expose the project root.php artisan marketpro:install --no-seed. If not: import marketpro_schema.sql manually via phpMyAdmin.# Install dependencies
sudo apt update && sudo apt install -y nginx mysql-server php8.2-fpm \
php8.2-mysql php8.2-mbstring php8.2-xml php8.2-curl php8.2-gd \
php8.2-zip php8.2-intl unzip git
# Clone or upload project to /var/www/marketpro
cd /var/www/marketpro
composer install --no-dev --optimize-autoloader
cp .env.example .env && php artisan key:generate
# Configure Nginx
# Set root to /var/www/marketpro/public
# Set permissions
sudo chown -R www-data:www-data /var/www/marketpro
sudo chmod -R 755 /var/www/marketpro/public/uploads
# Install and run
php artisan marketpro:install --no-seed
php artisan config:cache && php artisan route:cache && php artisan view:cache
- โSet
APP_ENV=productionandAPP_DEBUG=falsein.env - โSet
APP_URLto your actual domain (e.g.https://mystore.com) - โInstall SSL certificate (Let's Encrypt via Certbot is free)
- โSwitch payment gateways from sandbox/test to live mode
- โConfigure real SMTP credentials for transactional email
- โSet up a cron job for
php artisan schedule:run(runs every minute) - โRun
php artisan marketpro:create-adminto create your real admin account - โDelete or change all demo account passwords
- โTest a complete order flow end-to-end (add to cart โ checkout โ payment โ invoice)
- โConfigure Google Analytics or your preferred analytics in Admin โ Settings โ SEO
# Add to crontab (crontab -e)
* * * * * cd /var/www/marketpro && php artisan schedule:run >> /dev/null 2>&1
You're live! ๐
Your MarketPro marketplace is ready. Explore the full documentation for advanced configuration, or check out all the features in your admin panel.