The self-hosted, open-source payment gateway automation platform.
🌐 Website · 📖 Docs · 🎓 Learn · 🧩 Plugins · 📰 Blog ·
Namepart — Powering open-source fintech infrastructure. Become a Sponsor →
Note
OwnPay is in Public Beta (v0.1.0). It's stable, hardened (PHPStan level 9 + automated test suite), and ready to self-host today. We're gathering real-world feedback on the road to 1.0 — tell us what you find.
- What is OwnPay?
- Why OwnPay?
- Features
- How It Works
- Deploy to Your Server
- Run Locally / Contribute
- Tech Stack
- Documentation & Ecosystem
- FAQ
- Roadmap
- Sponsors
- Contributors
- Community & Support
- Security
- License
OwnPay is an enterprise-grade, self-hosted payment gateway automation platform. It is built for developers, entrepreneurs, and businesses who want absolute sovereignty over their payment infrastructure, customer data, and transaction flows without paying middleman fees or relying on third-party SaaS platforms.
With native support for over 120+ payment gateways, a secure double-entry ledger database, white-labeled multi-brand management, and a sandboxed plugin engine, OwnPay gives you the power of a commercial payment gateway on your own private server.
Most payment platforms make you a tenant on their infrastructure — your data, your customers, and your money flow through a third party you don't control. OwnPay flips that. You run it on your own server, own every record, and answer to no middleman.
Your payment gateway. Your server. Your data. Your rules — forever.
|
Complete Ownership Your financial infrastructure lives on your server. No middlemen, no third-party access, no vendor lock-in. Ever. |
Built for Builders A clean custom core, a sandboxed plugin system, and a full REST API — engineered for developers who demand control. |
Open & Community-Driven AGPL-3.0 licensed and free forever. Transparent, auditable, and shaped by the community that runs it. |
|
|
flowchart LR
M["🏪 Merchant / Store"] -->|Create payment| O["⚙️ OwnPay Core"]
O -->|White-label checkout| C["👤 Customer"]
C -->|Pays via| G["💳 Gateway / MFS"]
G -->|Callback + webhook| O
O -->|Verified result + ledger entry| M
OwnPay sits on your server between your store and the world's payment providers. It renders a branded checkout, routes the payment through the gateway the customer chose, verifies the result (checksum + signature + webhook), books a double-entry ledger record, and notifies your store — all without a third party ever touching your data.
Want the deep dive? Read the Architecture Guide →
OwnPay ships as a self-contained release archive — the same zip works on shared hosting, a VPS, or a dedicated server, and doubles as the installer. No build step required.
Requirements: PHP 8.3+ (
bcmath,json,mbstring,openssl,pdo_mysql,curl) · MySQL 8 / MariaDB 10.4+ · HTTPS strongly recommended.
🌐 Shared Hosting (cPanel / DirectAdmin — no SSH needed)
- Download the latest
ownpay-x.y.z.ziprelease. - In your hosting File Manager, upload and extract it into your site directory.
- Create a MySQL database + user and note the credentials.
- Point your domain's document root to the
public/folder (or extract sopublic/maps to your web root). - Visit your domain — the
/installwizard checks requirements, writes.env, imports the schema, and creates your admin account.
That's it. Dependencies (vendor/) are bundled in the release, so Composer is not required on the server.
🖥️ VPS / Dedicated Server (Nginx or Apache + PHP-FPM)
# 1. Get the release (or git clone for source installs)
cd /var/www
curl -L -o ownpay.zip https://github.com/own-pay/OwnPay/releases/latest/download/ownpay.zip
unzip ownpay.zip -d ownpay && cd ownpay
# 2. (Source installs only — release zips already bundle vendor/)
# composer install --no-dev --optimize-autoloader
# 3. Make runtime dirs writable by the web server
chown -R www-data:www-data storage public/assets/uploadsPoint your web server's root at public/ and route all requests to public/index.php. An Apache .htaccess is included; an nginx.conf.example ships in the repo root. Then open your domain and complete the /install wizard.
Testing OwnPay or contributing? Get a local instance running in ~2 minutes on Windows, macOS, or Linux:
git clone https://github.com/own-pay/OwnPay.git
cd OwnPay
composer install
mysql -u root -p -e "CREATE DATABASE ownpay CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
php -S localhost:8000 -t public # then open http://localhost:8000 → /install wizard🛠️ Full local guide (Laragon · Herd · native · tunnels · troubleshooting): docs/LOCAL_SETUP.md 🤝 Ready to contribute? Start with CONTRIBUTING.md — coding standards, workflow & PR process.
Run the same checks CI does before opening a PR:
composer test # PHPUnit
composer analyse # PHPStan (level 9)
composer lint # Twig + JS + CSS|
⚙️ Backend
|
🔐 Security & Quality
|
| Resource | Where | What you'll find |
|---|---|---|
| 🌐 Website | ownpay.org | Product overview & download |
| 📖 Developer Docs / API | docs.ownpay.org | REST API reference |
| 🎓 Learn / Guides | learn.ownpay.org | Step-by-step tutorials, how-tos, deployment & integration |
| 🧩 Plugins | plugin.ownpay.org | Gateway & plugins catalog |
| 📰 Blog & Updates | blog.ownpay.org | Releases, changelog & announcements |
| demo.ownpay.org | Try it without installing |
In this repository: Architecture · Local Setup · Translations · Contributing · Roadmap · Security · Support · Governance · Code of Conduct
What's the current project status?
OwnPay is available as Public Beta v0.1.0 — feature-complete, security-hardened, and ready to self-host. We're collecting real-world feedback on the path to a 1.0 stable release. Grab the latest release to get started.
What does "Public Beta" mean for production use?
It's stable and usable today. For production, pin to a tagged release, test in staging first, keep backups, and follow the hardening notes in the docs. OwnPay handles real money — correctness and security are the top priorities on the road to 1.0, and your issue reports directly shape it.
Why a custom framework instead of Laravel or Symfony?
OwnPay is built around requirements off-the-shelf frameworks don't solve cleanly — multi-brand domain isolation, a sandboxed plugin execution model, and a domain-specific hook engine. A full framework would mean fighting its conventions rather than leveraging them. The custom core gives us full control of the boot pipeline, zero dead code, and a security surface we own end-to-end.
Can I run it on cheap shared hosting?
Yes. The release archive bundles all dependencies, so no SSH or Composer is needed on the server — upload, point your domain at public/, and run the installer. You just need PHP 8.3+ and a MySQL/MariaDB database.
How do I add a new payment gateway?
Gateways are plugins. Add a directory under modules/gateways/<slug>/ with a manifest.json and an adapter implementing GatewayAdapterInterface. See the gateway guide on plugin.ownpay.org and the architecture overview in docs/ARCHITECTURE.md.
Do you accept sponsors and donations?
Yes — and they keep the project alive. Sponsorships fund infrastructure, developer time, and security tooling. Visit ownpay.org/donate or email ping@ownpay.org.
OwnPay is shipping toward a stable 1.0. Highlights on the horizon: a public live demo, an expanded plugin marketplace, mobile companion app GA, and deeper deployment tooling.
➡️ See the full ROADMAP.md for what's planned, in progress, and shipped.
OwnPay is made possible by the generous support of our sponsors.
| Contributor | Role | Profile / Website |
|---|---|---|
| Fattain Naime | Lead Developer & Maintainer | iamnaime.info.bd |
| Tahira Akter Hira | Logo & Brand Design | |
| M Azmain Israq | UI/UX Designer | azmain.pp.ua |
| Hamidullah Ismail | Features and Reviewer |
Contributions of every kind are welcome — see CONTRIBUTING.md.
Security is foundational to OwnPay. If you discover a vulnerability, please do not open a public issue.
Report it privately to security@ownpay.org — full policy in SECURITY.md. We're grateful to everyone who helps keep the community safe.
OwnPay is distributed under the GNU Affero General Public License v3.0 (AGPL-3.0). The core platform is, and will always remain, free and open source.
Built by the community, for the community. ❤️
#OwnPay #OpenSource #SelfHosted #PaymentGateway #Fintech #DataSovereignty