Image
Banner
Image
thirt party
Product introduction

Giải pháp kết nối phần mềm ứng dụng Đối tác là Dịch vụ hỗ trợ cho KHCN, KHTC có tài khoản tại ACB (thuộc hệ sinh thái của Đối tác) sử dụng dịch vụ của ACB trên hệ thống của Đối tác thông qua API của ACB.

Đăng ký tài khoản VA

- Đăng ký tài khoản VA cho KHCN.

- Hủy tài khoản VA cho KHCN.

- Truy vấn danh sách tài khoản VA của KHCN.

Dịch vụ Thông báo giao dịch

- Đăng ký dịch vụ thông báo giao dịch cho khách hàng với ACB.

- Cập nhật dịch vụ thông báo giao dịch của khách hàng với ACB.

- Hủy đăng ký dịch vụ thông báo giao dịch của khách hàng với ACB.

- Truy vấn thông tin dịch vụ thông báo giao dịch khách hàng đăng ký tại ACB.

- Truy vấn danh sách khách hàng đăng ký dịch vụ thông báo giao dịch tại ACB.

 

 

- Khách hàng Có tài khoản thanh toán (VND) tại ACB và trạng thái tài khoản là Hoạt động.

- Có đăng ký dịch vụ ACB ONE với phương thức xác thực theo quy định của ACB từng thời kỳ.

I. Tài khoản

1. Quy trình Đăng ký tài khoản định danh (VA) cho KHCN

Đăng ký tài khoản định danh KHCN
#BướcThực hiệnNội dung
1KH Khách hàng truy cập ứng dụng của Đối tác, chọn thao tác đăng ký dịch vụ, chọn Ngân hàng là ACB.
2KH 

Khách hàng nhập các thông tin sau: 

- Số điện thoại  

- Số tài khoản thanh toán chính (TKTT) tại ACB muốn đăng ký tài khoản VA 

- Khách hàng đọc và chấp thuận điều khoản và điều kiện sử dụng dịch vụ tài khoản (VA) 

3Hệ thống Đối tác Gửi thông tin KH cung cấp tại bước 2 qua API đến hệ thống ACB.
4Hệ thống ACB 

Kiểm tra thông tin KH do hệ thống Đối tác truyền sang cho ACB có 2 trường hợp xảy ra: 

- Không hợp lệ: Hệ thống ACB phản hồi kết quả qua API đến hệ thống Đối tác.

- Hợp lệ: Hệ thống ACB phát sinh OTP gửi đến KH qua PTXT KH đã đăng ký với ACB. Chuyển bước 5.

5KH KH nhập OTP do ACB gửi trên màn hình ứng dụng/website Đối tác.
6Hệ thống Đối tác Gửi yêu cầu xác thực qua API đến hệ thống ACB
7Hệ thống ACB 

ACB kiểm tra thông tin xác thực và thông báo kết quả cho Đối tác có 2 trường hợp sau: 

- Không hợp lệ: Hệ thống ACB phản hồi kết quả qua API đến hệ thống Đối tác.

- Hợp lệ: Hệ thống ACB tạo tài khoản VA cho KH và phản hồi kết quả đăng ký đến hệ thống Đối tác bao gồm thông tin: 

  • Thông tin số tài khoản VA 
  • Ngày hiệu lực
8Hệ thống Đối tác

Nhận kết quả từ ACB và hiển thị kết quả đăng ký Tài khoản VA cho KH 

Lưu ý: Đối tác nhắc KH lưu số tài khoản VA để thực hiện đăng ký dịch vụ thông báo giao dịch ghi có/ để hủy số tài khoản VA 

9KHNhận kết quả đăng ký Tài khoản VA 

2. Quy trình Hủy tài khoản định danh (VA) cho KHCN

Hủy tài khoản VA
#BướcThực hiệnNội dung
1KH 

Khách hàng truy cập ứng dụng của Đối tác, chọn thao tác Hủy số tài khoản VA với các thông tin sau: 

- Số tài khoản thanh toán chính 

- Số tài khoản VA 

- Số điện thoại 

2Hệ thống Đối tác Gửi yêu cầu hủy số tài khoản VA cho ACB qua API với các thông tin Khách hàng đã cung cấp tại bước 1 
3Hệ thống ACB 

Tiếp nhận và kiểm tra yêu cầu hủy số Tài khoản VA sẽ có 2 trường hợp sau: 

- Không hợp lệ: Hệ thống ACB phản hồi kết quả qua API đến hệ thống Đối tác.

- Hợp lệ: Hệ thống ACB phát sinh OTP gửi đến KH qua PTXT KH đã đăng ký với ACB. Chuyển bước 4.

4KH KH nhập OTP do ACB gửi trên màn hình ứng dụng Đối tác. 
5Hệ thống Đối tác Gửi yêu cầu xác thực qua API đến hệ thống ACB.
6Hệ thống ACB 

ACB kiểm tra thông tin xác thực và thông báo kết quả cho Đối tác có 2 trường hợp sau: 

- Không hợp lệ: Hệ thống ACB phản hồi kết quả qua API đến hệ thống Đối tác.

- Hợp lệ: Hệ thống ACB hủy số tài khoản VA cho KH và phản hồi kết quả hủy đến hệ thống Đối tác.

7Hệ thống Đối tácĐối tác nhận kết quả liên kết từ ACB và thông báo kết quả hủy số tài khoản VA cho khách hàng. 
8KH Nhận kết quả hủy số Tài khoản VA

3. Quy trình Truy vấn tài khoản định danh (VA) cho KHCN

Truy vấn tài khoản VA KHCN
#BướcThực hiệnNội dung
1Đối tác 

Gửi yêu cầu truy vấn tài khoản định danh cho KHCN kèm <Access Token>: 

Truy vấn tài khoản định danh:

- Số tài khoản thanh toán chính 

- Số tài khoản VA (nếu có)

2ACB 

Nhận và kiểm tra Access Token: 

- Không hợp lệ: trả mã lỗi và kết thúc quy trình.

- Hợp lệ: chuyển sang bước 3.

3ACB 

ACB kiểm tra thông tin yêu cầu của Đối tác 

- Không hợp lệ: trả mã lỗi và kết thúc quy trình.

- Hợp lệ: chuyển sang bước 4.

4ACB 

Phản hồi danh sách tài khoản định danh, bao gồm: 

- Loại khách hàng 

- Số tài khoản thanh toán chính  

- Thông tin tài khoản định danh 

- Đầu số tài khoản định danh 

- Trạng thái đầu số định danh 

- Ngày hiệu lực đầu số  

- Ngày hết hiệu lực đầu số  

- Chi tiết danh sách tài khoản định danh 

- Tài khoản định danh  

- Trạng thái tài khoản định danh  

- Quy tắc đăng ký tài khoản định danh 

- Nội dung diễn giải khi đăng ký tài khoản định danh 

- Loại hiển thị tên đơn vị hưởng 

II. Dịch vụ Thông báo giao dịch

1. Quy trình Đăng ký dịch vụ thông báo giao dịch cho khách hàng với ACB

Đăng ký dịch vụ thông báo giao dịch

 

#BướcThực hiệnNội dung
1KH Khách hàng truy cập ứng dụng của Đối tác chọn thao tác đăng ký dịch vụ → chọn Ngân hàng là ACB 
2KH

Khách hàng nhập các thông tin: 

- Số điện thoại  

- Số tài khoản thanh toán chính

- Tài khoản người dùng (áp dụng cho người dùng là KHTC)  

- Số tài khoản VA 

- Đăng ký dịch vụ Thông báo giao dịch sau:  

  • Thông báo giao dịch ghi nợ tức thì (giao dịch chuyển tiền) 
  • Thông báo giao dịch ghi có tức thì (giao dịch nhận tiền) 
  • Thông báo danh sách giao dịch ghi nợ cuối ngày 
  • Thông báo danh sách giao dịch ghi có cuối ngày 

- Đồng ý điều khoản điều kiện

3Hệ thống Đối tác Gửi yêu cầu cho ACB qua API với các thông tin Khách hàng đã cung cấp tại bước 2 
4Hệ thống ACB 

Tiếp nhận và kiểm tra yêu cầu đăng ký dịch vụ Thông báo giao dịch sẽ có 2 trường hợp sau: 

- Không hợp lệ: Hệ thống ACB phản hồi kết quả qua API đến hệ thống Đối tác 

