Image
payment_order_banner
Image
icon chuyen tien
Product introduction

ACB cung cấp dịch vụ chi hộ cho những khách hàng có nhu cầu, thông qua các phương thức chi hộ của ngân hàng đến người thụ hưởng. 

Các phương thức chi hộ đang thực hiện qua API bao gồm:

- Chuyển khoản theo danh sách.

- Chi hộ lương, hoa hồng.

- Chuyển khoản giao dịch đơn lẻ.

Dịch vụ chi hộ mang tới cho khách hàng những lợi ích như sau:

- Bảo mật, đảm bảo tiền được chuyển đến đúng người thụ hưởng chỉ định, hạn chế rủi ro chi tiền.

- Tiết kiệm thời gian và chi phí, chi tiền nhanh chóng, chính xác.

- Thanh toán cùng lúc số lượng lớn người thụ hưởng.

- Tối ưu hóa việc quản lý chi phí của doanh nghiệp bằng quy trình xử lý chuyên nghiệp và tự động.  

- Theo dõi tình hình chi trả trên tài khoản một cách dễ dàng qua hệ thống ACB Online hoặc qua API.

 

- Phải truyền đầy đủ các thông tin bắt buộc

- Thỏa điều kiện tài khoản trích tiền:

        + Tài khoản trích tiền phải là tài khoản của khách hàng

        + Tài khoản trích tiền phải trùng khớp với số tài khoản trích đã đăng ký dịch vụ chi hộ với ngân hàng và có trạng thái đang hoạt động.

        + Số dư khả dụng của TK trích tiền phải lớn hơn hoặc bằng Tổng số tiền giao dịch và tổng số tiền phí chuyển tiền.

- Thỏa điều kiện tài khoản thụ hưởng:

- Nếu khách hàng sử dụng dịch vụ chi hộ theo danh sách chỉ định (whitelist) thì danh sách này phải được đăng ký trước với ngân hàng.

- Nếu tài khoản thụ hưởng thuộc ACB:

       + Tài khoản thụ hưởng không nằm trong danh sách cấm nhận tiền còn hiệu lực.

       + Tài khoản thụ hưởng là tài khoản cùng đơn vị tiền tệ với tài khoản trích.

       + Trạng thái của tài khoản thụ hưởng khác trạng thái đóng.

       + Tên đơn vị thụ hưởng phải trùng khớp với họ tên chủ tài khoản trong ngân hàng.

       + Chủ tài khoản thụ hưởng không phải là người nước ngoài.

- Nếu tài khoản thụ hưởng ngoài ACB (chuyển tiền nhanh):

      + Ngân hàng thụ hưởng phải nằm trong danh sách ngân hàng thụ hưởng do NAPAS quy định.

      + Tên người thụ hưởng phải trùng với tên người thụ hưởng do NAPAS trả về.

      + Số tiền giao dịch tối đa dưới 500 triệu VNĐ.

      + Chỉ áp dụng đối với loại tiền tệ VNĐ.

- Nếu tài khoản thụ hưởng ngoài ACB (chuyển tiền thường):

     + Ngân hàng thụ hưởng phải nằm trong danh sách ngân hàng thụ hưởng do ACB cung cấp.

1. Quy trình chi hộ của ACB

payment_order_workflow_1

#Bước

Mô tả

Bước 1: Khởi tạo bộ giao dịch

Trước tiên, khách hàng gọi API Khởi tạo bộ giao dịch của ACB để gửi danh sách các giao dịch cần thực hiện chi hộ qua ACB. Bộ giao dịch gồm các thông tin như mã tham chiếu giao dịch, số giao dịch, tài khoản trích tiền, tên tài khoản nhận tiền, số tài khoản nhận tiền, ngân hàng nhận tiền,…

Sau khi nhận thông tin bộ giao dịch, ACB thực hiện kiểm tra bộ giao dịch đã đầy đủ các thông tin yêu cầu chưa và phản hồi kết quả nhận được cho khách hàng như tổng số giao dịch nhận được trong bộ giao dịch, tổng số tiền giao dịch, trạng thái bộ giao dịch.

Bước 2: Nhận kết quả kiểm tra bộ giao dịch

Sau bước 1, ACB tiếp tục thực hiện kiểm tra các ràng buộc:

  • Các điều kiện ràng buộc đối với các thông tin đầu vào

  • Các điều kiện ràng buộc của tài khoản trích.

  • Các điều kiện ràng buộc của tài khoản thụ hưởng.

