Virtual Account (v2)

What is a Virtual Account?

Virtual Account (VA) is one of the most widely used payment methods in Indonesia, providing a secure, automated, and highly reliable way for customers to make payments to businesses.

A VA is a unique virtual number assigned under a specific bank and linked to a customer or a transaction. When the customer transfers money to that VA number, the system automatically matches the payment to the correct invoice or order, reducing manual work and minimizing errors.


Why Businesses Use Virtual Accounts

Virtual Accounts help merchants by:

  • Automating the matching of each payment to the correct customer or order or invoice
  • Reducing manual operational work and human error
  • Supporting high-volume collections such as ecommerce checkout, billing cycles, top-ups, and recurring payments
  • Offering customers a familiar and convenient payment method (ATM, mobile banking, or internet banking)

Bank Routing / Interbank Support

Although each VA is created under a specific issuing bank (BRI, BNI, BCA, Mandiri), some sender banks may support transfers to Virtual Accounts of other banks, typically through RTOL or BI-FAST.

Support depends entirely on the sender bank’s capabilities, and may depend on the channel or the bank’s policies.

This means customers can sometimes pay a VA using a different bank, as long as their sending bank supports transfers to that VA format.


Visit our API documentation to begin integrating Ayoconnect’s Virtual Account solution.


Supported VA Issuing Banks

Bank NameBank CodeSingle-use VAMulti-use VAOpen AmountClosed Amount
BCA014
BNI009
BRI002
Mandiri008

Customer Journey - VA Payment

  1. Customer selects products or services on the merchant platform.
  2. Customer chooses Virtual Account as the payment method.
  3. Customer selects the bank for the Virtual Account (e.g., BRI, BNI, BCA, Mandiri).
    • This selection determines which bankCode the merchant must use when generating the VA through API.
  4. Merchant generates and displays the Virtual Account number to the customer, along with payment amount (closed or open) and expiration time.
  5. Customer opens their banking channel (mobile banking, ATM, internet banking).
  6. Customer selects the “Virtual Account Payment” or “Transfer to Virtual Account” menu.
  7. Customer enters the Virtual Account number provided by the merchant, and inputs the payment amount if required.
  8. The customer reviews the payment details (VA name, amount value if applicable, and receiving bank if paying from a different bank).
  9. Customer authorizes the payment using PIN, password, OTP, or biometric authentication via their mobile banking.
  10. Customer receives a payment confirmation or receipt from the bank/app.
  11. The merchant receives a payment callback notification from Ayoconnect for the successful transaction.