- Hợp lệ: Hệ thống ACB phát sinh OTP gửi đến KH qua PTXT KH đã đăng ký với ACB. Chuyển bước 5 

5KH KH nhập OTP do ACB gửi trên màn hình ứng dụng Đối tác 
6Hệ thống Đối tác Đối tác gửi yêu cầu xác thực cho ACB
7Hệ thống ACB 

ACB kiểm tra thông tin xác thực và thông báo kết quả cho Đối tác có 2 trường hợp sau: 

- Không hợp lệ: Hệ thống ACB phản hồi kết quả qua API đến hệ thống Đối tác 

- Hợp lệ: Hệ thống ACB đăng ký dich vụ cho KH và phản hồi kết quả đăng ký đến hệ thống Đối tác

8Hệ thống Đối tác

Đối tác nhận kết quả liên kết từ ACB và thông báo kết quả đăng ký dịch vụ số tài khoản cho khách hàng.

9KH Nhận kết quả đăng ký dịch vụ

2. Quy trình Cập nhật dịch vụ đã đăng ký 

Điều chỉnh đăng ký dịch vụ thông báo giao dịch
#BướcThực hiệnNội dung
1KH Khách hàng truy cập ứng dụng của Đối tác chọn thao tác điểu chỉnh dịch vụ “Thông báo giao dịch”
2KH 

Khách hàng nhập các thông tin: 

- Số điện thoại 

- Số tài khoản thanh toán chính 

- Tài khoản người dùng (áp dụng cho người dùng là KHTC) 

- Số tài khoản VA 

- Đăng ký dịch vụ Thông báo giao dịch sau: 

  • Thông báo giao dịch ghi nợ tức thì (giao dịch chuyển tiền) 
  • Thông báo giao dịch ghi có tức thì (giao dịch nhận tiền) 
  • Thông báo danh sách giao dịch ghi nợ cuối ngày 
  • Thông báo danh sách giao dịch ghi có cuối ngày
3Hệ thống Đối tácGửi yêu cầu cho ACB qua API với các thông tin Khách hàng đã cung cấp tại bước 2 
4Hệ thống ACB

Tiếp nhận và kiểm tra yêu đăng ký dịch vụ Thông báo giao dịch sẽ có 2 trường hợp sau: 

- Không hợp lệ: Hệ thống ACB phản hồi kết quả qua API đến hệ thống Đối tác.

- Hợp lệ: Hệ thống ACB phát sinh OTP gửi đến KH qua PTXT KH đã đăng ký với ACB. Chuyển bước 5. 

5KH KH nhập OTP do ACB gửi trên màn hình ứng dụng Đối tác.
6Hệ thống Đối tác Đối tác gửi yêu cầu xác thực cho ACB.
7Hệ thống ACB

ACB kiểm tra thông tin xác thực và thông báo kết quả cho Đối tác có 2 trường hợp sau: 

- Không hợp lệ: Hệ thống ACB phản hồi kết quả qua API đến hệ thống Đối tác.

- Hợp lệ: Hệ thống ACB điều chỉnh dịch vụ cho KH và phản hồi kết quả hủy đến hệ thống Đối tác.

8Hệ thống Đối tácĐối tác nhận kết quả liên kết từ ACB và thông báo kết quả điều chỉnh dịch vụ cho khách hàng.

3. Quy trình Hủy đăng ký dịch vụ 

Hủy đăng ký dịch vụ thông báo giao dịch
#BướcThực hiệnNội dung
1KH Khách hàng truy cập ứng dụng của Đối tác chọn thao tác hủy  dịch vụ → chọn Ngân hàng là ACB
2KH

Khách hàng nhập các thông tin:

- Số điện thoại 

- Số tài khoản thanh toán chính 

- Tài khoản người dùng  (áp dụng cho người dùng là KHTC) 

- Số tài khoản VA 

3Hệ thống Đối tác Gửi yêu cầu cho ACB qua API với các thông tin Khách hàng đã cung cấp tại bước 2 
4Hệ thống ACB

Tiếp nhận và kiểm tra yêu đăng ký dịch vụ Thông báo giao dịch sẽ có 2 trường hợp sau: 

- Không hợp lệ: Hệ thống ACB phản hồi kết quả qua API đến hệ thống Đối tác 

- Hợp lệ: Hệ thống ACB phát sinh OTP gửi đến KH qua PTXT KH đã đăng ký với ACB. Chuyển bước 5

5KH KH nhập OTP do ACB gửi trên màn hình ứng dụng Đối tác
6Hệ thống Đối tác Đối tác gửi yêu cầu xác thực cho ACB
7Hệ thống ACB 

ACB kiểm tra thông tin xác thực và thông báo kết quả cho Đối tác có 2 trường hợp sau: 

- Không hợp lệ: Hệ thống ACB phản hồi kết quả qua API đến hệ thống Đối tác 

- Hợp lệ: Hệ thống ACB hủy dịch vụ cho KH và phản hồi kết quả hủy đến hệ thống Đối tác.

8Hệ thống Đối tácĐối tác nhận kết quả liên kết từ ACB và thông báo kết quả điều chỉnh dịch vụ cho khách hàng.
9KH Nhận kết quả hủy dịch vụ Thông báo giao dịch và sử dụng.

4. Quy trình Truy vấn danh sách đăng ký dịch vụ 

Truy vấn ds dịch vụ thông báo giao dịch
#BướcThực hiệnNội dung
1Đối tác

Gửi yêu cầu truy vấn danh sách dịch vụ thông báo giao dịch kèm <Access Token>: 

- Số trang 

- Số dòng 

2ACB 

Nhận và kiểm tra Access Token: 

- Không hợp lệ: trả mã lỗi và kết thúc quy trình 

- Hợp lệ: chuyển sang bước 3 

3ACB

Kiểm tra yêu cầu hợp lệ: 

- Điều kiện yêu cầu như sau: số trang, số dòng 

Kết quả: 

- Không hợp lệ: trả mã lỗi và kết thúc quy trình 

- Hợp lệ: chuyển sang bước 4 

4ACB 

Phản hồi danh sách trong khoảng thời gian yêu cầu, bao gồm: 

Danh sách giao dịch bao gồm các giao dịch sau: 

- Số tài khoản đăng ký 

- Loại thông báo giao dịch 

- Đăng ký báo có/báo nợ 

- Đăng ký báo có cuối ngày/báo nợ cuối ngày 

- Thông tin tài khoản định danh 

- Đầu số tài khoản định danh 

- Số tài khoản định danh

5Đối tác Nhận kết quả xử lý và kết thúc giao dịch 

5. Quy trình Truy vấn chi tiết đăng ký dịch vụ 

Truy vấn chi tiết đăng ký dịch vụ thông báo
#BướcThực hiệnNội dung
1Đối tác 

Gửi yêu cầu truy vấn chi tiết dịch vụ thông báo giao dịch kèm <Access Token>: 

Truy vấn chi tiết:

- Số tài khoản thanh toán chính 

- Số tài khoản VA (nếu có)

2ACB 

Nhận và kiểm tra Access Token: 

- Không hợp lệ: trả mã lỗi và kết thúc quy trình 

- Hợp lệ: chuyển sang bước 3

3ACB 

ACB kiểm tra thông tin yêu cầu của Đối tác 

- Không hợp lệ: trả mã lỗi và kết thúc quy trình 

- Hợp lệ: chuyển sang bước 4 

4ACB 

Phản hồi chi tiết dịch vụ, bao gồm: 

- Số tài khoản đăng ký 

- Loại thông báo giao dịch 

- Đăng ký báo có/báo nợ 

- Đăng ký báo có cuối ngày/báo nợ cuối ngày 

- Thông tin tài khoản định danh 

- Đầu số tài khoản định danh 

- Số tài khoản định danh 

5Đối tác Nhận kết quả xử lý và kết thúc giao dịch 

 

Errors list

Danh sách mã lỗi