Sau khi hoàn tất quá trình kiểm tra, ACB sẽ gọi API thông báo kết quả kiểm tra giao dịch để phản hồi kết quả cho khách hàng.

API này được khách hàng xây dựng dựa trên chuẩn API do ACB cung cấp.

Thông tin phản hồi gồm: mã tham chiếu giao dịch (do khách hàng cung cấp), số định danh bộ giao dịch (do ACB cung cấp), trạng thái của bộ giao dịch, tổng số giao dịch, tổng số tiền giao dịch, tổng số giao dịch hợp lệ, tổng số tiền giao dịch hợp lệ, tổng tiền phí chi hộ (nếu có)

Bước 3: Xác thực bộ giao dịch

Sau khi có kết quả kiểm tra bộ giao dịch hợp lệ, khách hàng sẽ gửi mã tham chiếu bộ giao dịch kèm danh sách thông tin xác thực (authorization_id và chuỗi xác thực CA) qua API Xác thực bộ giao dịch để xác nhận chính bản thân khách hàng cho phép ACB trích tiền từ tài khoản khách hàng chuyển qua các tài khoản thụ hưởng mà khách hàng đã gửi cho ACB qua API Khởi tạo bộ giao dịch.

Sau khi xác thực, ACB sẽ trả về kết quả gồm thông tin và tình trạng của giao dịch. Tình trạng của giao dịch có thể là:

  • Failed: thất bại hoặc

  • Pending: giao dịch đang được ngân hàng xử lý (giao dịch được ACB xử lý theo cơ chế bất đồng bộ)

Khách hàng chờ ACB thông báo kết quả của giao dich sau khi giao dịch được xử lý hoàn tất.

Bước 4: Nhận kết quả sau khi hạch toán giao dịch

Sau khi xử lý hoàn tất, ACB sẽ thông báo kết quả hạch toán cho khách hàng thông qua API thông báo kết quả hạch toán. Thông tin phản hồi gồm: mã tham chiếu bộ giao dịch (do khách hàng cung cấp), số định danh bộ giao dịch (do ACB cung cấp), trạng thái của bộ giao dịch, tổng số giao dịch, tổng số tiền giao dịch, tổng số giao dịch thành công, tổng tiền phí chi hộ.

API này cũng được khách hàng xây dựng dựa theo chuẩn API do ACB cung cấp.

Giao dịch chi hộ đến đây là kết thúc.

 

2. Quy trình truy vấn thông tin giao dịch

payment_order_workflow_2

Để truy vấn tình trạng của danh sách hoặc của từng giao dịch khách hàng đã gửi qua API, khách hàng có thể gọi các API như hình trên.

Errors list

#

HTTP Status Code

Response Code

Description 

Note

1

202 

42010058 

Batch trace number is duplicated

 

2

202 

42020001 

Not found partner 

Trường hợp không tìm thấy đối tác đăng ký chi hộ 

3

202 

42020018 

Bad request format 

 

4

202 

42010004 

Error in process 

Lỗi hệ thống tại ACB 

202 

42010060 

Not found batch trace number 

 

6

202

41020001

Client Params Is Invalid

 

401 

42020182 

Authorization not found

 

401 

42020183 

Token is expired

 

401 

42020184 

Mismatch certificate 

 

10 

401 

42020185 

Missing Authorization Header 

 

11 

401 

42020186 

Missing Token 

 

12 

401 

42020187 

Batch is expired

 

13 

401 

42020188 

Only authorize valid batch

 

14 

401 

42020189 

Cannot verify signature

 

15 

401 

42020190 

This batch has been already authorized

 

16

202

42020006

THE_ACCOUNT_NOT_FOUND

 

17

202

02030002

Unknown Internal Server Error

 

18

200

00000000

success

 

Kịch bản kiểm thử

Tải tài liệu

1. Chưa có tài khoản đăng ký với ACB 

