Tạo mã VietQR chuyển khoản online miễn phí

Tạo mã QR chuyển khoản VietQR / NAPAS 247 với ngân hàng, số tài khoản, số tiền và nội dung chuyển khoản dạng PNG, SVG hoặc payload JSON. Giải mã VietQR có sẵn.

Công cụ miễn phí: 20 request mỗi phút.

Kết quả

Bấm “Chạy” để xem kết quả.

API VietQR tạo đúng chuỗi dữ liệu chuẩn EMVCo / NAPAS mà mọi ứng dụng ngân hàng Việt Nam quét được: chọn ngân hàng (bank=VCB, TCB, MB, tên ngân hàng hoặc mã BIN NAPAS 6 số), số tài khoản, số tiền VND (không bắt buộc) và nội dung chuyển khoản. Mặc định API trả về ảnh PNG; thêm format=svg để lấy SVG, hoặc format=json để nhận chuỗi payload, thông tin ngân hàng và cả hai dạng ảnh trong một phản hồi. Kích thước, màu, lề và mức sửa lỗi dùng giống API tạo mã QR.

Khi có số tiền, mã là QR động (01=12), không có số tiền thì là QR tĩnh. Trường 63 chứa mã kiểm tra CRC-16/CCITT theo đúng đặc tả. Nội dung chuyển khoản có dấu được chuyển sang không dấu (ngân hàng không truyền dấu ổn định) và API trả kèm nội dung gốc để bạn đối chiếu; nên giữ nội dung dưới 25 ký tự vì một số ngân hàng cắt phần còn lại.

GET /v1/vietqr/banks trả về danh sách ngân hàng và ví điện tử kèm mã và BIN. action=decode&payload=… phân tích một chuỗi VietQR có sẵn: ngân hàng, số tài khoản, số tiền, nội dung và checksum có hợp lệ không – tiện để kiểm tra một mã QR đã in thực sự chứa gì.

Dùng trong code của bạn

curl "https://apibox.io.vn/v1/vietqr?bank=VCB&account=0123456789&amount=150000&content=Thanh%20toan%20don%20ABX1234&format=json" \
  -H "Authorization: Bearer YOUR_API_KEY"

Tài liệu API → Nhận API key miễn phí

Hỏi đáp

API có chuyển tiền hay cần ký hợp đồng với ngân hàng không?

Không. API chỉ tạo mã QR để ứng dụng ngân hàng của người trả tiền đọc. Việc chuyển tiền diễn ra giữa các ngân hàng qua NAPAS 247; muốn nhận thông báo khi có tiền vào, bạn cần API của ngân hàng hoặc dịch vụ như SePay, Casso.

Hỗ trợ những ngân hàng nào?

Mọi ngân hàng trong mạng NAPAS 247. /v1/vietqr/banks liệt kê khoảng 50 ngân hàng và ví điện tử kèm mã; nếu thiếu ngân hàng nào, bạn có thể truyền thẳng mã BIN 6 số vào bank.

Vì sao nội dung chuyển khoản tiếng Việt bị đổi?

Nội dung chuyển khoản chỉ được truyền ổn định ở dạng ASCII, nên dấu bị bỏ (“Thanh toán đơn” thành “Thanh toan don”) và ký hiệu được thay bằng dấu cách. Phản hồi có cả nội dung gốc và nội dung đã mã hoá.