
How to Make an App Like BitPay

How to Make an App Like BitPay
Cryptocurrency payments have moved from a fringe experiment to a legitimate revenue channel for merchants worldwide. BitPay sits at the center of that shift, processing billions in crypto transactions and giving businesses a way to accept Bitcoin, Ethereum, stablecoins, and more without holding volatile assets on their balance sheet.
If you're planning to build a crypto payment app of your own, this guide walks through what BitPay actually does under the hood, the features you'll need, the tech stack that supports them, and a realistic view of cost and timeline.
What Is BitPay, Really?
BitPay is often described as "the PayPal of crypto," but that undersells the engineering. It's a crypto payment service provider (PSP) that performs several distinct jobs at once:
- Payment gateway — generates invoices, monitors blockchains for incoming transactions, and confirms settlement.
- Currency conversion layer — locks an exchange rate at invoice creation and converts crypto to fiat so merchants avoid volatility exposure.
- Merchant settlement engine — deposits fiat (or crypto, if preferred) into merchant bank accounts on a scheduled cycle.
- Consumer wallet — a non-custodial mobile wallet where users store keys, swap assets, and spend.
- Prepaid card issuer — a debit card that lets users spend crypto balances anywhere traditional cards are accepted.
You don't need all five to launch. In fact, trying to build all five at once is the most common way these projects stall.
Step 1: Pick Your Slice of the Market
Before writing a line of code, decide which side of the transaction you serve.
Merchant-first products focus on checkout plugins, invoicing, POS integrations, and accounting exports. Your buyers are businesses, your sales cycle is longer, and your compliance burden centers on money transmission and settlement.
Consumer-first products focus on the wallet: key management, swaps, spending, and a clean onboarding flow. Your growth is driven by app store presence and referrals, and your compliance burden centers on KYC/AML if you touch fiat on-ramps.
Hybrid products do both, which is where BitPay landed — but it got there over a decade, not in one release.
A useful starting position is a merchant payment gateway with a lightweight companion wallet. It gives you a clear revenue model (transaction fees) from day one.
Step 2: Core Feature Set
Merchant-Side Features
| Feature | Why It Matters |
|---|---|
| Invoice generation API | The atomic unit of every crypto payment |
| Rate locking | Freezes the exchange rate for a window (typically 10–15 minutes) |
| Multi-chain support | BTC, ETH, Polygon, Solana, and major stablecoins |
| Webhook notifications | Tells the merchant's system when a payment confirms |
| Settlement scheduling | Daily or weekly fiat payouts to a bank account |
| Refund handling | Partial and full refunds, including rate-difference logic |
| E-commerce plugins | Shopify, WooCommerce, Magento, BigCommerce |
| Merchant dashboard | Transaction history, reconciliation, CSV/accounting exports |
Consumer-Side Features
- Non-custodial wallet with BIP-39 seed phrase generation and encrypted local key storage
- Multi-asset support across chains, with clear fee estimation before signing
- QR scan-to-pay for in-store and invoice payments
- In-app swaps via DEX aggregators or a liquidity partner
- Fiat on-ramp through a third party like MoonPay, Ramp, or Transak
- Biometric unlock and device-level secure enclave usage
- Transaction history with fiat-equivalent values at time of transaction
Cross-Cutting Essentials
- KYC/AML onboarding flows with tiered verification
- Sanctions and wallet-screening checks (Chainalysis, Elliptic, TRM Labs)
- Admin panel for support, dispute handling, and manual intervention
- Audit logging for every state change on every invoice
Step 3: Architecture and Tech Stack
The Payment Flow
The heart of a BitPay clone is the invoice lifecycle. It looks like this:
- Merchant's server calls your API to create an invoice for, say, $250 USD.
- Your rate engine pulls a price from aggregated exchanges and locks it for 15 minutes.
- You derive a fresh receiving address from an HD wallet (never reuse addresses).
- The customer sees a payment page with a QR code, amount in crypto, and a countdown.
- Your blockchain listeners watch the mempool and confirmed blocks for a matching payment.
- On required confirmations, the invoice flips to
confirmedand a webhook fires. - Your treasury system converts the crypto to fiat via an exchange partner.
- Settlement batches fiat into the merchant's bank account.
Edge cases eat most of the engineering time: underpayments, overpayments, payments arriving after the rate lock expires, chain reorgs, stuck transactions with low gas, and double-spend attempts. Model these as explicit invoice states from the beginning — retrofitting them later is painful.
Recommended Stack
Backend: Node.js with NestJS or Go for the transaction services. Go is worth considering for the blockchain listeners specifically, where concurrency matters.
Databases: PostgreSQL as the system of record for invoices and ledgers. Redis for rate caching and rate-lock TTLs. Consider an append-only ledger table with double-entry accounting semantics — you will need it for reconciliation and audits.
Blockchain access: Run your own nodes for the chains that matter most (Bitcoin Core, Geth/Erigon) and use providers like Alchemy, QuickNode, or Infura for long-tail chains. Self-hosting reduces dependency risk but adds real ops cost.
Queueing: Kafka or RabbitMQ for event-driven confirmation handling and webhook retries with exponential backoff.
Mobile: React Native or Flutter for cross-platform speed, but drop to native modules for key storage (iOS Keychain/Secure Enclave, Android Keystore). Do not store private keys in JavaScript memory longer than necessary.
Web: React or Next.js for the merchant dashboard and hosted checkout pages.
Infrastructure: Kubernetes on AWS or GCP, with strict network segmentation between the key-management service and everything else. HSMs or a provider like Fireblocks for hot wallet custody.
Step 4: Security Is the Product
In a payments app, security failures aren't bugs — they're existential events.
- Hot/cold wallet split. Keep only operational float in hot wallets. Sweep to cold storage on a threshold.
- Multi-signature or MPC for treasury movements. No single key should move funds.
- Withdrawal allowlists and velocity limits on merchant settlement accounts.
- Rate-limit and idempotency keys on every API endpoint. Duplicate invoice creation is a real attack surface.
- Third-party audits of smart contracts, if you deploy any, and penetration testing of the full stack before launch.
- Bug bounty program from day one of public beta.
Step 5: Compliance and Licensing
This is where most crypto payment projects underestimate scope. Depending on your jurisdictions:
- United States: FinCEN MSB registration plus state-by-state money transmitter licenses (MTLs), which can take 18+ months and significant capital.
- European Union: MiCA authorization as a crypto-asset service provider (CASP).
- United Kingdom: FCA cryptoasset registration.
- Singapore, UAE, etc.: Each has its own payment services framework.
Many teams launch in a narrower regulatory footprint first, or partner with a licensed entity as a sponsor. Budget for legal counsel before you budget for engineering.
Step 6: Monetization
- Transaction fees — BitPay's standard is around 1%, undercutting card interchange, which is the core pitch.
- Settlement or FX spread on crypto-to-fiat conversion.
- Card interchange revenue if you issue a prepaid debit card.
- Swap fees on in-app conversions.
- Subscription tiers for advanced merchant tooling, multi-user access, or higher API limits.
Cost and Timeline
Rough ranges for a production-grade build:
| Scope | Timeline | Ballpark Cost |
|---|---|---|
| MVP gateway (2–3 chains, hosted checkout, basic dashboard) | 4–6 months | $80k–$150k |
| Gateway + consumer wallet apps (iOS/Android) | 7–10 months | $150k–$300k |
| Full platform with card program, swaps, multi-region compliance | 12–18 months | $350k–$700k+ |
Add ongoing costs for node infrastructure, blockchain data providers, compliance screening subscriptions, security audits, and a support team that can respond to "where is my payment" within minutes.
Common Mistakes to Avoid
Treating crypto like card payments. Blockchain transactions are irreversible and asynchronous. Your entire state machine has to reflect that.
Ignoring underpayments. Users will send $249.87 for a $250 invoice because of a wallet fee estimate. Decide your tolerance policy early and communicate it clearly.
Skipping reconciliation tooling. If your finance team can't match on-chain movements to ledger entries automatically, you'll drown in manual work by month three.
Launching with too many chains. Every chain is a separate node, a separate fee model, a separate set of failure modes. Start with two or three and expand based on merchant demand.
Underinvesting in merchant onboarding. A developer who can't get a test invoice working in fifteen minutes will leave. Sandbox environments, clear docs, and copy-paste SDKs are growth features.
Final Thoughts
Building an app like BitPay is less a blockchain project and more a payments infrastructure project that happens to settle on blockchains. The winning teams treat reliability, reconciliation, and compliance as first-class product concerns rather than afterthoughts.
Start narrow — one clear user, two or three chains, one settlement path — get it genuinely reliable, then expand. The crypto payments market rewards the platforms merchants can trust with real money, and trust is built in the boring parts of the system.
Have a project in mind? Contact Sodio Technologies to discuss your requirements and explore the right technology solution for your business.
/// Work with us
Talk to the engineers who'd build it
You'll get a technical scope, timeline and cost estimate from the people doing the work, not an account manager. In-house team, no subcontracting, since 2016.
