# Description of VietQR API Workflow

## Description of VietQR API Workflow

### 1. Steps to Generate a VietQR Payment Code:

#### Step 1: Obtain an Access Token

The customer (KH) needs to call VietQR’s Get Token API to authenticate and gain access. Once authentication is successful, VietQR returns a token, which acts as a key to access the API for generating a VietQR code.

🔗 \[Refer to Get Token API]

#### Step 2: Generate a VietQR Payment Code

After obtaining the token, the customer uses it to call the VietQR payment code generation API.

🔗 \[Refer to VietQR Code Generation API]

#### Step 3: Simulate Payment in a Test/Staging/Sandbox Environment

In the test environment, customers do not need to scan the QR code for actual payment. Instead, they can call the Test Callback API to simulate a successful payment transaction.

🔗 \[Refer to Test Callback API]

📌 Note: After completing a payment, customers need a system to receive balance change notifications (BĐSD). Therefore, setting up a payment information reception system is required.

### 2. Setting Up a Payment Information/BĐSD Reception System

#### Step 1: Provide a Get Token API

The customer needs to implement their own Get Token API to authenticate and provide a token to VietQR. This token allows VietQR to access the customer’s system and send payment/BĐSD data.

🔗 \[Refer to Get Token API]

#### Step 2: Develop an API to Receive Transaction Data

The customer needs to implement a Transaction Sync API to receive payment/BĐSD data from VietQR.

🔗 \[Refer to Transaction Sync API]

📌 Summary:

The process includes generating a VietQR payment code, simulating payments (in a test environment), and setting up a payment/BĐSD data reception system to ensure transaction information is fully recorded.

📲 Scan the QR Code to join our open Zalo support group for assistance!

{% embed url="<https://zalo.me/g/tachpp720>" %}
Link vào nhóm mở zalo&#x20;
{% endembed %}

{% tabs %}
{% tab title="Mã QR vào nhóm Chat" %}

<figure><img src="/files/TXJciPT4UpC5QsULnnTf" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Second Tab" %}

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://api.vietqr.vn/en/vn/overview/description-of-vietqr-api-workflow.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
