ChainPay - Self-Hosted Crypto Payment GatewayChainPay - Self-Hosted Crypto Payment Gateway
Self-hosted multi-chain crypto payment gateway. Accept BTC, ETH, USDT, BNB, SOL & more. Embeddable widget + admin panel.ChainPay - Self-Hosted Crypto Payment Gateway
Self-hosted multi-chain crypto payment gateway. Accept BTC, ETH, USDT, BNB, SOL & more. Embed...
Overview
ChainPay Gateway is a self-hosted, multi-chain crypto payment gateway built for merchants who want to accept Bitcoin, Ethereum, USDT, BNB, Solana, Litecoin, Dogecoin and more without relying on a third-party processor.
One Laravel install, one MySQL database, one ZIP. Drop it on any host that runs PHP 8.3+, walk through the install wizard, and you're ready to take crypto payments via an embeddable widget, a hosted checkout page, or a REST API.
Why ChainPay?
- Self-hosted. Your server, your wallets, your keys. No platform fees, no rate limits beyond your RPC, no middleman touching your customers' money.
- 17+ chains supported. BTC, ETH, BNB, USDT (ERC-20 / BEP-20 / TRC-20), USDC, LINK, SHIB, BAT, BUSD, LTC, DOGE, BCH, XRP, SOL, ALGO, XMR, plus any ERC-20 / BEP-20 / TRC-20 token via the admin custom-token panel.
- Auto-confirms on chain. Built-in cron polls the blockchain every minute via Alchemy, BscScan, mempool.space, TronGrid, XRPL, Solana RPC and Algorand Indexer — payments confirm without you lifting a finger.
- Fiat fallback. Stripe + PayPal sit alongside crypto in the same picker. Customers choose at checkout.
- One-line widget embed. A single
<script>tag and a<div>with a checkout slug — popup or inline — and you're live on any website (WordPress, Shopify, custom HTML, anything). - Polished admin panel. Inertia + Vue 3 + Tailwind v4 dashboard with charts, activity feed, install-health monitoring, branded settings, security controls, role-based access, and a "Login as user" support flow.
Live demo
Try the full live install at chainpay.codic.online — pay a real demo transaction, browse the admin, read the docs at /docs/.
- Demo URL:Â chainpay.codic.online
- Admin login:Â
[email protected]Â / password:Âpassword - Documentation:Â chainpay.codic.online/docs
Features
- 17+ blockchain integrations — BTC, ETH, BNB, USDT (ERC-20/BEP-20/TRC-20), USDC, LINK, SHIB, BAT, BUSD, LTC, DOGE, BCH, XRP, SOL, ALGO, XMR, BTC Lightning
- Custom token admin — add any ERC-20, BEP-20 or TRC-20 token via the admin without code changes
- Auto-confirm via cron — chain-monitor job polls every minute, marks transactions confirmed, fires customer + merchant emails
- Embeddable widget — ~80 KB gzipped, popup or inline layout, pre-fill customer fields, fires DOM events for downstream integrations
- Hosted checkout — every checkout gets a public URL
/c/{slug}shareable by email, link, or QR code - Stripe + PayPal built-in alongside crypto with PaymentIntents, webhook signing, sandbox + live modes
- Multi-source rate engine — Coinbase, Binance, Bitstamp + custom JSON URL with automatic fallback
- BIP-21 / EIP-681 QR codes — wallet-scannable URIs pre-fill amount + address in the customer's wallet app
- MetaMask / Web3 connect — one-click pay button on EVM chains
- Pay page with progress rings — styled expiration timer + confirmation counter that update in real time
- Outbound webhooks — HMAC-SHA256 signed, exponential backoff retries, 8 event types
- Public REST API + Sanctum tokens for server-to-server integrations with scoped abilities
- Polished admin dashboard — 30-day revenue trends, status mix donut, gateway split bar, top customers leaderboard, install-health strip
- Role-based users — Owner / Admin / Agent with policy guards, force-password-reset, suspend/reinstate, "Login as user" impersonation with persistent banner
- Custom branding — logo, favicon, colours, login-page hero copy, custom CSS / JS injection on hosted checkout + Pay page + admin
- Settings tabs — General, Branding, Mail, Notifications, Security, Maintenance, Rates, Gateways
- Security defaults — Force-HTTPS-on-admin, IP allowlist (CIDR), session timeout, 2FA enforcement, no-store cache headers, audit log
- Customer + merchant emails — payment instructions on session create, confirmation receipt on confirm, all via SMTP / Resend / Postmark / SES
- VAT calculator — flat-rate per-country + reverse-charge for EU B2B, advisory totals on Stripe / PayPal sessions
- 86 locales included — JSON translation files ready to swap
- Install wizard — auto-launches on first hit, walks through DB creds, owner account, branding
- Demo mode flag —
APP_DEMO_MODE=trueblocks all admin writes with a friendly toast, perfect for sales demos - Pre-built & pre-installed — vendor and front-end already compiled in the ZIP, no Composer / Node needed on the buyer's server
Requirements
- PHP 8.3 or 8.4 (8.4 recommended) with extensions:
pdo_mysql,mbstring,bcmath,gmp,openssl,curl,intl,xml,zip,gd(orimagick) - MySQL 8.0+ or MariaDB 10.6+
- Web server — Nginx + PHP-FPM (recommended) or Apache with
mod_rewrite - Cron — every-minute schedule entry to run
php artisan schedule:run(chain monitor, rate refresh, webhook retries) - HTTPS — required in production (cookies + webhooks)
- 250 MB disk minimum (logs, QR cache, vendor)
- 256 MB PHP memory minimum (512 MB recommended)
- Free Alchemy API key for ETH + BSC + Solana (signup at alchemy.com — no credit card)
- SMTP credentials for outgoing mail (Resend / Postmark / SES / Mailgun / your own SMTP)
- Works on shared hosting (Hostinger, cPanel, Plesk, DirectAdmin) — no shell access required after first install if you use the wizard
Instructions
Live demo
Try the full product before you buy:
- Demo URL: chainpay.codic.online
- Admin login:
[email protected]/ password:password - Documentation: chainpay.codic.online/docs
The demo runs in safe-preview mode — you can browse every screen, complete a real test transaction, and read the docs, but admin save actions are disabled with a toast prompting purchase.
Quick start (5 minutes)
- Unzip the package onto your server. Point your domain's document root at the
public/directory inside the unzipped folder. - Visit your domain in a browser. The install wizard auto-launches because
.envis missing. - Step through the wizard:
- Database — host, name, user, password (the wizard tests the connection live)
- Owner account — name, email, password
- Branding — product name, tagline, primary colour
- Set up cron in your hosting panel — every minute, run
php artisan schedule:run. (Detailed Hostinger / cPanel / VPS instructions live at/docs/after install.) - Add wallet addresses in Admin → Wallets for each crypto you want to accept.
- Get a free Alchemy API key at alchemy.com and paste it into Admin → Settings → Blockchains (one key powers ETH, BSC, Solana, all ERC-20s, all BEP-20s).
- Embed the widget on your site:
<code><script src="https://your-domain.com/widget.js" defer></script> <div data-cpg-checkout="your-slug" data-cpg-layout="inline"></div></code>
Full documentation
After install, browse the docs at <a href="https://your-domain.com/docs/">https://your-domain.com/docs/</a> — covers installation, admin walkthrough, widget integration, REST API, webhooks, blockchain coverage, Stripe + PayPal setup, troubleshooting, and changelog.
Support
For setup help, bug reports, or feature requests, contact via the support inbox in your purchase email [email protected]
Other items by this author
| Category | Scripts & Code / PHP Scripts / Finance / Cryptocurrency |
| First release | 7 May 2026 |
| Last update | 7 May 2026 |
| HTML/CSS Framework | Bootstrap, Less |
| Software version | PHP 8.1, PHP 8.2, PHP 8.3, PHP 8.4 |
| Files included | .php, .css, .less, Javascript .js |
| Tags | paypal, laravel, Stripe, usdt, bitcoin payment, metamask, self hosted, qr payment, crypto payment gateway, ethereum payment, multi chain, payment widget, embed checkout, crypto invoice, chainpay |








