Configuration

Required Environment Variables

Variable Description Example
APP_KEY Laravel application key (base64-encoded) base64:abc...==
JWT_SECRET Signing key for JWT access tokens (HS256) openssl rand -base64 32

The container will terminate on startup if any of these variables are missing.

Optional Environment Variables

Variable Default Description
APP_ENV production Environment mode (local, production)
APP_DEBUG false Debug mode (never use true in production)
APP_URL http://localhost:8080 Public URL of the application
APP_PORT 8000 Internal port of the PHP server
DB_CONNECTION sqlite Database driver (sqlite, mysql)
DB_DATABASE /app/storage/database.sqlite Database path (SQLite) or database name
CACHE_STORE file Cache driver (file, redis)
SESSION_DRIVER file Session driver (file, redis, cookie)
QUEUE_CONNECTION sync Queue driver (sync, redis)
PAYMENTS_DRIVER Active payment provider (sumup)
SUMUP_BASE_URL SumUp API base URL
SUMUP_TIMEOUT_SECONDS HTTP timeout for SumUp requests
SUMUP_WEBHOOK_TOLERANCE_SECONDS Time window for webhook signature verification
SUMUP_DEFAULT_CURRENCY Default currency (e.g., EUR)
SUMUP_SIMULATE Enable payment simulation (true)

Note: For production use, CACHE_STORE, SESSION_DRIVER, and QUEUE_CONNECTION should be set to redis to ensure horizontal scalability and persistent queue processing.