Virtual Account
A Brick Virtual Account (VA) is a generated bank account number used to receive customer bank transfer payments. Businesses use Virtual Account payments to map incoming transfers to a customer, order, invoice, wallet top-up, or other internal reference.
Use Virtual Account when your customers prefer bank transfer payment and your system needs structured reconciliation. Brick supports Open VA for reusable flexible-amount payments and Close VA for fixed-amount payments with an expiration time.
What You Can Do With Virtual Account
- Generate Open VA numbers for reusable flexible-amount payments.
- Generate Close VA numbers for fixed-amount, time-limited payments.
- Create VAs from the Brick Dashboard or through API.
- Receive callbacks when VA payments are received.
- Check VA payment status for reconciliation and support.
- Set up same-day settlement for eligible banks and accounts when available for your account.
Types of VA
Open VA
An Open VA allows customers to send a flexible amount. It is reusable and not restricted by a predefined value. Customers input the payment amount themselves through mobile banking, internet banking, or ATM.
Typical use cases:
- Ewallet Top-ups
- Flexible Deposits
For every successful payment, Brick will:
- Automatically detect the transaction
- Send a callback notification to your server
| Bank Name | Bank Short Code | Max Amount | Settlement Time |
|---|---|---|---|
| BRI | BRI | Rp500.000.000 | T+1 working day |
| Bank Mandiri | MANDIRI | Rp1.000.000.000 | T+1 working day |
| Bank Danamon | DANAMON | Rp100.000.000 | T+1 working day |
| Bank CIMB Niaga | CIMB_NIAGA | Rp500.000.000 | T+1 working day |
| Bank Permata | PERMATA | Rp500.000.000 | T+1 working day |
| Bank Hana | HANA | Rp100.000.000 | T+1 working day |
| Bank Sahabat Sampoerna | SAHABAT_SAMPOERNA | Rp100.000.000 | T+1 working day |
| BCA | BCA | Rp500.000.000 | T+2 working day |
Close VA
A Close VA is tied to a specific payment amount and includes an expiration time. This ensures the customer must:
- Pay the exact amount
- Pay before the VA expires (set between 1 hour to 30 days)
Typical Use Case:
- E-commerce checkout
- Invoice payment
- Order-based transactions
Close VAs are especially useful when you want to:
- Lock stock availability
- Match payments with orders without reconciliation effort
| Bank Name | Bank Short Code | Max Amount | Settlement Time |
|---|---|---|---|
| BRI | BRI | Rp1.000.000.000 | T+1 working day |
| BNI | BNI | Rp100.000.000 | T+1 working day |
| Bank Mandiri | MANDIRI | Rp1.000.000.000 | T+1 working day |
| Bank CIMB Niaga | CIMB_NIAGA | Rp1.000.000.000 | T+1 working day |
| Bank Permata | PERMATA | Rp1.000.000.000 | T+1 working day |
| Bank Danamon | DANAMON | Rp100.000.000 | T+1 working day |
| BCA | BCA | Rp500.000.000 | T+2 working day |
⚡ Need Same Day Settlement?
Reach out to our sales team to enable instant balance reflection for selected banks.
How It Works
Each VA is tied to a specific order, customer, or use case. When a customer sends a payment to the assigned VA number, Brick detects the transaction and sends a callback to your server. After the settlement time is fulfilled, the funds are reflected in your Brick balance.
- Supported Range: Rp10.000 – Rp1.000.000.000
- Settlement Time: Varies by bank (see tables below)
Callback Notification
For both Open and Close VAs, Brick will send a callback to your configured URL once the payment is received. This allows you to:
- Auto-confirm orders
- Update user balance
- Send payment confirmation notifications
VA Status Lifecycle
When a customer makes a payment to a generated Virtual Account (VA), two statuses are triggered:
- Paid – Sent in real time via callback, confirming that the payment has been received by the bank.
- Completed – Sent after the payment has been settled and added to your Brick balance, based on:
- Your contracted settlement agreement, or
- The default settlement schedule: T+1 or T+2 working days depending on the bank.
What to read next
- Want to use VA via dashboard? See the Create VA via Dashboard Guide.
- Prefer to integrate VA via API? See the Generate Open VA API Guide or Generate Close VA API Guide
