Frequently Asked Questions

surecommerce — FAQ

Common questions about installation, configuration, features, and troubleshooting.

🚀Installation & Setup

Q

What are the minimum server requirements?

A
  • PHP: 8.4 or higher
  • MySQL: 5.7+ or 8.0+, MariaDB 10.3+
  • RAM: Minimum 512 MB (1 GB+ recommended)
  • Disk: 500 MB minimum
  • PHP Extensions: curl, gd, imagick, json, zip, mbstring, xml, pdo, pdo_mysql, bcmath, tokenizer

See requirements.txt for the complete checklist.

Q

What is the fastest way to test the application?

A
Use Docker — it includes PHP, MySQL, and Nginx pre-configured:
docker-compose up -d
docker exec -it surecommerce_php composer install
docker exec -it surecommerce_php php artisan cms:install
# Access: http://localhost:9059/admin
No manual environment setup required.
Q

Can I install this on shared hosting?

A
Yes, as long as the host meets the requirements:
  • PHP 8.4+ with all required extensions
  • MySQL database access
  • SSH access (recommended for queue workers)
  • Ability to set up cron jobs
Without SSH, use a cron job to periodically run php artisan queue:work --queue=high,default.
Q

How do I get the admin login credentials?

A
After running php artisan cms:install, the system displays auto-generated credentials:
Admin accounts have been created automatically:
dreamteam - ABC123xyz456
Copy these immediately! Change the password after first login. You can also provide custom credentials: php artisan cms:install "email@site.com" username password
Q

Do I need to compile frontend assets (npm)?

A
No — pre-compiled assets are included in the package. Run npm run production only if you:
  • Modify CSS/JS source files
  • Customize the theme assets

⚙️Configuration

Q

How do I configure email sending (SMTP)?

A
Mail can be configured directly through the Admin Panel — no need to edit .env:
  1. Login to /admin
  2. Go to Settings → Email Configuration
  3. Enter SMTP details (host, port, username, password, encryption)
  4. For Gmail: use an App Password, not your regular password
  5. Use the built-in Send Test Email to verify
Q

What are queue workers and why do I need them?

A
Queue workers process background jobs asynchronously:
  • Excel product/warehouse import jobs
  • Email notifications (order confirmations, password reset)
  • Image optimization after upload
  • Warranty serial code generation
Local testing: run php artisan queue:work --queue=high,default in a separate terminal.
Production: use Supervisord (see install.html).
Q

How do I set up queue workers in production?

A
  1. Install Supervisor: sudo apt-get install supervisor
  2. Copy config: cp supervisord.ini.example supervisord.ini
  3. Edit paths in supervisord.ini (update command and stdout_logfile paths)
  4. Deploy: sudo cp supervisord.ini /etc/supervisor/conf.d/surecommerce-worker.conf
  5. Start: sudo supervisorctl reread && sudo supervisorctl update
See the Queue Worker section in install.html for full details.
Q

Can I use Redis for caching and queues?

A
Yes — Redis improves performance significantly for high-traffic sites:
  1. Install Redis on your server
  2. Install the PHP Redis extension: php-redis
  3. Update .env:
    CACHE_DRIVER=redis
    QUEUE_CONNECTION=redis
    REDIS_HOST=127.0.0.1
    REDIS_PORT=6379
  4. Clear cache: php artisan cache:clear
Q

How do I change the domain/URL after installation?

A
  1. Update APP_URL in .env
  2. Clear config cache: php artisan config:clear
  3. Clear app cache: php artisan cache:clear
  4. Restart queue workers: sudo supervisorctl restart surecommerce-worker:*
Q

How do I configure payment methods?

A
Payment methods are provided by separate packages (PayPal, Stripe, VNPay, etc.) and injected via the hook system:
  1. Install the relevant payment package
  2. Go to Admin → Settings → Payment Methods
  3. Enable and configure each gateway (API keys, webhook URLs, etc.)