STT Sản phẩm Tính năng Mô tả tình huống Điều kiện tiên quyết Kết quả mong đợi
1 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch chuyển khoản trong hệ thống ACB thành công - Tài khoản chi hộ không đăng ký thụ hưởng
- Truy vấn thông tin bộ giao dịch
- Tài khoản chi hộ không đăng ký thụ hưởng
- Thông tin thụ hưởng hợp lệ
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: VALID
2 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch chuyển khoản ngoài hệ thống ACB qua Citad thành công - nhận bằng tài khoản - - Tài khoản chi hộ không đăng ký thụ hưởng
- Truy vấn thông tin bộ giao dịch
- Tài khoản chi hộ không đăng ký thụ hưởng
- Bank.code/province hợp lệ
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: VALID
3 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch chuyển khoản ngoài hệ thống ACB qua Citad thành công - nhận bằng thẻ - - Tài khoản chi hộ không đăng ký thụ hưởng
- Truy vấn thông tin bộ giao dịch
- Tài khoản chi hộ không đăng ký thụ hưởng
- Bank.code/province hợp lệ
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: VALID
4 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch chuyển khoản ngoài hệ thống ACB qua Napas thành công - Nhận bằng thẻ - Tài khoản chi hộ không đăng ký thụ hưởng
- Truy vấn thông tin bộ giao dịch
- Tài khoản chi hộ không đăng ký thụ hưởng
- Bank.code/province hợp lệ
- 6 số đầu của thẻ phải là 9704
- Thông tin thụ hưởng hợp lệ 
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: VALID
5 Chi hộ Tạo bộ giao dịch Tạo bộ giao dịch không thành công khi “transaction_trace_number” trùng trong 1 bó giao dịch  - Bộ giao dịch có nhiều hơn 1 giao dịch chi tiết
- 2 giao dịch chi tiết có cùng transaction_trace_number
status code: 202
Response error code : 42010059
6 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch không thành công khi “batch_trace_number” đã tồn tại - Đã có bộ giao dịch với batch_trace_number được tạo trước đó status code: 202
Response error code: 42010058
7 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch không thành công khi “transaction_trace_number” đã tồn tại
- Truy vấn thông tin bộ giao dịch
- Bộ giao dịch có nhiều hơn 1 giao dịch chi tiết
- 1 giao dịch có transaction_trace_number đã được tạo trước đó
- "transaction_error_type": "ALL"
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: INVA
8 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch không thành công khi token hết hạn - Token hết hạn status code: 401
Response error code : 42020183
9 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch không thành công khi token không hợp lệ - Token không hợp lệ status code: 401
Response error code : 42020182
10 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch không thành công khi có 1 giao dịch chi tiết không hợp lệ - Bộ giao dịch có nhiều hơn 1 giao dịch chi tiết
- 1 giao dịch có tài khoản thụ hưởng không hợp lệ
- "transaction_error_type": "ALL"
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: INVA
11 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch thành công khi có 1 giao dịch chi tiết không hợp lệ - Bộ giao dịch có nhiều hơn 1 giao dịch chi tiết
- 1 giao dịch có tài khoản thụ hưởng không hợp lệ
- "transaction_error_type": "ANY"
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: VALID
12 Chi hộ Truy vấn chi tiết bộ giao dịch Truy vấn chi tiết giao dịch trong case 14 thành công   Response code: 200 - status: INVA cho giao dịch không hợp lệ 
  Chi hộ Truy vấn chi tiết bộ giao dịch Truy vấn chi tiết giao dịch không thành công khi không truyền from date, to date - Không truyền from date, to date status code: 202
Response error code : 42020018
17 Chi hộ Xác thực giao dịch Gọi API xác thực giao dịch thành công - 2 CA hợp lệ
- Thông tin giao dịch ký đúng
- Trạng thái bó giao dịch: VALID
Response code: 200 - Bulk_status: AUTH
18 Chi hộ Xác thực giao dịch Gọi API xác thực giao dịch không thành công - CA không hợp lệ - CA không hợp lệ
- Thông tin giao dịch ký đúng
- Trạng thái bó giao dịch: VALID
status code: 401
Response error code : 42020188
19 Chi hộ Xác thực giao dịch Gọi API xác thực giao dịch không thành công - thông tin lệnh ký không khớp - 2 CA hợp lệ
- Thông tin giao dịch ký không khớp
- Trạng thái bó giao dịch: VALID
status code: 401
Response error code : 42020188
20 Chi hộ Xác thực giao dịch Gọi API xác thực giao dịch không thành công - trạng thái bó giao dịch khác VALID - 2 CA hợp lệ
- Thông tin giao dịch ký đúng
- Trạng thái bó giao dịch: INVA
status code: 401
Response error code : 42020188
21 Chi hộ Xác thực giao dịch Gọi API xác thực giao dịch không thành công - thời gian xác thực quá thời gian tạo lệnh 60 phút - 2 CA hợp lệ
- Thông tin giao dịch ký đúng
- Trạng thái bó giao dịch: EXPI
status code: 401
Response error code : 42020187
22 Chi hộ   - Tạo bộ giao dịch thành công với số tiền > số dư tài khoản
- Xác thực giao dịch
- Truy vấn bó giao dịch
- số tiền giao dịch > số dư khả dụng của tài khoản Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: VALID
Xác thực thành công - Response code: 200 - Bulk_status: AUTH
Truy vấn bộ giao dịch: Trạng thái bộ gd: REJE
23 Chi hộ Vượt quá hạn mức giao dịch - Tạo bộ giao dịch chuyển khoản ngoài hệ thống ACB qua Napas - Nhận bằng tài khoản
- Truy vấn thông tin bộ giao dịch

