Getting started
Requirements
The server, database, domain and network access a Paybob installation needs.
Paybob runs in Docker on a Linux server you control. The installer checks every requirement below before it changes anything, and tells you what to fix.
Server
| Requirement | Details |
|---|---|
| Operating system | Ubuntu 22.04, Ubuntu 24.04 or Debian 12, 64-bit |
| Processor | x86-64 (amd64) or ARM64 |
| Memory | 2 GB RAM recommended. With less than 2 GB and no swap, the installer offers to create a 2 GB swap file |
| Disk | At least 5 GB free for the installation and its backups, plus at least 3 GB free for Docker's images |
| Access | Root, or a user that can run sudo |
| Ports | 80 and 443 free for the built-in HTTPS proxy, unless you bring your own proxy |
Docker doesn't need to be installed in advance. If it's missing, the installer offers to install it from Docker's official repository.
Other Linux distributions
Other 64-bit Linux distributions aren't officially supported. The installer only continues on one if Docker already works there and you pass --force-unsupported-os. See Installer options.
A fresh, dedicated VPS is the simplest choice. Paybob can share a server with other sites if you put your own web server or proxy in front of it; see Use your own proxy.
Domain and HTTPS
- A domain or subdomain for Paybob, such as
pay.example.com, with a DNS A record pointing at your server's public IP address. Set this up before you install. - Paybob requires HTTPS in production. The built-in proxy gets and renews a free Let's Encrypt certificate for your domain automatically.
- To give a Brand its own domain for customer pages later, see Custom domain.
Using Cloudflare?
Paybob works with the record Proxied (orange cloud) or DNS only. When it's proxied, the installer warns that your domain resolves to an address that isn't the server's: that's expected behind Cloudflare and you can carry on. Set Cloudflare's SSL/TLS mode to Full (strict).
Database
You can use either:
- The bundled database (the default): a MariaDB server that runs next to Paybob, managed and backed up by the installer. Nothing to set up.
- Your own database server: MariaDB 10.6 or later, or MySQL 8.0 or later. It can run on the same server or elsewhere. Create an empty database and a user for Paybob first. The installer checks the version during installation and every upgrade.
SQLite and other databases aren't supported.
Network access
Your server must be able to make outgoing HTTPS connections to:
| Destination | Why |
|---|---|
get.paybob.io | Release files, the installer, and update packages |
The container image registry (ghcr.io) | Paybob's Docker images |
| Docker's package repository | Only if the installer installs Docker for you |
license.paybob.io | Activating and validating your license. Required: there's no offline activation |
cdn.jsdelivr.net | Daily exchange-rate updates. Optional: you can turn automatic sync off and enter rates by hand |
| Your payment providers and webhook URLs | Gateways talk to their providers; webhooks go to your own systems |
graph.facebook.com | Only if you use Meta Pixel |
Incoming, Paybob only needs ports 80 and 443 (or the port of your own proxy).
A license
Paybob needs an active license for the domain you install it on. You'll activate it in the panel after installing. See License.
Paybob doesn't need an email server to install. Until you set up email, messages such as invoice emails are written to the log instead of being sent. To send real email, configure the SMTP addon per Brand after installing. See After installing.
For SMS verification
To verify mobile-wallet and bank payments from SMS, you'll also need an Android phone that receives your payment SMS, with the Android app that forwards them to Paybob. This is optional and can be set up at any time. See Devices.
Checklist
- A supported Linux server with root access and 2 GB RAM
- 8 GB of free disk space (5 GB for Paybob, 3 GB for Docker)
- Ports 80 and 443 free
- A domain with an A record pointing at the server
- Outgoing HTTPS allowed
- Your license key
Ready? Continue to Install on a VPS.