# Virtual Account

## 1. Overview

A Virtual Account is a unique bank account number created for a specific customer or transaction. Although it does not hold funds, a Virtual Account serves as a payment bridge, making it easier to track and reconcile transactions automatically.

## 2. Types of Virtual Accounts

This documentation distinguishes between two types of Virtual Accounts based on their usage:

### 2.1 Fixed (Static) Virtual Account

This type of Virtual Account is assigned to a specific customer and used repeatedly.

* **Usage:** Suitable for recurring payments such as monthly bills, subscriptions, or installment payments.
* **Example:** Utility bill payments made on a monthly basis.<br>

### 2.2 Dynamic Virtual Account

A Virtual Account generated for each transaction that expires after use.

* **Usage:** Ideal for one-time transactions, such as during an e-commerce checkout.
* **Example:** Invoice payments or online purchases.

### 3. Benefits of Virtual Account

Using Virtual Accounts offers several advantages, including:

* **Automated Verification:** The system automatically detects payments, eliminating the need for manual checking.
* **Prevention of Payment Errors:** Reduces the risk of inputting incorrect bank account numbers as each transaction uses a unique Virtual Account.
* **Customer Convenience:** Customers can make payments anytime and anywhere via bank transfer.
* **Scalability for Large Businesses:** Capable of handling high transaction volumes—e.g., for 1,000 orders per day, each order receives a unique Virtual Account, simplifying tracking.

### Virtual Account Integration Sequence Diagram

<figure><img src="https://1274130818-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkeSVYYObwYaBR-BQ7A%2Fuploads%2FdyVdfwke9MpjoKJxAYrB%2FDiagram%20E2PAY-Virtual%20Account%20-%20SQD.drawio.png?alt=media&#x26;token=00a9283f-64ee-4982-a779-3d4c5f04f496" alt=""><figcaption></figcaption></figure>

* **Customer (C):** Initiates the process by placing an order or selecting a payment method.
* **Merchant (M):** Receives the order and requests the creation of a Virtual Account from the Payment Gateway.
* **Payment Gateway (PG):** Generates the Virtual Account and returns the details to the Merchant.
* **Merchant (M):** Sends the Virtual Account information to the Customer for payment.
* **Customer (C):** Performs the bank transfer payment to the provided Virtual Account.
* **Bank (B):** Processes the transfer and sends the payment status notification to the Payment Gateway.
* **Payment Gateway (PG):** Forwards the payment notification to the Merchant.
* **Merchant (M):** Confirms the receipt of payment and completes the order for the Customer.

### Available Virtual Account Payment Channels

You can accept payments via Virtual Account with these banks:<br>

<figure><img src="https://1274130818-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkeSVYYObwYaBR-BQ7A%2Fuploads%2FXLaUIwbZJ1TNyr4mtk2A%2Fimage.png?alt=media&#x26;token=5d7dc6d1-0487-42f3-ab1b-ac231b5b1b1d" alt=""><figcaption></figcaption></figure>