Payment transactions are tracked at Admin → Payments.

Features & Usage

Q

How do I import products in bulk?

A
  1. Go to Admin → Products → Product List
  2. Click the Import button in the toolbar
  3. Download the template file to see the correct column structure
  4. Fill in your data: each row = one variant; rows sharing the same slug are grouped as one product with multiple variants
  5. Upload the .xlsx / .xls / .csv file
  6. Optionally check "Download images to server" to auto-fetch image URLs
  7. Click Import — jobs are queued in batches of 5 products
Ensure the queue worker is running. Check Admin → Dashboard for job status.
See user-guide.html for the full column reference.
Q

How do I manage product variants?

A
  1. When creating/editing a product, go to the Variants tab
  2. Add product attributes (e.g., Color: Red, Blue; Size: S, M, L)
  3. The system auto-generates all variant combinations
  4. Set price, SKU, stock quantity, weight, and images per variant
  5. For bulk setup, use the Excel import — rows sharing the same slug with different variant attribute values create variants automatically
Q

How does the coupon / discount system work?

A
  • Create coupons at Admin → Ecommerce → Coupons
  • Set discount type: fixed amount or percentage off
  • Configure minimum order value, expiry date, and usage limit
  • Customers enter the coupon code at checkout on the frontend
  • Use the [coupon] shortcode to render the coupon input widget on any page
Q

Can I export orders and products to Excel?

A
Yes — export is available throughout the admin:
  • Products: Admin → Products → Export button
  • Orders: Admin → Orders → Export button (respects current filters)
  • Warehouse / inventory: Admin → Warehouse → Export
  • Location data: Admin → Location → Export
  • Redirect rules: Admin → Sync Links → Export
Q

How does the warranty module work?

A
The warranty module tracks product serial codes and customer activations:
  1. Create a batch: Admin → Warranty → Batches → Add new. Set the quantity, prefix, and warranty duration
  2. The system generates serial codes as background jobs (queue worker required)
  3. Export serials: Download the batch to get serial codes and QR code URLs for printing
  4. Customer activation: Customer scans QR or visits the activation page, enters serial code + name + phone + email — no account needed
  5. Track activations: Admin → Warranty → Activated
  6. Counterfeit alerts: Admin → Warranty → Counterfeit — monitors suspicious scan patterns
Q

How do I manage redirects (sync-links)?

A
  • Go to Admin → Sync Links
  • Add rules: Source URL (old path) → Target URL (new path)
  • Choose redirect type: 301 (permanent, good for SEO) or 302 (temporary)
  • Enable/disable individual rules
  • Import from Excel for bulk setup; export to back up or audit
Use 301 redirects when permanently changing URL structure to preserve SEO value.

🔎Troubleshooting

Q

500 Internal Server Error after installation

A
Check these in order:
  1. File permissions:
    chmod -R 755 storage bootstrap/cache
  2. Check error logs:
    cat storage/logs/laravel.log
  3. Ensure .env exists and has correct database credentials
  4. Verify all required PHP extensions are installed: php -m | grep -E 'curl|gd|imagick|zip|mbstring'
  5. Clear caches:
    php artisan optimize:clear
Q

Background tasks not processing (imports, emails)

A
Check if queue worker is running:
sudo supervisorctl status
# Should show: surecommerce-worker:surecommerce-worker_00   RUNNING
If not running:
  1. Reload config:
    sudo supervisorctl reread && sudo supervisorctl update
  2. Start workers:
    sudo supervisorctl start surecommerce-worker:*
For local testing (no Supervisord):
php artisan queue:work --queue=high,default
Check failed jobs:
php artisan queue:failed
Q

Images not uploading or displaying

A
  1. Check permissions:
    chmod -R 755 public/uploads
  2. Verify php-gd and php-imagick are installed: php -m | grep -E 'gd|imagick'
  3. Check upload limits in php.ini:
    upload_max_filesize = 64M
    post_max_size = 64M
    memory_limit = 256M