- Số tiền giao dịch>500 triệu
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: INVA
24 Chi hộ Truy vấn chi tiết giao dịch Truy vấn chi tiết giao dịch với giá trị batch_trace_number không tồn tại   status code: 202
response error code: 42010060
25 Chi hộ Truy vấn chi tiết giao dịch Truy vấn chi tiết giao dịch với giá trị transaction_trace_number không tồn tại   status code: 202
response error code: 42010061

 

2. Đã có tài khoản đăng ký với ACB

STT Sản phẩm Tính năng Mô tả tình huống Điều kiện tiên quyết Kết quả mong đợi
1 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch chuyển khoản trong hệ thống ACB thành công - Tài khoản chi hộ và thụ hưởng đã đăng ký
- Truy vấn thông tin bộ giao dịch
- Tài khoản chi hộ có đăng ký danh sách đơn vị hưởng
- Thông tin thụ hưởng đã đăng ký trước
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: VALID
2 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch chuyển khoản ngoài hệ thống ACB qua Citad thành công - nhận bằng tài khoản - - Tài khoản chi hộ và thụ hưởng đã đăng ký
- Truy vấn thông tin bộ giao dịch
- Tài khoản chi hộ có đăng ký danh sách đơn vị hưởng
- Thông tin thụ hưởng đã đăng ký trước
- Bank.code/province hợp lệ
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: VALID
3 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch chuyển khoản ngoài hệ thống ACB qua Citad thành công - nhận bằng thẻ - - Tài khoản chi hộ và thụ hưởng đã đăng ký
- Truy vấn thông tin bộ giao dịch
- Tài khoản chi hộ có đăng ký danh sách đơn vị hưởng
- Thông tin thụ hưởng đã đăng ký trước
- Bank.code/province hợp lệ
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: VALID
4 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch chuyển khoản ngoài hệ thống ACB qua Napas thành công - Nhận bằng tài khoản - Tài khoản chi hộ và thụ hưởng đã đăng ký
- Truy vấn thông tin bộ giao dịch
- Tài khoản chi hộ có đăng ký danh sách đơn vị hưởng
- Thông tin thụ hưởng đã đăng ký trước
- Bank.code/province hợp lệ
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: VALID
5 Chi hộ Tạo bộ giao dịch Tạo bộ giao dịch không thành công khi “transaction_trace_number” trùng trong 1 bó giao dịch  - Bộ giao dịch có nhiều hơn 1 giao dịch chi tiết
- 2 giao dịch chi tiết có cùng transaction_trace_number
status code: 202
Response error code : 42010059
6 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch không thành công khi “batch_trace_number” đã tồn tại - Đã có bộ giao dịch với batch_trace_number được tạo trước đó status code: 202
Response error code: 42010058
7 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch không thành công khi “transaction_trace_number” đã tồn tại
- Truy vấn thông tin bộ giao dịch
- Bộ giao dịch có nhiều hơn 1 giao dịch chi tiết
- 1 giao dịch có transaction_trace_number đã được tạo trước đó
- "transaction_error_type": "ALL"
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: INVA
8 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch không thành công khi token hết hạn - Token hết hạn status code: 401
Response error code : 42020183
9 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch không thành công khi token không hợp lệ - Token không hợp lệ status code: 401
Response error code : 42020182
10 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch không thành công khi có 1 giao dịch chi tiết không hợp lệ - Bộ giao dịch có nhiều hơn 1 giao dịch chi tiết
- 1 giao dịch có tài khoản thụ hưởng không hợp lệ
- "transaction_error_type": "ALL"
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: INVA
11 Chi hộ Tạo bộ giao dịch - Tạo bộ giao dịch thành công khi có 1 giao dịch chi tiết không hợp lệ - Bộ giao dịch có nhiều hơn 1 giao dịch chi tiết
- 1 giao dịch có tài khoản thụ hưởng không hợp lệ
- "transaction_error_type": "ANY"
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: VALID
12 Chi hộ Truy vấn chi tiết bộ giao dịch Truy vấn chi tiết giao dịch trong case 14 thành công   Response code: 200 - status: INVA cho giao dịch không hợp lệ 
  Chi hộ Truy vấn chi tiết bộ giao dịch Truy vấn chi tiết giao dịch không thành công khi không truyền from date, to date - Không truyền from date, to date status code: 202
