In the examples below,
customer and wallet are application-layer concepts. Implement them in your own backend, or map them to tenant-specific overlays if your environment exposes extra draft APIs. The KYC snippets assume a tenant-gated reviewed identity surface and should still be validated against your enabled environment.What You’ll Build
By the end of this guide, you’ll have:- Customer onboarding with KYC
- Virtual bank accounts for each customer
- Wallet management
- Money transfers
- Virtual card issuing
- Transaction history
- Real-time notifications
Primitive-First Model
Build your app in layers:- primitives: transfers, webhooks, audit-safe references, and tenant-gated identity checks where enabled
- optional rail add-ons: virtual accounts, cards, and payment collection
- product logic in your own backend: ledgers, onboarding flows, limits, rewards, savings experiences, and subscription logic
Prerequisites
Before starting, ensure you have:- Zentra developer account (Create account)
- Basic knowledge of your chosen programming language
- Development environment set up
Architecture Overview
Step 1: Set Up Authentication
First, set up your API client:Step 2: Customer Onboarding
When a user signs up, create your own app-level customer record and then run KYC against Zentra’s tenant-specific identity surface if your environment exposes it:Step 3: Create Virtual Account
Create a dedicated account number for the customer:Step 4: Set Up Wallet
Project or initialize the user’s balance state in your own backend:Step 5: Handle Deposits
Listen for webhook notifications when virtual account is credited:Step 6: Enable Transfers
Allow users to send money:Step 7: Issue Virtual Cards
Let users create virtual cards:Step 8: Transaction History
Display user’s transaction history:Step 9: Real-time Balance Updates
Use webhooks to update balances in real-time:Step 10: Going Live
When ready for production:-
Switch to Live Mode
-
Complete Compliance
- Submit business documents
- Complete KYC verification
- Set up webhook endpoints
-
Test Thoroughly
- Run end-to-end tests
- Test error scenarios
- Load test your infrastructure
-
Monitor Everything
- Set up error tracking (Sentry)
- Monitor API usage
- Track transaction success rates
Complete Example App
Here’s a minimal Express.js app. Notice that user/customer state and transaction history live in your backend, while Zentra handles the reviewed rail and money-movement surfaces:Next Steps
API Reference
Explore all available endpoints
Webhook Guide
Master webhook handling
Going Live
Production checklist
Test Data
Test in sandbox mode