#Error #Description (EN)Description (VN)SituationAPI
100000000  Success  Thành côngKết quả trả về khi yêu cầu thực hiện thành công Tất cả API
201010001 Unauthenticated  Kết quả trả về khi thực hiện xác thực thất bạiTất cả API
301010002 Request method not supported  Kết quả trả về khi gọi không đúng phương thức của API
VD: API POST nhưng khi gọi lại đổi thành API GET
Tất cả API
401010003 Missing Authorization Token  Kết quả trả về khi không truyền token Tất cả API
501010004 Owner validation error  Kết quả trả về khi xác thực chính chủ không hợp lệTất cả API
601010005 {Field name} in header or params is mandatory Bắt buộc nhập {Field name} ở header hoặc paramsKết quả trả về khi tham số truyền vào không hợp lệTất cả API
701010006 {Field name} in header or params is invalid {Field name} ở header hoặc params không hợp lệKết quả trả về khi tham số truyền vào không hợp lệTất cả API
801010007 {Field name} length in header or params is invalid Độ dài {Field name} ở header hoặc params vượt quá ký tự cho phépKết quả trả về khi tham số truyền vào không hợp lệTất cả API
901020001 {Field name} in body is mandatory Bắt buộc nhập {Field name} ở bodyKết quả trả về khi tham số truyền vào không hợp lệTất cả API
1001020002 {Field name} in bobdy is invalid {Field name} ở body không hợp lệKết quả trả về khi tham số truyền vào không hợp lệTất cả API
1101020003 {Field name} length in bobdy is invalid Độ dài {Field name} ở body vượt quá ký tự cho phépKết quả trả về khi tham số truyền vào không hợp lệTất cả API
1201020005 The request could not be parsed  Kết quả trả về khi tham số truyền vào không hợp lệTất cả API
1302010001 Request identifier is duplicate Trùng mã định danh yêu cầuTrường hợp gửi x-request-id ở header bị trùngAPI đăng ký/hủy/cập nhật dịch vụ
API đăng ký/hủy VA
1402010002 The request does not exist Request không tồn tạiTrường hợp mã yêu cầu truyền vào API xác thực OTP không trùng khớp với mã yêu cầu được sinh ra ở API đăng ký/hủy/cập nhậtAPI xác thực OTP
1502010003 The request is invalid Request không hợp lệTrường hợp mã yêu cầu trùng khớp với mã yêu cầu được sinh ra ở các API đăng ký nhưng trạng thái khi gọi API không đúngAPI xác thực OTP
1602010004 Digital contract is invalid Hợp đồng online không hợp lệKhách hàng có đăng ký hợp đồng online tại ACB nhưng có trạng thái không hoạt độngAPI đăng ký/hủy/cập nhật dịch vụ
API đăng ký/hủy VA
1702010005 Phone authentication method is invalid Phương thực xác thực không hợp lệTrường hợp khách hàng đăng ký dịch vụ với SĐT khác với SĐT đăng ký PTXTAPI đăng ký/hủy/cập nhật dịch vụ
API đăng ký/hủy VA
1802010006 Phone authentication method is not found Không tìm thấy phương thức xác thực phù hợpKhách hàng không đăng ký 1 trong 3 phương thức xác thực SMS, Safekey nâng cao, Safekey cơ bảnAPI đăng ký/hủy/cập nhật dịch vụ
API đăng ký/hủy VA
1902010007 OTP request is invalid Yêu cầu tạo mã xác thực không hợp lệTrường hợp đăng ký không thành công quá 3 lần. Request bị chặn thực hiện trong 30 phútAPI đăng ký/hủy/cập nhật dịch vụ
API xác thực OTP
API đăng ký/hủy VA
2002010008 Account information is not found Thông tin tài khoản không tồn tạiKhông tìm thấy số tài khoản đăng ký dịch vụ tại ACBAPI đăng ký/hủy/cập nhật dịch vụ
API truy vấn dịch vụ
API đăng ký/hủy VA
API truy vấn VA
2102010009 Account information is invalid Thông tin tài khoản không hợp lệTrường hợp khách hàng đăng ký dịch vụ với số tài khoản đã đóngAPI đăng ký/hủy/cập nhật dịch vụ
API truy vấn dịch vụ
API đăng ký/hủy VA
API truy vấn VA
2202010012 Virtual account prefix code is not found Đầu số tài khoản định danh không tồn tạiĐầu số TK định danh chưa được đăng ký tại ACBAPI đăng ký dịch vụ
API hủy VA
API truy vấn VA
2302010013 Virtual account prefix code is invalid Đầu số tài khoản định danh không hợp lệĐầu số TK định danh đã được đăng ký tại ACB nhưng khác trạng thái hoạt động hoặc trường hợp KHCN đăng ký đầu số khác "LOC"API đăng ký dịch vụ
2402010014 Virtual account is not found Số tài khoản định danh không tồn tạiSố tài khoản định danh chưa được đăng ký tại ACBAPI đăng ký dịch vụ
API hủy VA
2502010015 Virtual account is invalid Số tài khoản định danh không hợp lệSố tài khoản định danh đã được đăng ký tại ACB nhưng khác trạng thái hoạt độngAPI đăng ký dịch vụ
API hủy VA
2602010016 Authorization mismatch Mã xác thực không trùng khớpTrường hợp mã xác thực không trùng khớp với mã xác thực được sinh ra ở API đăng ký dịch vụAPI xác thực OTP
2702010017 Verification max attempts exceeded Vượt quá số lần xác thực tối đaTrường hợp nhập sai OTP quá 3 lầnAPI xác thực OTP
2802010018 Request OTP overdue Mã xác thực đã hết hạnTrường hợp nhập OTP quá 5 phútAPI xác thực OTP
2902010019 User information is invalid Thông tin người dùng không hợp lệTrường hợp khách hàng doanh nghiệp đăng ký dịch vụ với phân quyền khác quyền được quy địnhAPI đăng ký/hủy/cập nhật dịch vụ
API đăng ký VA
3002010020User information is not foundThông tin người dùng không tồn tạiTrường hợp không tồn tại thông tin khách hàng tại ACBAPI đăng ký VA
3102010039Account is existedTài khoản đăng ký đã tồn tạiTrường hợp xác thực khách hàng đăng ký dịch vụ khi thông tin đăng ký dịch vụ đã tồn tại và “Còn hiệu lực”API xác thực OTP
3202020049Account is not foundTài khoản đăng ký không tồn tạiKhông tìm thấy tài khoản đăng ký dịch vụ tại ACBAPI xác thực OTP
API truy vấn dịch vụ
3302020046Provider is not foundThông tin đối tác không tồn tại API xác thực OTP
API truy vấn dịch vụ
3402019999 Something went wrong  Những lỗi liên quan đến nghiệp vụ khácTất cả API
3502030001 System error  Lỗi hệ thống, liên hệ kỹ thuật ACB Tất cả API
Kịch bản kiểm thử

 

KỊCH BẢN KIỂM THỬ DỊCH VỤ 

GIẢI PHÁP KẾT NỐI PHẦN MỀM/HỆ THỐNG 

(Phục vụ cho việc kiểm thử sản phẩm trên hệ thống Sandbox của ACB)

 

STT

 

Mô tả tình huống

Điều kiện

Kết quả mong đợi

1. Đăng ký tài khoản VA  

1.

Đăng ký tài khoản VA thành công 

  • Sử dụng API đăng ký tài khoản VA 

Nhập đúng thông tin ràng buộc 

Đăng ký tài khoản VA thành công 

- 200 - 00000000 - Success  

2.

Đăng ký tài khoản VA KHCN không thành công “customerType” 

  • Sử dụng API đăng ký tài khoản VA 

Kiểm tra ràng buộc trường “customerType” 
Kiểu dữ liệu: String (4) 
Bắt buộc: Yes 
Kết quả thực tế: 

Trường hợp trống 
 
Trường hợp vượt quá ký tự cho phép 
 
Trường hợp giá trị không hợp lệ 

Thực hiện ràng buộc đúng như mô tả 
Mã trả về:  

400 - 01020001 - {Field name} in body is mandatory  

400 - 01020003 - {Field name} length in bobdy is invalid  

289 - 02010008 - Account information is not found 

3.

Đăng ký tài khoản VA KHCN không thành công “accountNumber” 

  • Sử dụng API đăng ký tài khoản VA 

Kiểm tra ràng buộc trường “accountNumber” 
Kiểu dữ liệu: Number (22) 
Bắt buộc: Yes 
Kết quả thực tế: 

Trường hợp trống 
 
Trường hợp vượt quá ký tự cho phép 
 
Trường hợp giá trị không hợp lệ 

 

Thực hiện ràng buộc đúng như mô tả 
Mã trả về:  

