Invoice Bitcoin today - track payments on-chain.
CryptoZing is a self-hosted Bitcoin invoicing app built for people who want clear USD-denominated invoices, straightforward Bitcoin payment flows, and reliable on-chain payment tracking.
Create an invoice in USD, present a live BTC quote and QR code your client can trust, assign a unique payment address, and let CryptoZing watch the chain for payment activity from send to settle. No manual checking. No guesswork. Just clean invoices, an easy payment path, and real on-chain signals.
Website: https://cryptozing.app/
CryptoZing is built around a simple idea:
Bitcoin invoicing should feel clear, modern, and dependable.
That means:
- USD-first quoting so invoices stay familiar and readable
- Live BTC pricing so clients see a current quote
- Unique invoice addresses so payments are easier to attribute
- On-chain tracking so status updates reflect actual payment activity
- Client-friendly delivery with public links, QR codes, and receipts
- Create invoices in USD
- Store a BTC snapshot alongside the invoice
- Show a BIP21 payment URI and scannable QR code
- Auto-generate invoice numbers
- Add due dates, notes, and branding overrides
- Assign a unique Bitcoin address to each invoice
- Watch invoice addresses for incoming payments
- Detect partial payments
- Track sats received, confirmations, and payment history
- Update invoice status automatically as payment activity arrives
- Share public invoice links
- Rotate or disable public links at any time
- Support expiration windows for shared links
- Send invoice emails
- Track delivery and receipt flows when invoices are paid
- Connect a wallet account public key
- Validate wallet keys before saving
- Keep payment tracking tied to your own wallet lineage
- Review deliveries, alerts, and payment corrections inside the app
- Wallet-ready - account public key support with on-chain watching
- Client-friendly - public links, QR payments, and receipts
- Accurate - USD-first quoting with partial payment awareness
- On-chain aware - payment visibility from send to settle
- Delivery-ready - email sends with status logging
- Self-hostable - run it on your own infrastructure
- Connect a wallet account public key
- Create a client
- Create an invoice in USD
- CryptoZing derives a unique payment address for that invoice
- Share the invoice using email or a public link
- The client pays by scanning the QR code or using the Bitcoin URI
- CryptoZing watches the chain, records payment activity, and updates invoice state
CryptoZing is not trying to be a wallet.
It is an invoicing layer that helps you:
- quote cleanly
- collect cleanly
- verify cleanly
- communicate cleanly
The goal is a smoother path between invoice created and invoice settled.
- Laravel 12
- PHP 8.2+
- MySQL 8
- Blade + Alpine.js + Tailwind CSS
- Vite
- Laravel Sail / Docker Compose
- bitcoinjs-lib / bip32 / tiny-secp256k1
- simple-qrcode
git clone https://github.com/n8bar/CryptoZing.git
cd CryptoZingcp .env.example .envcomposer installRun this once to install vendor dependencies and make ./vendor/bin/sail available. After that, use Sail for Composer, npm, and Artisan commands in this repo.
./vendor/bin/sail up -d./vendor/bin/sail npm install./vendor/bin/sail artisan key:generate
./vendor/bin/sail artisan migrate./vendor/bin/sail npm run buildThen open the app in your browser.
./vendor/bin/sail npm run dev./vendor/bin/sail artisan test./vendor/bin/sail artisan wallet:watch-paymentsCryptoZing expects an account-level public key for invoice receiving.
Important:
- Do not paste a seed phrase
- Prefer a dedicated receiving account
- CryptoZing derives invoice addresses from that account key
- Reusing the same account elsewhere can make payment attribution less reliable
CryptoZing supports queued email delivery for invoice sends, receipts, owner notices, and client alerts.
Public invoice links are tokenized and can be:
- enabled
- disabled
- rotated
- set to expire
app/ Application code
config/ Laravel configuration
database/ Migrations and seeders
docs/ Product, ops, and milestone docs
public/ Public web root
resources/ Blade views and frontend assets
routes/ Web routes
tests/ Feature and unit tests
docker/ Container setup
- Plan:
docs/PLAN.md - Product spec:
docs/PRODUCT_SPEC.md - Backlog:
docs/BACKLOG.md - Changelog:
docs/CHANGELOG.log - Quick start:
docs/ops/get-live/QUICK_START.md - RC rollout checklist:
docs/ops/RC_ROLLOUT_CHECKLIST.md - Active milestone:
docs/milestones/16_MAILER_AND_ALERTS_POLISH_AUDIT.md - Onboarding Part 1 spec:
docs/specs/ONBOARD_SPEC.md - Post-payment onboarding spec:
docs/specs/POST_PAYMENT_ONBOARDING.md - Notifications spec:
docs/specs/NOTIFICATIONS.md - Payment corrections spec:
docs/specs/PAYMENT_CORRECTIONS.md - Partial payments spec:
docs/specs/PARTIAL_PAYMENTS.md
For coding conventions, workflow expectations, and environment reminders, see AGENTS.md.
CryptoZing is for freelancers, builders, merchants, and Bitcoin-friendly operators who want a better way to send invoices and track payments without handing the whole flow to a custodial processor.
CryptoZing aims to be:
- clear for senders
- easy for clients
- grounded in real on-chain activity
- simple to self-host
Invoice Bitcoin today. Track payments on-chain.
Remember: Not your keys, not your coins
MIT