Case Study - Cryptocurrency payment gateway
Payment processing platform that enables merchants to accept cryptocurrencies with multiple payment methods.
- Client
- Zonda Cash
- Year
- Service
- Web3 development
Overview
Merchants need a simple way to accept cryptocurrencies without handling the technical complexity of blockchain. Zonda Cash acts as an intermediary, processing payments and notifying merchants when transactions complete.
The system supports multiple methods: direct payments from MetaMask interacting with smart contracts, or payments through Binance Pay for users who prefer a more traditional experience.
What we did
- NestJS
- Next.js 13
- MongoDB
- Ethers.js
- RainbowKit
- Binance Pay
- Confirmation time
- < 30s
- Avg. fee
- 0.5%
- Blockchain support
- Multi-chain
- Uptime
- 99.9%
Backend architecture
NestJS structures the backend in modules: Merchant, Orders, Payment, Blockchain, Webhook. Each module handles its specific domain. Payments are validated by decoding blockchain transaction logs.
The webhook system notifies merchants when payments complete. A cron job retries failed webhooks to guarantee delivery.
Payment flow
The merchant creates an order specifying fiat amount. The customer accesses via link or QR and chooses payment method. With MetaMask, they interact directly with the Payment Portal contract. With Binance Pay, a traditional payment link is generated.
The backend validates the transaction by verifying the blockchain receipt, updates the order status, and fires the webhook to the merchant.