Requirements
Before installing Paymenter, ensure your system meets these requirements:- PHP: 8.3 or 8.4
- Composer: Latest version
- Web Server: Apache or Nginx
- Database: MariaDB (recommended)
- Node.js: v22 or higher (for building assets)
- Redis: For caching (recommended)
Required PHP Extensions
Paymenter requires the following PHP extensions:ext-intlext-jsonext-mbstringext-pdoext-pdo_mysqlext-zipext-bcmathext-gd
Installation Methods
- Docker (Recommended)
- Manual Installation
Docker Installation
Docker is the recommended way to install Paymenter as it handles all dependencies automatically.Start Services
Start all services using Docker Compose:This will start three services:
- paymenter: The main application
- database: MariaDB database server
- cache: Redis cache server
Wait for Installation
The first startup will take a few minutes as it:
- Generates application keys
- Runs database migrations
- Sets up storage directories
- Copies default themes and extensions
Docker Compose Configuration
The Docker setup includes these services:| Service | Image | Purpose |
|---|---|---|
| paymenter | ghcr.io/paymenter/paymenter:latest | Main application |
| database | mariadb:lts | MariaDB database |
| cache | redis:alpine | Redis cache |
| asset-builder | node:22-alpine | Build frontend assets (optional) |
Persistent Data
The following directories are mounted as volumes:./storage/logs- Application logs./storage/public- Uploaded files./themes- Custom themes./extensions- Extensions./database- Database files
Post-Installation
Create Admin Account
After installation, create your first admin account through the web interface by visiting your Paymenter URL.Configure Cache
For better performance, configure Redis as your cache driver in the.env file:
SSL Certificate
It’s highly recommended to secure your Paymenter installation with SSL. You can use Let’s Encrypt:Troubleshooting
Permission Issues
If you encounter permission errors, ensure the web server user owns the Paymenter directory:Database Connection Failed
Verify your database credentials in the.env file and ensure MariaDB is running:
500 Internal Server Error
Check application logs:Queue Not Processing
Ensure the queue worker is running:Next Steps
Configuration
Configure environment variables, payment gateways, and mail settings
Updating
Learn how to update Paymenter to the latest version