Response error code : 42020018
17 Chi hộ Xác thực giao dịch Gọi API xác thực giao dịch thành công - 2 CA hợp lệ
- Thông tin giao dịch ký đúng
- Trạng thái bó giao dịch: VALID
Response code: 200 - Bulk_status: AUTH
18 Chi hộ Xác thực giao dịch Gọi API xác thực giao dịch không thành công - CA không hợp lệ - CA không hợp lệ
- Thông tin giao dịch ký đúng
- Trạng thái bó giao dịch: VALID
status code: 401
Response error code : 42020188
19 Chi hộ Xác thực giao dịch Gọi API xác thực giao dịch không thành công - thông tin lệnh ký không khớp - 2 CA hợp lệ
- Thông tin giao dịch ký không khớp
- Trạng thái bó giao dịch: VALID
status code: 401
Response error code : 42020188
20 Chi hộ Xác thực giao dịch Gọi API xác thực giao dịch không thành công - trạng thái bó giao dịch khác VALID - 2 CA hợp lệ
- Thông tin giao dịch ký đúng
- Trạng thái bó giao dịch: INVA
status code: 401
Response error code : 42020188
21 Chi hộ Xác thực giao dịch Gọi API xác thực giao dịch không thành công - thời gian xác thực quá thời gian tạo lệnh 60 phút - 2 CA hợp lệ
- Thông tin giao dịch ký đúng
- Trạng thái bó giao dịch: EXPI
status code: 401
Response error code : 42020187
22 Chi hộ   - Tạo bộ giao dịch thành công với số tiền > số dư tài khoản
- Xác thực giao dịch
- Truy vấn bó giao dịch
- số tiền giao dịch > số dư khả dụng của tài khoản Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: VALID
Xác thực thành công - Response code: 200 - Bulk_status: AUTH
Truy vấn bộ giao dịch: Trạng thái bộ gd: REJE
23 Chi hộ vượt quá hạn mức giao dịch - Tạo bộ giao dịch chuyển khoản ngoài hệ thống ACB qua Napas - Nhận bằng tài khoản
- Truy vấn thông tin bộ giao dịch

- Số tiền giao dịch>500 triệu
Response code: 200 - Bulk_status: ORIG
Trả kết quả validate bộ giao dịch - Trạng thái bộ gd: INVA
24 Chi hộ Truy vấn chi tiết giao dịch Truy vấn chi tiết giao dịch với giá trị batch_trace_number không tồn tại   status code: 202
response error code: 42010060
25 Chi hộ Truy vấn chi tiết giao dịch Truy vấn chi tiết giao dịch với giá trị transaction_trace_number không tồn tại   status code: 202
response error code: 42010061
Main feature
payment_order_icon_1
 
Chuyển khoản theo danh sách
payment_order_icon_2
 
Chi hộ lương, hoa hồng
payment_order_icon_3
Chuyển khoản giao dịch đơn lẻ
key mapping
payment-order
Description
ACB cung cấp dịch vụ chi hộ cho những khách hàng có nhu cầu, thông qua các phương thức chi hộ của ngân hàng đến người thụ hưởng.
API Order
payment-order-post-batch|payment-order-validate-notification|payment-order-batch-authorization|payment-order-transfer-notification|payment-order-get-batch|payment-order-batch-detail|payment-order-post-transaction|payment-order-get-transaction|payment-order-post-bulk-transaction|payment-order-get-bulk-transaction|payment-order-callback-transaction