Skip to main content
Use this checklist to ensure your Site Store Pro installation is fully configured for a production deployment. Work through each section in order before accepting live orders.

Core Production Checklist

1

Environment Configuration

Set the following in your .env file:
  • APP_ENV=production
  • APP_DEBUG=false
  • Configure database: DB_DATABASE, DB_USERNAME, DB_PASSWORD
  • Configure mail server: MAIL_MAILER=smtp plus SMTP host, port, username, and password
  • Add reCAPTCHA keys: RECAPTCHA_SITE_KEY and RECAPTCHA_SECRET_KEY
  • Add OpenAI key: OPENAI_API_KEY (required only if using AI Article Writer or auto-translation)
  • Configure AWS S3 credentials (and Cloudfront CDN URL) if using S3 file storage
2

Database & Storage

  • Run php artisan migrate to apply all database migrations
  • Run php artisan storage:linkrequired for inline CMS image uploads to serve correctly
3

Asset Compilation

  • Run npm run build to compile and minify all Vite/Tailwind frontend assets
Never deploy with APP_DEBUG=true in production. Debug mode exposes stack traces, environment variables, and internal application details to end users.

Payment Processor Checklist

If Using Stripe

1

Install the Stripe SDK

2

Configure Environment

Add live credentials to .env:
Do not set STRIPE_SANDBOX_* keys in production. Remove or leave them unset to ensure live mode is used.
3

Admin Configuration

In Admin → Checkout → Processors:
  • Set Stripe as the Primary payment processor
  • Toggle Production to ON for live mode
4

Register Webhook

  • In your Stripe Dashboard, register the webhook endpoint:
  • Copy the webhook signing secret into .env as STRIPE_WEBHOOK_SECRET
5

Test Before Go-Live

  • Test an end-to-end checkout with a Stripe test card before going live
  • Verify the Production toggle is ON — not sandbox mode

If Using Paddle

1

Install the Paddle SDK

2

Configure Environment

Add live credentials to .env:
3

Admin Configuration

In Admin → Checkout → Processors:
  • Set Paddle as the Primary payment processor
  • Toggle Production to ON for live mode
4

Register Webhook

  • In your Paddle Dashboard, register the webhook endpoint:
  • Copy the webhook signing secret into .env as PADDLE_WEBHOOK_SECRET
5

Test Before Go-Live

  • Complete a test transaction using the Paddle sandbox account before switching to production

If Using Shipping Carrier Plugins (FedEx / UPS / USPS)

  • Run php artisan db:seed --class=PluginSeeder to register all built-in plugins
  • Navigate to Admin → Plugins → [Carrier] → Settings and enter your carrier API credentials
  • Navigate to Admin → Plugins → [Carrier] → Activation and activate each carrier plugin
  • Test live shipping rate calculation at /checkout/review with a shippable product in the cart

Artisan Commands Reference

DemoStoreSeeder is for development and demo environments only. Running them in production will populate your live store with fake product and content data.