Skip to main content
OwnPay includes a built-in web installer that checks your server configuration, creates the database schema, and bootstraps your master administrator account. Upload the files, visit your domain, and the wizard handles the rest - no command-line experience needed.

Prerequisite checks

Verify all of these are active: mbstring, pdo_mysql, gd, curl, zip, json, openssl, bcmath, intl.Run php -m in a terminal to check, or view the PHP Info page in your hosting panel.
The web server must be able to write to:
  • storage/ (logs, sessions, cache, uploads)
  • public/assets/uploads/ (brand logos, attachments)

Choose your deployment method

Works with cPanel, Plesk, DirectAdmin, and most shared hosting providers (Hostinger, Namecheap, SiteGround, etc.).
1

Download the release

Download the latest .zip from GitHub Releases.
2

Upload and extract

Upload the .zip to your web root (public_html/) via File Manager or FTP. Extract it directly into the root folder.
If extraction creates a nested folder like public_html/ownpay-v0.2.0/, move all files up one level into public_html/ and delete the empty folder.
3

Create a MySQL database

In your hosting panel, create a new database and user with ALL PRIVILEGES. Note the host (usually localhost or 127.0.0.1).
4

Set PHP to 8.3

Open Select PHP Version (cPanel), PHP Settings (Plesk), or PHP Version Selector (DirectAdmin) and choose 8.3.
5

Launch the web installer

Visit https://yourdomain.com/install and follow the 4-step wizard: environment verification, database configuration, schema import, and admin account creation.
6

Set up the cron job

Add a cron job that runs every minute:

Post-installation verification

After the installer finishes, confirm everything is working:
1

Verify the dashboard loads

Navigate to https://yourdomain.com/login and sign in with the admin credentials you created. You should see the dashboard.
2

Confirm cron is running

Wait two minutes, then check the system logs for scheduled task entries. If no entries appear, verify the cron command path is correct.
3

Configure SMTP

Go to System > Settings > Mail Settings and enter your SMTP credentials. Send a test email to confirm delivery.
4

Enable two-factor authentication

Go to My Account and enable 2FA. This is strongly recommended for the master admin account.

Troubleshooting

  • Set APP_DEBUG=true in .env to see the actual error message.
  • Check storage/logs/ for stack traces.
  • Ensure the web server can read storage/ and public/assets/uploads/.
  • Verify all required PHP extensions are loaded (php -m).
  • Confirm memory_limit is at least 512M in php.ini.
  • Use 127.0.0.1 instead of localhost in the DB host field.
  • Verify the user has ALL PRIVILEGES on the database.
  • Confirm MySQL is listening on port 3306.
  • On shared hosting, set storage/ to 755 or 775 via File Manager.
  • On VPS, run sudo chown -R www-data:www-data storage/.
Last modified on August 25, 2026