400 - 01020001 - {Field name} in body is mandatory  

400 - 01020003 - {Field name} length in bobdy is invalid  

289 - 02010008 - Account information is not found 

4.

Đăng ký tài khoản VA KHCN không thành công  “phoneNumber” 

  • Sử dụng API đăng ký tài khoản VA 

Kiểm tra ràng buộc trường “phoneNumber” 
Kiểu dữ liệu: Number 
Bắt buộc: Yes 
Kết quả thực tế: 

Trường hợp trống 
 
Trường hợp giá trị không hợp lệ 

 

Thực hiện ràng buộc đúng như mô tả 
Mã trả về:  

400 - 01020001 - {Field name} in body is mandatory  

289 - 02010008 - Account information is not found 

5.    

Đăng ký tài khoản VA KHCN không thành công “virtualAccountPrefixCode” 

  • Sử dụng API đăng ký tài khoản VA 

Kiểm tra ràng buộc trường “virtualAccountPrefixCode” 
Kiểu dữ liệu: String (3) 
Bắt buộc: Optional 

Giá trị bắt buộc: LOC 
Kết quả thực tế: 

Trường hợp trống 
 

Trường hợp giá trị không hợp lệ 

Thực hiện ràng buộc đúng như mô tả 
Mã trả về:  

400 - 01020001 - {Field name} in body is mandatory  

400 - 01020001 - {Field name} in body is mandatory  

6.

Đăng ký tài khoản VA KHCN không thành công 

  • Sử dụng API đăng ký tài khoản VA 

Thực hiện kiểm tra đăng ký tài khoản VA không thành công khi SĐT không trùng khớp với SĐT PTXT chính đăng ký tài khoản VA 

Thực hiện đăng ký tài khoản VA không thành công 

Mã trả về:  

289 - 02010005 - Phone authentication method is invalid  

 

7.

Đăng ký tài khoản VA KHCN không thành công 

  • Sử dụng API đăng ký tài khoản VA 

Thực hiện kiểm tra đăng ký tài khoản VA  không thành công khi ACCT = CLS 

Thực hiện đăng ký tài khoản VA không thành công 

Mã trả về:  

289 - 02010009 - Account information is invalid   

 

8.

Đăng ký tài khoản VA KHCN không thành công 

  • Sử dụng API đăng ký tài khoản VA 

Thực hiện kiểm tra đăng ký tài khoản VA không thành công khi Major khác CK 

Thực hiện đăng ký tài khoản VA không thành công 

Mã trả về:  

289 - 02010009 - Account information is invalid   

9.

Đăng ký tài khoản VA KHCN không thành công 

  • Sử dụng API đăng ký tài khoản VA 

 Thực hiện kiểm tra đăng ký tài khoản VA không thành công khi user đã tồn tại 6 tài khoản VA với trạng thái ACT 

 

 

Thực hiện đăng ký tài khoản VA không thành công 

Mã trả về:  

289 - 02010021 - Virtual account max exceeded  

10.

Đăng ký tài khoản VA KHCN không thành công 

  • Sử dụng API đăng ký tài khoản VA 

Thực hiện kiểm tra trường hợp đăng ký tài khoản VA không thành công quá 3 lần. Request bị chặn thực hiện trong 30 phút 

Kết quả thực tế: 
API đăng ký thất bại sau khi request thất bại quá 3 lần 

 

API đăng ký thành công sau 30 phút 

Thực hiện đăng ký tài khoản VA không thành công 

Mã trả về:  

289 -0201007 - OTP request is invalid  

Sau 30 phút thực hiện  request mới thành công 

 

2. Hủy tài khoản VA 

1.

Hủy tài khoản VA thành công 

  • Sử dụng API hủy tài khoản VA 

Nhập đúng trường thông tin bắt buộc 

Hủy tài khoản VA thành công 

200 - 00000000 - Success  

2.

Hủy tài khoản VA không thành công “accountNumber” 

  • Sử dụng API hủy tài khoản VA 

Kiểm tra ràng buộc trường “accountNumber” 
Kiểu dữ liệu: Number (22) 
Bắt buộc: Yes 
Kết quả thực tế: 

Trường hợp trống 
 
Trường hợp vượt quá ký tự cho phép 
 
Trường hợp giá trị không hợp lệ 

Thực hiện ràng buộc đúng như mô tả 
Mã trả về:  

400 - 01020001 - {Field name} in body is mandatory  

400 - 01020003 - {Field name} length in bobdy is invalid  

289 - 02010008 - Account information is not found 

3.

Hủy tài khoản VA không thành công “phoneNumber” 

  • Sử dụng API hủy tài khoản VA 

Kiểm tra ràng buộc trường “phoneNumber” 
Kiểu dữ liệu: Number 
Bắt buộc: Yes 
Kết quả thực tế: 

Trường hợp trống 
 
Trường hợp giá trị không hợp lệ 

 

Thực hiện ràng buộc đúng như mô tả 
Mã trả về:  

400 - 01020001 - {Field name} in body is mandatory  

