2️Triển khai API Get Token

API này là để yêu cầu đối tác cung cấp quyền truy cập để có thể kết nối và đồng bộ với API Transaction Sync (đồng bộ biến động số dư).

POST Get Token

https://<client-host>/<basepath>/api/token_generate

Headers

NameValue

Content-Type

application/json

Authorization

Basic Authentication: Base64[username:password]

usernamepassword của API này sẽ do đối tác cấp cho VietQR.

Body

NameTypeRequiredDescription

access_token

String

Yes

Là Bearer Token do đối tác cung cấp.

token_type

String

Yes

Là dạng token dạng “Bearer”.

expires_in

String

Yes

Thời gian hết hạn của token.

Response

{
    "access_token": "bearer_token",
    "token_type": "Bearer",
    "expires_in": 300
}

Code mẫu

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;

public class VietQRTokenGenerator {

    public static void main(String[] args) {
        try {
            // URL của API
            URL url = new URL("https://api.vietqr.org/vqr/api/token_generate");
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();

            // Thiết lập phương thức POST
            connection.setRequestMethod("POST");

            // Thiết lập header Authorization
            String auth = "Basic Y3VzdG9tZXItdmlldHFydGVzdC11c2VyMjQ2ODpZM1Z6ZEc5dFpYSXRkbWxsZEhGeWRHVnpkQzExYzJWeU1qUTJPQT09";
            connection.setRequestProperty("Authorization", auth);

            // Gửi request
            connection.setDoOutput(true);
            try (OutputStream os = connection.getOutputStream()) {
                byte[] input = "".getBytes("utf-8");
                os.write(input, 0, input.length);
            }

            // Nhận response
            BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream(), "utf-8"));
            StringBuilder response = new StringBuilder();
            String responseLine;
            while ((responseLine = in.readLine()) != null) {
                response.append(responseLine.trim());
            }
            System.out.println("Response: " + response.toString());

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Các câu hỏi thường gặp

Làm thế nào để cấp quyền truy cập cho VietQR vào API của chúng tôi?

Bạn cần tạo một username và password dành riêng cho VietQR để họ có thể truy cập vào API Transaction Sync của bạn. Sau đó, bạn chia sẻ thông tin này với đội ngũ VietQR để họ có thể thực hiện đồng bộ dữ liệu.

Thông tin đăng nhập VietQR sử dụng có bảo mật không?

VietQR cam kết tuân thủ các quy trình bảo mật nghiêm ngặt. Thông tin đăng nhập mà bạn cung cấp sẽ được mã hóa và chỉ sử dụng cho mục đích đồng bộ dữ liệu theo thỏa thuận giữa hai bên.

Có giới hạn nào về tần suất truy cập mà VietQR có thể thực hiện vào API của tôi?

Nếu có bất kỳ giới hạn nào về tần suất truy cập hoặc tài nguyên, bạn nên thông báo trước với đội ngũ VietQR để họ có thể điều chỉnh tần suất truy cập phù hợp và tránh quá tải hệ thống.

Tôi có thể giới hạn quyền truy cập của VietQR vào một phần nhất định của API không?

Có, bạn có thể cấu hình quyền truy cập để VietQR chỉ có thể truy cập vào các endpoint cần thiết cho việc đồng bộ dữ liệu. Điều này giúp đảm bảo an toàn và bảo mật cho hệ thống của bạn.

Last updated