Q

Email not sending

A
  1. Go to Admin → Settings → Email Configuration and check SMTP settings
  2. Use the built-in Send Test Email button
  3. For Gmail: use an App Password (Google Account → Security → App Passwords) with port 587 + TLS
  4. Confirm queue worker is running (emails are sent via queue)
  5. Check Laravel logs:
    tail -f storage/logs/laravel.log
  6. Ensure SMTP ports 587/465 are open on your server firewall
Q

Code updates not taking effect

A
Always run after deploying:
php artisan optimize:clear
Critical: restart queue workers after every code deploy — workers keep PHP classes in memory and will not see your changes until restarted:
sudo supervisorctl restart surecommerce-worker:*
Also clear browser cache (Ctrl+Shift+Delete).

Performance & Optimization

Q

How can I improve system performance?

A
  1. Use Redis for cache and queues:
    CACHE_DRIVER=redis
    QUEUE_CONNECTION=redis
  2. Enable PHP OPcache in php.ini
  3. Increase queue workers: Edit numprocs in supervisord.ini to 2–4 for high traffic
  4. Production mode: APP_ENV=production and APP_DEBUG=false
  5. CDN: Serve static assets and uploaded images via CDN
Q

What server specs do I need?

A
  • Small (<1,000 users): 1 CPU, 1 GB RAM, 10 GB SSD
  • Medium (1,000–10,000 users): 2 CPUs, 2–4 GB RAM, Redis cache
  • Large (10,000+ users): 4+ CPUs, 8 GB+ RAM, Redis, CDN, load balancer

🔒Security

Q

How do I secure the admin panel?

A
  1. Change the default password immediately after first login
  2. Enable Two-Factor Authentication (2FA): Admin → Settings → Security
  3. Set APP_DEBUG=false and APP_ENV=production in production
  4. Use HTTPS with a valid SSL certificate
  5. Set file permissions to 755 (not 777)
  6. Never commit .env to version control
  7. Keep the system updated regularly
Q

How do I back up the system?

A
  1. Database:
    mysqldump -u surecommerce_user -p surecommerce_db > backup_$(date +%Y%m%d).sql
  2. Files to backup:
    • .env — configuration
    • public/uploads/ — user uploaded media
    • storage/ — generated files and logs
  3. Automate: Use cron jobs or a backup service
  4. Off-site storage: Store backups on a separate server/cloud storage

🎨Customization

Q

Can I customize the frontend design?

A
Multiple customization options are available without touching source code:
  1. Theme Config: Admin → Appearance → Theme Configuration — colors, fonts, layout options
  2. Custom CSS: Admin → Appearance → Custom CSS — inject custom styles
  3. Menu: Admin → Appearance → Menus — manage navigation menus
  4. Logo/Favicon: Admin → Settings → General
  5. Theme files: Edit blade templates in packages/theme/resources/views/ then rebuild assets with npm run production
Q

Can I customize product attributes?

A
Yes — attributes are fully manageable:
  • Add custom attributes at Admin → Products → Attributes
  • Assign attributes to product types
  • Variant combinations are generated automatically from attributes
For entirely new database fields, you need a custom migration + model update (see the developer documentation).
Q

How do I add or translate text?

A
Use the built-in Translation Manager — no file editing required:
  1. Go to Admin → Translations
  2. Select the language to translate
  3. Search for the text key you want to change
  4. Enter the translation and save
Translations are organized by module (Admin, Frontend, Email, Validation) for easy navigation. Changes take effect immediately without restarting.
To add a new language: Admin → Settings → Languages → Add Language.

📚 Still have questions?

  • Check install.html for detailed installation steps
  • Check user-guide.html for full feature documentation
  • Review storage/logs/laravel.log for error details
  • Contact support via your CodeCanyon account with PHP version, error logs, and server details

surecommerce — FAQ

© 2026 DreamTeam. All rights reserved.  |  Install Guide  |  User Guide