289 - 01020005 - {Phone authentication method is invalid   

4.

Hủy tài khoản VA không thành công “virtualAccountNumber” 

  • Sử dụng API hủy tài khoản VA 

Kiểm tra ràng buộc trường “virtualAccountNumber” 
Kiểu dữ liệu: String (28) 
Bắt buộc: Yes 
Kết quả thực tế: 

Trường hợp trống 
 
Trường hợp giá trị không hợp lệ 

Thực hiện ràng buộc đúng như mô tả 
Mã trả về:  

400 - 01020001 - {Field name} in body is mandatory  

289 - 02010015 - Virtual account is invalid 

5.

Hủy tài khoản VA không thành công 

  • Sử dụng API hủy tài khoản VA 

Thực hiện kiểm tra trường hợp hủy tài khoản định danh không thành công quá 3 lần. Request bị chặn thực hiện trong 30 phút 

Kết quả thực tế: 
API hủy thất bại sau khi request thất bại quá 3 lần 

 

API hủy  thành công sau 30 phút 

Thực hiện hủy không thành công 

Mã trả về:  

289 - 0201007 - OTP request is invalid  

Sau 30 phút thực hiện  request mới thành công 

6.

Hủy tài khoản VA không thành công 

  • Sử dụng API hủy tài khoản VA 

Kiểm tra hủy tài khoản định danh không thành công khi ACCT = CLS 

Thực hiện hủy không thành công 

 

Mã trả về:  

289 - 02010009 - Account information is invalid  

7.

Hủy tài khoản VA không thành công 

  • Sử dụng API hủy tài khoản VA 

Kiểm tra hủy tài khoản định danh không thành công khi SĐT không trùng khớp với SĐT PTXT 

Thực hiện hủy không thành công 

Mã trả về:  

289 - 02010005 - Phone authentication method is invalid  

8.

Hủy tài khoản VA không thành công 

  • Sử dụng API hủy tài khoản VA 

Kiểm tra hủy tài khoản định danh không thành công khi virtualAccountNumber không tồn tại 

Thực hiện hủy không thành công 

Mã trả về:  

289 - 02010012 - Virtual account prefix code is not found  

9.

Hủy tài khoản VA không thành công 

  • Sử dụng API hủy tài khoản VA 

Kiểm tra hủy tài khoản định danh không thành công khi virtualAccountNumber tồn tại nhưng có trạng thái khác đang hoạt động  

Thực hiện hủy không thành công 

Mã trả về:  

289 - 02010015 - Virtual account is invalid   

3. Xác thực đăng ký, hủy tài khoản VA 

1.

Xác thực thành công  

  • Sử dụng API xác thực 

Nhập đúng trường thông tin bắt buộc 

Xác thực thành công 

200 - 00000000 - Success  

2.

Xác thực không thành công 

“requestId” 

  • Sử dụng API xác thực 

Kiểm tra ràng buộc trường “requestId” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị: UUID 

Kết quả thực tế: 
Trường hợp trống 
 
Trường hợp giá trị không hợp lệ 

Thực hiện xác thực không thành công 

Mã trả về:  

400 - 01020001 - {Field name} in body is mandatory  

400 - 01020002 - {Field name} in bobdy is invalid  

3.

Xác thực không thành công “authorizationId” 

  • Sử dụng API xác thực 

Kiểm tra ràng buộc trường “authorizationId” 

Kiểu dữ liệu: String (36) 

Bắt buộc: Yes 

Giá trị: UUID 

Kết quả thực tế: 
Trường hợp trống 
 
Trường hợp vượt quá ký tự cho phép 

 
Trường hợp giá trị không hợp lệ 

Thực hiện xác thực không thành công 

Mã trả về:  

400 - 01020001 - {Field name} in body is mandatory  

400 - 01020003 - {Field name} in bobdy is invalid 

289 - 02010016 - Authorization mismatch  

4.

Xác thực không thành công 

“code” (mã OTP) 

 

  • Sử dụng API xác thực 

Kiểm tra ràng buộc trường “code” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Kết quả thực tế: 
Trường hợp trống 
 
Trường hợp giá trị không hợp lệ 

Thực hiện xác thực không thành công 

Mã trả về:  

400 - 01020001 - {Field name} in body is mandatory  

289 - 02010007 - OTP request is invalid   

 

5.

Xác thực không thành công 

  • Sử dụng API xác thực 

Thực hiện kiểm tra trường hợp nhập sai OTP quá 3 lần 

Thực hiện xác thực không thành công 

Mã trả về:  

289 - 02010007 - OTP request is invalid  

6.

Xác thực không thành công 

  • Sử dụng API xác thực 

Thực hiện kiểm tra trường hợp OTP quá 5 phút 

Thực hiện xác thực không thành công 

Mã trả về:  

289 - 02010018 - Request OTP overdue  

7.

Xác thực không thành công 

  • Sử dụng API xác thực 

Thực hiện kiểm tra xác thực hủy tài khoản định danh không thành công 

Trường hợp: Tài khoản định danh đăng ký với đối tác A nhưng hủy bởi đối tác B 

Kết quả thực tế: 

Tài khoản định danh đăng ký bởi đối tác A (SAPO) 

 

API thực hiện hủy tài khoản định danh bởi đối tác B (KIOT) 

 

Thực hiện xác thực không thành công 

Mã trả về:  

289 - 02010015 - Virtual account is invalid 

4. Truy vấn danh sách tài khoản VA 

1.

Truy vấn danh sách tài khoản VA thành công 

  • Sử dụng API truy vấn danh sách tài khoản VA 

Nhập đúng trường thông tin bắt buộc 

Xác thực thành công 

200 - 00000000 - Success  

2.

Truy vấn danh sách tài khoản VA không thành công “accountNumber” 
 

  • Sử dụng API truy vấn danh sách tài khoản VA 

Kiểm tra ràng buộc trường “accountNumber” 
Kiểu dữ liệu: Number 
Bắt buộc: Yes 
Kết quả thực tế: 

Trường hợp trống 
 
Trường hợp giá trị không hợp lệ 

 

Thực hiện truy vấn danh sách tài khoản VA không thành công 

Mã trả về:  

400 - 01010005 - {Field name} in header or params is mandatory  

 

289 - 02010008 - Account information is not found  

3.

Truy vấn danh sách tài khoản VA không thành công “virtualAccountNumber” 

  • Sử dụng API truy vấn danh sách tài khoản VA 

Kiểm tra ràng buộc trường “virtualAccountNumber” 
Kiểu dữ liệu: String 
Bắt buộc: No 
Kết quả thực tế: 
 

Trường hợp giá trị không hợp lệ 

 

Thực hiện truy vấn danh sách tài khoản VA không thành công 

Mã trả về:  

289 - 02019999 - Something went wrong

4.

Truy vấn danh sách tài khoản VA không thành công “size” 

  • Sử dụng API truy vấn danh sách tài khoản VA 

Kiểm tra ràng buộc trường “size” 
Kiểu dữ liệu: integer 
Bắt buộc: No 
Kết quả thực tế: 

Giá trị size lớn hơn 1000 

Thực hiện truy vấn danh sách tài khoản VA không thành công 

Mã trả về:  

400 - 01010006 - {Field name} in header or params is invalid  

5.

Truy vấn danh sách tài khoản VA không thành công “page” 

  • Sử dụng API truy vấn danh sách tài khoản VA 

Kiểm tra ràng buộc trường “page” 
Kiểu dữ liệu: integer 
Bắt buộc: No 
Kết quả thực tế: 

Giá trị page nhỏ hơn 0 

Thực hiện truy vấn danh sách tài khoản VA không thành công 

Mã trả về:  

400 - 01010006 - {Field name} in header or params is invalid 

6.

Truy vấn danh sách tài khoản VA không thành công

  • Sử dụng API truy vấn danh sách tài khoản VA 

Kiểm tra trường hợp truy vấn tài khoản định danh không thành công khi truyền virtualAccountNumber không thuộc accountNumber 

Thực hiện truy vấn danh sách tài khoản VA không thành công 

Mã trả về:  

289 - 02019999 - Something went wrong 

5. Kiểm tra phần header Đăng ký, Hủy, Xác thực, Truy vấn tài khoản VA 

1.

Kiểm tra header trường thông tin “X-Request-ID” 

 

  • Sử dụng API đăng ký tài khoản VA 

  • Sử dụng API hủy tài khoản VA 

  • Sử dụng API truy vấn danh sách tài khoản VA 

  • Sử dụng API truy vấn danh sách tài khoản VA 

 

Kiểm tra ràng buộc trường “X-Request-ID” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị: UUID 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 
 

Thực hiện ràng buộc đúng như mô tả 

Mã trả về:  

 

400 - 01010005 - {Field name} in header or params is mandatory  

 

400 - 01010006 - {Field name} in header or params is invalid 

2.

Kiểm tra header trường thông tin “X-Service” 

Kiểm tra header trường thông tin “X-Service” 

 

  • Sử dụng API đăng ký tài khoản VA 

  • Sử dụng API hủy tài khoản VA 

  • Sử dụng API truy vấn danh sách tài khoản VA 

  • Sử dụng API truy vấn danh sách tài khoản VA 

 

Kiểm tra ràng buộc trường “X-Service” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị: VIRTUAL-ACCOUNT-3RD 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 

Thực hiện ràng buộc đúng như mô tả 

Mã trả về:  

 

400 - 01010005 - {Field name} in header or params is mandatory  

 

400 - 01010006 - {Field name} in header or params is invalid 

3.

Kiểm tra header trường thông tin “X-Provider-ID” 

 

  • Sử dụng API đăng ký tài khoản VA 

  • Sử dụng API hủy tài khoản VA 

  • Sử dụng API truy vấn danh sách tài khoản VA 

  • Sử dụng API truy vấn danh sách tài khoản VA 

Kiểm tra ràng buộc trường “X-Provider-ID” 

Kiểu dữ liệu: String (4) 

Bắt buộc: Yes 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp vượt quá ký tự cho phép 

 

Trường hợp giá trị không hợp lệ 

Thực hiện ràng buộc đúng như mô tả 

Mã trả về:  

400 - 01010005 - {Field name} in header or params is mandatory  

 

400 - 01010007 - {Field name} length in header or params is invalid  

 

400 - 01010006 - {Field name} in header or params is invalid 

4.

Kiểm tra header trường thông tin “Authorization” 

 

  • Sử dụng API đăng ký tài khoản VA 

  • Sử dụng API hủy tài khoản VA 

  • Sử dụng API truy vấn danh sách tài khoản VA 

  • Sử dụng API truy vấn danh sách tài khoản VA 

Kiểm tra ràng buộc trường “Authorization” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ, hết hạn token 

Thực hiện ràng buộc đúng như mô tả 

Mã trả về:  

 

400 - 01010003 - Missing Authorization Token  

 

400 - 01010001 - Unauthenticated 

6. Đăng ký dịch vụ 

1.

Đăng ký dịch vụ thành công   

  • Sử dụng API đăng ký dịch vụ 

Nhập đúng trường thông tin bắt buộc 

Xác thực thành công 

200 - 00000000 - Success  

2.

Đăng ký dịch vụ không thành công  “customerType” 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra ràng buộc trường “customerType” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị: PERS/ORG 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory  

 

400 - 01020002 - {Field name} in bobdy is invalid  

3.

Đăng ký dịch vụ không thành công  “user” 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra ràng buộc trường “user” 

Kiểu dữ liệu: String 

Bắt buộc: No (Yes khi customerType = ORG) 

Kết quả thực tế: 

 

Trường hợp giá trị trống khi customerType =ORG 

 

Trường hợp giá trị không hợp lệ 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

400 - 01020002 - {Field name} in bobdy is invalid  

 

289 - 02010019 - User information is invalid  

4.

Đăng ký dịch vụ không thành công  “accountNumber” 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra ràng buộc trường “accountNumber” 

Kiểu dữ liệu: Number (22) 

Bắt buộc: Yes 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị vượt quá ký tự cho phép 

 

Trường hợp giá trị không hợp lệ 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

 

400 - 01020003- {Field name} length in bobdy is invalid  

 

400 - 01020002 - {Field name} in bobdy is invalid  

5.

Đăng ký dịch vụ không thành công “phoneNumber” 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra ràng buộc trường “phoneNumber” 

Kiểu dữ liệu: Number 

Bắt buộc: Yes 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

 

289 - 02010005 - Phone authentication method is invalid  

6.

Đăng ký dịch vụ không thành công “creditOrDebitRealTime” 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra ràng buộc trường “creditOrDebitRealTime” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị (Enum): DEBIT / CREDIT / ALL / NONE 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

 

400 - 01020002 - {Field name} in bobdy is invalid  

 

7.

Đăng ký dịch vụ không thành công “creditOrDebitPastDay” 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra ràng buộc trường “creditOrDebitPastDay” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị (Enum): DEBIT / CREDIT / ALL / NONE 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

 

400 - 01020002 - {Field name} in bobdy is invalid  

 

8.

Đăng ký dịch vụ không thành công “virtualAccountPrefixCode” 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra ràng buộc trường “virtualAccountPrefixCode” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị: LOC 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

 

289 - 02010013 - Virtual account prefix code is invalid  

9.

Đăng ký dịch vụ không thành công “virtualAccountNumber” 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra ràng buộc trường “virtualAccountNumber” 

Kiểu dữ liệu: String (28) 

Bắt buộc: Yes (No khi customerType = ORG) 

Kết quả thực tế: 

Trường hợp giá trị trống khi customerType = PERS 

 

Trường hợp vượt quá ký tự cho phép 
 

Trường hợp giá trị không hợp lệ 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory 

 

400 - 01020003 - {Field name} length in bobdy is invalid 

 

289 - 02010014 - Virtual account is not found  

10.

Đăng ký dịch vụ không thành công “userAgreement” 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra ràng buộc trường “userAgreement” 

Kiểu dữ liệu: Boolean 

Bắt buộc: Yes 

Giá trị: true 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 
 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

400 - 01020002 - {Field name} in bobdy is invalid  

 

11.

Đăng ký dịch vụ không thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng không tồn tại 1 trong 3 PTXT SMS, OTPS, OTPA 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

289 - 02010006 - Phone authentication method is not found 

12

Đăng ký dịch vụ không thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng không đăng ký HĐ ACBO 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

289 - 02010004 - Digital contract is invalid  

13

Đăng ký dịch vụ không thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp người sử dụng HĐ ACBO có trạng thái “Ngưng hoạt động” 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

289 - 02010019 - User information is invalid  

14.

Đăng ký dịch vụ không thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng có trạng thái HĐ ACBO khác “Đang hoạt động” 
Kết quả thực tế: 
Trường hợp HĐ ACBO ở trạng thái “Đã ngưng hợp đồng” 

 
Trường hợp HĐ ACBO ở trạng thái “Đang chờ hiệu lực” 

 
Trường hợp HĐ ACBO ở trạng thái “Đã hủy” 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

289 - 02010004 - Digital contract is invalid   

15.

Đăng ký dịch vụ không thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng đăng ký dịch vụ với SĐT khác với SĐT đăng ký PTXT 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

289 - 02010005 - Phone authentication method is invalid  

16.

Đăng ký dịch vụ thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng đăng ký dịch vụ với SĐT trùng với cả 3 SĐT đăng ký PTXT 

Đăng ký dịch vụ thành công với PTXT theo độ ưu tiên OTPA > OTPS > SMS 

200 - 00000000 - Success  

17.

Đăng ký dịch vụ thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng đăng ký dịch vụ với SĐT trùng với cả SĐT đăng ký PTXT SMS và khác với SĐT OTPS, OTPA 

Đăng ký dịch vụ thành công với PTXT SMS 

200 - 00000000 - Success  

18.

Đăng ký dịch vụ thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng đăng ký dịch vụ với SĐT trùng với cả SĐT đăng ký PTXT OTPS, SMS và khác với OTPA 

Đăng ký dịch vụ thành công với PTXT OTPS 

200 - 00000000 - Success  

19.

Đăng ký dịch vụ thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng doanh nghiệp đăng ký dịch vụ với phân quyền chủ sở hữu (ALLR) 

 

Kết quả thực tế: 

API đăng ký dịch vụ 

 

API xác thực dịch vụ 

Đăng ký dịch vụ thành công 

200 - 00000000 - Success  

20.

Đăng ký dịch vụ thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng doanh nghiệp đăng ký dịch vụ với phân quyền phê duyệt (SIGN) 

 

Kết quả thực tế: 

API đăng ký dịch vụ 

 

API xác thực dịch vụ 

 

Đăng ký dịch vụ thành công 

200 - 00000000 - Success 

21.

Đăng ký dịch vụ không thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng doanh nghiệp đăng ký dịch vụ với phân quyền khác chủ sở hữu hoặc phê duyệt (ALLR, SIGN) 

 

Kết quả thực tế: 

API đăng ký dịch vụ 

 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

289 - 02010019 - User information is invalid   

22.

Đăng ký dịch vụ không thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng đăng ký dịch vụ với STK định danh có trạng thái khác “Đang hoạt động” 
 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

289 - 02010015- Virtual account is invalid  

23.

Đăng ký dịch vụ không thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng đăng ký dịch vụ với STK có trạng thái “CLS” 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

289 - 02010009 - Account information is invalid 

24.

Đăng ký dịch vụ không thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng đăng ký dịch vụ với đầu số tài khoản định danh khác “LOC” khi customerType =  Pers 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:  

289 - 02010013 - Virtual account prefix code is invalid  

25.

Đăng ký dịch vụ không thành công 

  • Sử dụng API đăng ký dịch vụ 

Thực hiện kiểm tra trường hợp đăng ký không thành công quá 3 lần. Request bị chặn thực hiện trong 30 phút 

Kết quả thực tế: 
API đăng ký thất bại sau khi request thất bại quá 3 lần 

 

API đăng ký thành công sau 30 phút 

 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:   

289 - 02010007 - OTP request is invalid   

26.

Đăng ký dịch vụ không thành công 

  • Sử dụng API đăng ký dịch vụ 

Kiểm tra trường hợp khách hàng đăng ký dịch vụ với 

"creditOrDebitRealTime": "NONE", "creditOrDebitPastDay": "NONE", 

Thực hiện đăng ký dịch vụ không thành công 

Mã trả về:   

289 - 02010022 - Notification type invalid 

7. Hủy đăng ký dịch vụ 

1.

Hủy đăng ký dịch vụ thành công 

  • Sử dụng API Hủy đăng ký  

Nhập đúng trường thông tin bắt buộc 

Xác thực thành công 

200 - 00000000 - Success  

2.

Hủy đăng ký dịch vụ không thành công “customerType” 

  • Sử dụng API Hủy đăng ký 

Kiểm tra ràng buộc trường “customerType” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị: PERS/ORG 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 

Thực hiện hủy dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

 

400 - 01020002 - {Field name} in bobdy is invalid 

3.

Hủy đăng ký dịch vụ không thành công “user” 

  • Sử dụng API Hủy đăng ký 

Kiểm tra ràng buộc trường “user” 

Kiểu dữ liệu: String 

Bắt buộc: No (Yes khi customerType = ORG) 

Kết quả thực tế: 

 

Trường hợp giá trị trống khi customerType =ORG 

 

Trường hợp giá trị không hợp lệ 

Thực hiện hủy dịch vụ không thành công 

Mã trả về:  

400 - 01020002 - {Field name} in bobdy is invalid  

 

289 - 02010019 - User information is invalid  

4.

Hủy đăng ký dịch vụ không thành công “accountNumber” 

  • Sử dụng API Hủy đăng ký 

Kiểm tra ràng buộc trường “accountNumber” 

Kiểu dữ liệu: Number (22) 

Bắt buộc: Yes 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị vượt quá ký tự cho phép 

 

Trường hợp giá trị không hợp lệ 

Thực hiện hủy dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

 

400 - 01020003- {Field name} length in bobdy is invalid  

 

400 - 01020002 - {Field name} in bobdy is invalid  

5.

Hủy đăng ký dịch vụ không thành công “phoneNumber” 

  • Sử dụng API Hủy đăng ký 

Kiểm tra ràng buộc trường “phoneNumber” 

Kiểu dữ liệu: Number 

Bắt buộc: Yes 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 

Thực hiện hủy dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

 

289 - 02010005 - Phone authentication method is invalid  

6.

Hủy đăng ký dịch vụ không thành công 

  • Sử dụng API Hủy đăng ký 

Kiểm tra ràng buộc trường “virtualAccountPrefixCode” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị: LOC 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 

Thực hiện hủy dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

 

289 - 02010013 - Virtual account prefix code is invalid  

7.

Hủy đăng ký dịch vụ không thành công 

  • Sử dụng API Hủy đăng ký 

Kiểm tra ràng buộc trường “virtualAccountNumber” 

Kiểu dữ liệu: String(28) 

Bắt buộc: Yes (No khi customerType = ORG) 

Kết quả thực tế: 

Trường hợp giá trị trống khi customerType = PERS 

 

Trường hợp vượt quá ký tự cho phép 
 

Trường hợp giá trị không hợp lệ 

Thực hiện hủy dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory 

 

400 - 01020003 - {Field name} length in bobdy is invalid 

 

289 - 02010014 - Virtual account is not found  

8.

Hủy đăng ký dịch vụ không thành công 

  • Sử dụng API Hủy đăng ký 

Kiểm tra ràng buộc trường “accountNumber” 

Kiểu dữ liệu: Number (22) 

Bắt buộc: Yes 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị vượt quá ký tự cho phép 

 

Trường hợp giá trị không hợp lệ 

Thực hiện hủy dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

 

400 - 01020003- {Field name} length in bobdy is invalid  

 

400 - 01020002 - {Field name} in bobdy is invalid  

9.

Hủy đăng ký dịch vụ không thành công 

  • Sử dụng API Hủy đăng ký 

Kiểm tra ràng buộc trường “phoneNumber” 

Kiểu dữ liệu: Number 

Bắt buộc: Yes 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 

Thực hiện hủy dịch vụ không thành công 

Mã trả về:  

400 - 01020001 - {Field name} in body is mandatory   

 

289 - 02010005 - Phone authentication method is invalid  

10.

Hủy đăng ký dịch vụ không thành công 

  • Sử dụng API Hủy đăng ký 

Kiểm tra trường hợp hủy dịch vụ khi thông tin đăng ký dịch vụ đã tồn tại và “Hết hiệu lực” 

Thực hiện hủy dịch vụ không thành công 

Mã trả về:  

289 - 02020049 - Account is not found  

 

 

11.

Hủy đăng ký dịch vụ không thành công 

  • Sử dụng API Hủy đăng ký 

Kiểm tra thông luồng hủy đăng ký dịch vụ trường hợp đăng ký không tồn tại 
Kết quả thực tế: 
API hủy đăng ký dịch vụ trường hợp đăng ký không tồn tại 

Thực hiện hủy dịch vụ không thành công 

Mã trả về:  

289 - 02010008 - Account information is not found  

 

12.

Hủy đăng ký dịch vụ không thành công 

  • Sử dụng API Hủy đăng ký 

Thực hiện kiểm tra trường hợp hủy đăng ký không thành công quá 3 lần. Request bị chặn thực hiện trong 30 phút 

Kết quả thực tế: 
API hủy thất bại sau khi request thất bại quá 3 lần 

 

API hủy thành công sau 30 phút 

 

Thực hiện hủy dịch vụ không thành công 

Mã trả về:  

289 - 02010007 - OTP request is invalid  

 

8. Cập nhật dịch vụ 

1.

Cập nhật dịch vụ thành công 

  • Sử dụng API cập nhật dịch vụ 

Nhập đúng trường thông tin bắt buộc 

Xác thực thành công 

200 - 00000000 - Success  

2.

Cập nhật dịch vụ không thành công 

  • Sử dụng API cập nhật dịch vụ 

Kiểm tra ràng buộc trường “customerType” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị: PERS/ORG 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 

Thực hiện cập nhật dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory 

   

400 - 01020002 - {Field name} in bobdy is invalid 

3.

Cập nhật dịch vụ không thành công 

  • Sử dụng API cập nhật dịch vụ 

Kiểm tra ràng buộc trường “user” 

Kiểu dữ liệu: String 

Bắt buộc: No (Yes khi customerType = ORG) 

Kết quả thực tế: 

 

Trường hợp giá trị trống khi customerType =ORG 

 

Trường hợp giá trị không hợp lệ 

Thực hiện cập nhật dịch vụ không thành công 

Mã trả về:  

400 - 01020002 - {Field name} in bobdy is invalid  

 

289 - 02010019 - User information is invalid  

4.

Cập nhật dịch vụ không thành công 

  • Sử dụng API cập nhật dịch vụ 

Kiểm tra ràng buộc trường “accountNumber” 

Kiểu dữ liệu: Number (22) 

Bắt buộc: Yes 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị vượt quá ký tự cho phép 

 

Trường hợp giá trị không hợp lệ 

Thực hiện cập nhật dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

 

400 - 01020003- {Field name} length in bobdy is invalid  

 

400 - 01020002 - {Field name} in bobdy is invalid  

5.

Cập nhật dịch vụ không thành công 

  • Sử dụng API cập nhật dịch vụ 

Kiểm tra ràng buộc trường “phoneNumber” 

Kiểu dữ liệu: Number 

Bắt buộc: Yes 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 

Thực hiện cập nhật dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

 

289 - 02010005 - Phone authentication method is invalid  

6.

Cập nhật dịch vụ không thành công 

  • Sử dụng API cập nhật dịch vụ 

Kiểm tra ràng buộc trường “creditOrDebitRealTime” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị (Enum): DEBIT / CREDIT / ALL / NONE 

Kết quả thực tế: 

Trường hợp giá trị trống 

 

Trường hợp giá trị không hợp lệ 

Thực hiện cập nhật dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

 

400 - 01020002 - {Field name} in bobdy is invalid  

 

7.

Cập nhật dịch vụ không thành công 

  • Sử dụng API cập nhật dịch vụ 

Kiểm tra ràng buộc trường “creditOrDebitPastDay” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị (Enum): DEBIT / CREDIT / ALL / NONE 

Kết quả thực tế: 

Trường hợp giá trị trống 

Trường hợp giá trị không hợp lệ 

Thực hiện cập nhật dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

400 - 01020002 - {Field name} in bobdy is invalid  

8.

Cập nhật dịch vụ không thành công 

  • Sử dụng API cập nhật dịch vụ 

Kiểm tra ràng buộc trường “virtualAccountPrefixCode” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị: LOC 

Kết quả thực tế: 

Trường hợp giá trị trống 

Trường hợp giá trị không hợp lệ 

Thực hiện cập nhật dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory   

289 - 02010013 - Virtual account prefix code is invalid  

9.

Cập nhật dịch vụ không thành công 

  • Sử dụng API cập nhật dịch vụ 

Kiểm tra ràng buộc trường “virtualAccountNumber” 

Kiểu dữ liệu: String(28) 

Bắt buộc: Yes (No khi customerType = ORG) 

Kết quả thực tế: 

Trường hợp giá trị trống khi customerType = PERS 

Trường hợp vượt quá ký tự cho phép 
 

Trường hợp giá trị không hợp lệ 

Thực hiện cập nhật dịch vụ không thành công 

Mã trả về:  

400 - 01020001- {Field name} in body is mandatory 

400 - 01020003 - {Field name} length in bobdy is invalid 

289 - 02010014 - Virtual account is not found  

10.

Cập nhật dịch vụ không thành công 

  • Sử dụng API cập nhật dịch vụ 

Kiểm tra trường hợp khách hàng cập nhật dịch vụ với 

"creditOrDebitRealTime": "NONE", "creditOrDebitPastDay": "NONE", 

Kết quả thực tế: 

Thực hiện cập nhật dịch vụ không thành công 

Mã trả về:  

289 - 02010022 - Notification type invalid 

11.

Cập nhật dịch vụ không thành công 

  • Sử dụng API cập nhật dịch vụ 

Thực hiện kiểm tra trường hợp cập nhật không thành công quá 3 lần. Request bị chặn thực hiện trong 30 phút 

Kết quả thực tế: 
API cập nhật thất bại sau khi request thất bại quá 3 lần 

API cập nhật thành công sau 30 phút 

Thực hiện cập nhật dịch vụ không thành công 

Mã trả về:  

289 - 02010007 -  OTP request is invalid  

12.

Cập nhật dịch vụ không thành công 

  • Sử dụng API cập nhật dịch vụ 

Kiểm tra thông luồng cập nhật đăng ký dịch vụ trường hợp đăng ký không tồn tại 
Kết quả thực tế: 

API cập nhật đăng ký dịch vụ trường hợp đăng ký không tồn tại 

 

Thực hiện cập nhật dịch vụ không thành công 

Mã trả về:  

289 - 02020049 - Account is not found 

9. Truy vấn danh sách đăng ký dịch vụ 

1.

Truy vấn danh sách đăng ký dịch vụ thành công 

  • Truy vấn danh sách đăng ký dịch vụ thành công 

Nhập các trường thông tin 

Xác thực thành công 

200 - 00000000 - Success  

2.

Truy vấn danh sách đăng ký dịch vụ không thành công 

  •  

Kiểm tra ràng buộc trường “page” 
Kiểu dữ liệu: Number 
Bắt buộc: No 

Giá trị mặc định: 0 
Kết quả thực tế: 

Trường hợp page nhở hơn 0 

Thực hiện truy vấn danh sách đăng ký dịch vụ không thành công 

400 - 01010006 - {Field name} in header or params is invalid  

3.

Truy vấn danh sách đăng ký dịch vụ không thành công 

  • Truy vấn danh sách đăng ký dịch vụ thành công 

Kiểm tra ràng buộc trường “size” 
Kiểu dữ liệu: Number 
Bắt buộc: No 

Giá trị mặc định: 20 
Kết quả thực tế: 

Trường hợp size nhở hon 0 

Thực hiện truy vấn danh sách đăng ký dịch vụ không thành công 

400 - 01010006 - {Field name} in header or params is invalid  

4.

 

  • Truy vấn danh sách đăng ký dịch vụ thành công 

 

 

10. Truy vấn chi tiết đăng ký dịch vụ 

1.

Truy vấn chi tiết dịch vụ thành công 

  • Sử dụng API truy vấn chi tiết đăng ký dịch vụ 

Nhập các trường thông tin 

Xác thực thành công 

200 - 00000000 - Success  

2.

Truy vấn chi tiết dịch vụ không thành công 

  • Sử dụng API truy vấn chi tiết đăng ký dịch vụ 

Kiểm tra ràng buộc trường “accountNumber” 
Kiểu dữ liệu: Number 
Bắt buộc: Yes 
Kết quả thực tế: 

Trường hợp trống 
 
Trường hợp giá trị không hợp lệ 

 

Thực hiện truy vấn chi tiết đăng ký dịch vụ không thành công 

400 - 01010005 - {Field name} in header or params is mandatory   

400 - 02010008 - Account information is not found  

3.

Truy vấn chi tiết dịch vụ không thành công 

  • Sử dụng API truy vấn chi tiết đăng ký dịch vụ 

Kiểm tra ràng buộc trường “virtualAccountPrefixCode” 
Kiểu dữ liệu: String (3) 
Bắt buộc: Optional 
Kết quả thực tế: 
 
Trường hợp vượt quá ký tự cho phép 

Trường hợp giá trị không hợp lệ 

Thực hiện truy vấn chi tiết đăng ký dịch vụ không thành công 

400 - 01010007 -{Field name} length in header or params is invalid  

289 - 02020049 - Account is not found 

4.

Truy vấn chi tiết dịch vụ không thành công 

  • Sử dụng API truy vấn chi tiết đăng ký dịch vụ 

Kiểm tra ràng buộc trường “virtualAccountNumber” 
Kiểu dữ liệu: String (28) 
Bắt buộc: Optional 
Kết quả thực tế: 


Trường hợp vượt quá ký tự cho phép 

Trường hợp giá trị không hợp lệ 

Thực hiện truy vấn chi tiết đăng ký dịch vụ không thành công 

400 - 01010007 -{Field name} length in header or params is invalid  

289 - 02020049 - Account is not found 

11. Kiểm tra header Đăng ký, Cập nhật, Hủy, Xác thức dịch vụ 

1.

Kiểm tra header trường thông tin “X-Request-ID” 

  • Sử dụng API đăng ký dịch 

  • Sử dụng API cập nhật dịch vụ 

  • Sử dụng API hủy dịch  

  • Sử dụng API xác thực 

Kiểm tra ràng buộc trường “X-Request-ID” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị: UUID 

Kết quả thực tế: 

Trường hợp giá trị trống 

Trường hợp giá trị không hợp lệ 

Thực hiện ràng buộc đúng như mô tả 

Mã trả về:  

400 - 01010005 - {Field name} in header or params is mandatory  

400 - 01010006 - {Field name} in header or params is invalid 

2.

Kiểm tra header trường thông tin “X-Service” 

Kiểm tra header trường thông tin “X-Service” 

  • Sử dụng API đăng ký dịch 

  • Sử dụng API cập nhật dịch vụ 

  • Sử dụng API hủy dịch  

  • Sử dụng API xác thực 

Kiểm tra ràng buộc trường “X-Service” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Giá trị: TRANSACTION-NOTIFICATION-REGISTER 

Kết quả thực tế: 

Trường hợp giá trị trống 

Trường hợp giá trị không hợp lệ 

Thực hiện ràng buộc đúng như mô tả 

Mã trả về:  

400 - 01010005 - {Field name} in header or params is mandatory  

400 - 01010006 - {Field name} in header or params is invalid 

3.

Kiểm tra header trường thông tin “X-Provider-ID” 

  • Sử dụng API đăng ký dịch 

  • Sử dụng API cập nhật dịch vụ 

  • Sử dụng API hủy dịch  

  • Sử dụng API xác thực 

Kiểm tra ràng buộc trường “X-Provider-ID” 

Kiểu dữ liệu: String (4) 

Bắt buộc: Yes 

Kết quả thực tế: 

Trường hợp giá trị trống 

Trường hợp vượt quá ký tự cho phép 

Trường hợp giá trị không hợp lệ 

Thực hiện ràng buộc đúng như mô tả 

Mã trả về:  

400 - 01010005 - {Field name} in header or params is mandatory  

400 - 01010007 - {Field name} length in header or params is invalid  

400 - 01010006 - {Field name} in header or params is invalid 

4.

Kiểm tra header trường thông tin “Authorization” 

  • Sử dụng API đăng ký dịch 

  • Sử dụng API cập nhật dịch vụ 

  • Sử dụng API hủy dịch  

  • Sử dụng API xác thực 

Kiểm tra ràng buộc trường “Authorization” 

Kiểu dữ liệu: String 

Bắt buộc: Yes 

Kết quả thực tế: 

Trường hợp giá trị trống 

Trường hợp giá trị không hợp lệ, hết hạn token 

Thực hiện ràng buộc đúng như mô tả 

Mã trả về:  

400 - 01010003 - Missing Authorization Token  

400 - 01010001 - Unauthenticated 

key mapping
merchant-solution
Mô tả
Giải pháp kết nối phần mềm ứng dụng Đối tác là Dịch vụ hỗ trợ cho KHCN, KHTC có tài khoản tại ACB (thuộc hệ sinh thái của Đối tác) sử dụng dịch vụ của ACB trên phần mềm /ứng dụng của Đối tác thông qua API của ACB.
API Order
open-virtual-account-3rd-service-registration|open-virtual-account-3rd-service-cancellation|open-virtual-account-3rd-service-retrieve|open-transaction-notification-register-service-registration|open-transaction-notification-register-service-modification|open-transaction-notification-register-service-cancellation|open-virtual-account-3rd-service-verification|open-transaction-notification-register-service-verification|open-transaction-notification-register-service-details|open-transaction-notification-register-service-retrieve|qr-transaction-notification-api-adapter|transaction-notification-api-adapter|