Collect payments with
virtual accounts.
Integrate Bond once, generate virtual accounts for your customers, receive payments and automatically identify who paid — without manual reconciliation.
Bond Collections API
Virtual Account
Create Virtual Account
Customer Reference
CUS-839203
Customer Name
Ada Okafor
Account Type
Dedicated (Static)
How It Works
Account generation to payment — in five steps.
The entire flow is automated. Once you have a virtual account number, your customer pays using any standard bank transfer and your system is notified automatically.
API Request
Your application calls POST /accounts/virtual with the customer reference and account type.
API Request
Your application calls POST /accounts/virtual with the customer reference and account type.
Account Generated
Bond generates a unique virtual account number and returns the account details immediately.
Account Generated
Bond generates a unique virtual account number and returns the account details immediately.
Customer Pays
Your customer makes a bank transfer to the virtual account using any bank or mobile app.
Customer Pays
Your customer makes a bank transfer to the virtual account using any bank or mobile app.
Webhook Notification
Bond sends a webhook to your configured endpoint when the payment is received and settled.
Webhook Notification
Bond sends a webhook to your configured endpoint when the payment is received and settled.
Payment Identified
The webhook payload includes the customer reference, amount and transaction reference for reconciliation.
Payment Identified
The webhook payload includes the customer reference, amount and transaction reference for reconciliation.
Account Types
Static and dynamic virtual accounts.
Static
Dedicated Virtual Accounts
Assign a permanent virtual account to each customer. Any payment made to that account is automatically attributed to the customer — regardless of the amount or timing. Ideal for wallets and recurring collections.
- Permanent account per customer
- No expiry date
- All payments auto-attributed
- Wallet funding, subscriptions
Dynamic
Transaction-Specific Accounts
Generate a unique virtual account for each individual transaction or invoice. Once the expected payment is received, the account expires. Useful for e-commerce checkouts, invoice payments and B2B collections.
- One account per transaction
- Configurable expiry
- Precise payment matching
- Invoices, checkouts, B2B
Benefits
Why virtual accounts simplify collections.
Unique Payment References
Every account carries a customer reference, eliminating ambiguous payment attribution.
Automatic Attribution
Incoming payments are immediately linked to the correct customer or transaction.
Real-Time Webhooks
Your application is notified the moment a payment lands and settles.
API-Driven Creation
Accounts are generated programmatically — no manual steps required.
Easier Reconciliation
Each payment includes the reference, amount and timestamp for automated reconciliation.
Instant Collection Tracking
Monitor collections against expected amounts in real time.
Use Cases
Where virtual accounts are used.
Wallet Funding
Let users fund their wallets via bank transfer to their dedicated virtual account.
Loan Repayment
Generate a unique account per loan disbursement. Repayments are automatically attributed.
School Fees
Assign accounts to students and reconcile fee payments without manual bank statement review.
B2B Invoice Collections
Issue invoice-specific accounts so business payments are matched without ambiguity.
Marketplace Collections
Collect seller payments through individual virtual accounts before settlement.
E-commerce Payments
Offer bank transfer checkout using a unique account generated per order.
Investment Platforms
Let investors fund positions through dedicated accounts that automatically track contributions.
Agent Collections
Assign virtual accounts to agents who collect on behalf of the platform.
Get Started
Add collections to your product.
Generate virtual accounts in your sandbox environment and test the full payment and webhook flow before going live.