API ACB

Bởi Pay2S 11 phút đọc

API ACB là gì? Hướng dẫn tích hợp API ACB qua Pay2S

API ACB là giải pháp giúp website, phần mềm, POS, ERP và các nền tảng doanh nghiệp kết nối với dữ liệu giao dịch của Ngân hàng TMCP Á Châu (ACB).

Thông qua Pay2S, doanh nghiệp có thể kết nối tài khoản ACB để tra cứu lịch sử giao dịch, tự động ghi nhận biến động số dư, nhận giao dịch qua Webhook và tích hợp quy trình thanh toán vào website hoặc phần mềm.

Việc sử dụng API và Webhook giúp giảm thao tác kiểm tra tài khoản ngân hàng thủ công, đồng thời hỗ trợ xây dựng các quy trình xử lý giao dịch gần như theo thời gian thực.

API ACB là gì?

API ACB có thể hiểu là phương thức cho phép hệ thống bên ngoài kết nối và trao đổi dữ liệu liên quan đến tài khoản hoặc giao dịch ngân hàng ACB thông qua các giao diện lập trình ứng dụng.

Trong mô hình tích hợp cùng Pay2S, doanh nghiệp có thể sử dụng dữ liệu giao dịch ACB cho nhiều nhu cầu như:

  • Tự động kiểm tra thanh toán

  • Tra cứu lịch sử giao dịch

  • Ghi nhận giao dịch tiền vào và tiền ra

  • Xác nhận đơn hàng tự động

  • Kết nối website và ứng dụng

  • Kết nối phần mềm bán hàng và POS

  • Tích hợp ERP hoặc hệ thống quản lý nội bộ

  • Nhận thông báo giao dịch bằng Webhook

  • Tự động hóa quy trình đối soát

Thay vì nhân viên phải đăng nhập ứng dụng ngân hàng và kiểm tra từng giao dịch, hệ thống có thể chủ động xử lý dữ liệu thông qua API hoặc Webhook.

Giới thiệu Ngân hàng ACB

Ngân hàng Thương mại Cổ phần Á Châu, tên giao dịch tiếng Anh là Asia Commercial Joint Stock Bank, thường được gọi tắt là ACB.

ACB chính thức đi vào hoạt động ngày 04/06/1993 và hiện là một trong những ngân hàng thương mại cổ phần lớn tại Việt Nam.

Thông tin ngân hàng ACB

Thông tin Giá trị
Tên ngân hàng Ngân hàng TMCP Á Châu
Tên tiếng Anh Asia Commercial Joint Stock Bank
Tên viết tắt ACB
BIN / Napas Bank Code 970416
SWIFT Code ASCBVNVX
Website https://www.acb.com.vn

Logo ACB

Logo ACB có thể được sử dụng trong các giao diện lựa chọn ngân hàng, trang thanh toán hoặc tài liệu tích hợp theo đúng quy định nhận diện thương hiệu.

Tải logo ACB Vector, AI, SVG, EPS, PNG:
https://pay2s.vn/blog/tai-logo-acb-file-vector-ai-svg-eps-png/


API tra cứu lịch sử giao dịch ACB theo khoảng thời gian

Pay2S cung cấp API cho phép khách hàng đã kết nối tài khoản ngân hàng tra cứu lịch sử giao dịch theo khoảng thời gian.

Endpoint

POST https://pay2s.vn/userapi/transactions

Header

Content-Type: application/json
pay2s-token: <TOKEN>

Ví dụ cURL

curl --location --request POST 'https://my.pay2s.vn/userapi/transactions' \
  --header 'pay2s-token: xxxxxxxxxxxxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data '{
    "bankAccounts": "006101991",
    "begin": "01/09/2024",
    "end": "15/10/2024"
  }'

Tham số API

pay2s-token

Token dùng để xác thực yêu cầu gửi tới Pay2S.

Bạn có thể lấy Secret Key tại:

Tích hợp → Website/Application

Sau đó mã hóa Secret Key sang Base64 và truyền giá trị vào header:

pay2s-token

Không nên lưu Secret Key trực tiếp trong mã nguồn phía trình duyệt hoặc ứng dụng client.

Secret Key nên được lưu trong biến môi trường hoặc hệ thống quản lý khóa ở phía máy chủ.

bankAccounts

Số tài khoản ngân hàng đã được liên kết trên hệ thống Pay2S.

Ví dụ:

{
  "bankAccounts": "006101991"
}

begin

Ngày bắt đầu khoảng thời gian cần truy vấn.

Định dạng:

dd/MM/yyyy

Ví dụ:

01/09/2024

end

Ngày kết thúc khoảng thời gian cần truy vấn.

Ví dụ:

15/10/2024

Khi nào nên sử dụng API tra cứu lịch sử giao dịch?

API truy vấn lịch sử giao dịch phù hợp trong các trường hợp:

  • Đối soát dữ liệu

  • Kiểm tra lại giao dịch cũ

  • Đồng bộ dữ liệu định kỳ

  • Khôi phục dữ liệu khi hệ thống tạm thời gián đoạn

  • Kiểm tra giao dịch trong một khoảng thời gian cụ thể

Nếu mục tiêu là nhận giao dịch tự động ngay khi phát sinh, Pay2S khuyến nghị sử dụng Webhook thay vì gọi API liên tục.


Tạo yêu cầu thanh toán ACB qua Pay2S Collection Link

Ngoài API tra cứu giao dịch, Pay2S còn cung cấp Collection Link API để website hoặc phần mềm tạo yêu cầu thanh toán.

API này không phải API tra cứu lịch sử giao dịch.

Luồng xử lý cơ bản:

Tạo đơn hàng → Gọi API Pay2S → Nhận thông tin thanh toán → Khách hàng thanh toán → Pay2S ghi nhận → Website nhận kết quả

Bước 1: Liên kết tài khoản ACB với Pay2S

Đầu tiên, tài khoản ACB cần được liên kết với tài khoản Pay2S.

Truy cập:

https://my.pay2s.vn/

Bước 2: Lấy thông tin tích hợp

Tại:

Tích hợp → Website/Application

Hệ thống cung cấp các thông tin như:

Partner Code

Mã định danh tài khoản hoặc đối tác trên hệ thống Pay2S.

Access Key

Khóa dùng để xác định quyền truy cập API.

Secret Key

Khóa bí mật dùng để tạo chữ ký xác thực yêu cầu.

Không gửi Secret Key trong request API.

Secret Key chỉ được sử dụng tại phía máy chủ để tạo chữ ký HMAC SHA-256.

Bước 3: Gửi yêu cầu tạo thanh toán

Endpoint

POST https://payment.pay2s.vn/v1/gateway/api/create

Content-Type

application/json

Request Parameters

Key Type Bắt buộc Mô tả
accessKey String ✓ Khóa truy cập API
partnerCode String ✓ Mã định danh đối tác
partnerName String   Tên đối tác
requestId String ✓ Mã duy nhất cho mỗi request
amount Long ✓ Số tiền cần thanh toán, đơn vị VND
orderId String ✓ Mã đơn hàng của đối tác
orderInfo String ✓ Nội dung / thông tin đơn hàng
bankAccounts Array ✓ Danh sách tài khoản ngân hàng sử dụng cho thanh toán
redirectUrl String ✓ URL chuyển hướng khách hàng sau thanh toán
ipnUrl String ✓ Endpoint nhận kết quả thanh toán
requestType String ✓ Loại request
signature String ✓ Chữ ký HMAC SHA-256 xác thực request

Cấu trúc bankAccounts

Ví dụ sử dụng tài khoản ACB:

[
  {
    "account_number": "737478888",
    "bank_id": "ACB"
  }
]

Có thể truyền nhiều tài khoản:

[
  {
    "account_number": "737478888",
    "bank_id": "ACB"
  },
  {
    "account_number": "222629219",
    "bank_id": "ACB"
  }
]

Tạo chữ ký HMAC SHA-256

Pay2S sử dụng HMAC SHA-256 để xác thực dữ liệu gửi tới API.

Chuỗi dữ liệu dùng để ký:

accessKey=$accessKey&amount=$amount&bankAccounts=Array&ipnUrl=$ipnUrl&orderId=$orderId&orderInfo=$orderInfo&partnerCode=$partnerCode&redirectUrl=$redirectUrl&requestId=$requestId&requestType=$requestType

Sau đó sử dụng Secret Key để tạo HMAC SHA-256.

Ví dụ PHP:

$rawHash =
    "accessKey=" . $accessKey .
    "&amount=" . $amount .
    "&bankAccounts=Array" .
    "&ipnUrl=" . $ipnUrl .
    "&orderId=" . $orderId .
    "&orderInfo=" . $orderInfo .
    "&partnerCode=" . $partnerCode .
    "&redirectUrl=" . $redirectUrl .
    "&requestId=" . $requestId .
    "&requestType=" . $requestType;

$signature = hash_hmac('sha256', $rawHash, $secretKey);

Ví dụ request tạo thanh toán

{
  "accessKey": "YOUR_ACCESS_KEY",
  "partnerCode": "PAY2Sxxxxxxxxxxx",
  "partnerName": "Website Demo",
  "requestId": "1760000000001",
  "amount": 150000,
  "orderId": "P2S1540456",
  "orderInfo": "DONHANG1540456",
  "bankAccounts": [
    {
      "account_number": "737478888",
      "bank_id": "ACB"
    }
  ],
  "redirectUrl": "https://example.com/payment/result",
  "ipnUrl": "https://example.com/payment/ipn",
  "requestType": "pay2s",
  "signature": "YOUR_HMAC_SHA256_SIGNATURE"
}

Không sử dụng Access Key, Secret Key hoặc thông tin tài khoản thật trong mã nguồn public, GitHub hoặc ứng dụng chạy trực tiếp phía client.


Webhook giao dịch ACB qua Pay2S

Đối với nhu cầu tự động ghi nhận giao dịch ACB, Webhook là phương thức được khuyến nghị.

Thay vì website phải liên tục gọi API để kiểm tra xem có giao dịch mới hay chưa, Pay2S sẽ chủ động gửi dữ liệu đến endpoint của doanh nghiệp khi phát hiện giao dịch.

Luồng xử lý:

Giao dịch phát sinh tại ACB → Pay2S ghi nhận → Pay2S gọi Webhook → Hệ thống doanh nghiệp xử lý

Ưu điểm của Webhook

Sử dụng Webhook giúp:

  • Nhận giao dịch gần như theo thời gian thực

  • Giảm số lượng request API

  • Tiết kiệm tài nguyên máy chủ

  • Giảm nhu cầu polling liên tục

  • Dễ tích hợp với website, POS và ERP

  • Tự động xác nhận đơn hàng

  • Tự động xử lý nghiệp vụ sau thanh toán

Webhook có thể được tích hợp bằng:

  • PHP

  • Node.js

  • Java

  • Python

  • C#

  • Go

  • Hoặc bất kỳ nền tảng nào có khả năng nhận HTTP POST

Ví dụ dữ liệu Webhook

Pay2S sẽ gửi dữ liệu giao dịch tới endpoint được cấu hình.

Ví dụ:

{
  "transactions": [
    {
      "id": 32756283,
      "gateway": "ACB",
      "transactionDate": "2026-10-03 03:43:57",
      "transactionNumber": "24936",
      "accountNumber": "50853767",
      "content": "NOI DUNG GIAO DICH",
      "transferType": "IN",
      "transferAmount": 90000,
      "checksum": "37eccdf35d7eaf58fb0ff608be0ebc3e"
    }
  ]
}

Trong đó:

  • id: mã giao dịch trên hệ thống

  • gateway: ngân hàng phát sinh giao dịch

  • transactionDate: thời gian giao dịch

  • transactionNumber: mã tham chiếu giao dịch

  • accountNumber: số tài khoản nhận dữ liệu

  • content: nội dung giao dịch

  • transferType: loại giao dịch IN hoặc OUT

  • transferAmount: số tiền giao dịch

  • checksum: chuỗi kiểm tra dữ liệu

Phản hồi Webhook

Endpoint của doanh nghiệp nên phản hồi:

{
  "success": true
}

với HTTP Status:

200 OK

Việc phản hồi nhanh giúp Pay2S xác định dữ liệu đã được tiếp nhận thành công và hạn chế việc gửi lại.

Cơ chế gửi lại Webhook

Trong trường hợp endpoint không xử lý thành công, hệ thống Pay2S có cơ chế gửi lại dữ liệu.

Do đó, khi xây dựng endpoint Webhook, doanh nghiệp nên:

  • Xử lý giao dịch theo id để chống ghi nhận trùng

  • Kiểm tra dữ liệu đầu vào

  • Xác thực Webhook

  • Lưu log giao dịch

  • Trả HTTP 200 nhanh nhất có thể

  • Đưa các tác vụ xử lý nặng sang queue hoặc background worker

  • Sử dụng HTTPS trên môi trường production

Hướng dẫn tích hợp Webhook

Bước 1: Tạo Webhook

Xem hướng dẫn:

Hướng dẫn tạo Webhook ghi nhận giao dịch từ Pay2S

https://pay2s.vn/blog/huong-dan-tao-webhook-ghi-nhan-giao-dich-tu-pay2s/

Nếu đã có Webhook, có thể bỏ qua bước này.

Bước 2: Tích hợp Webhook

Xem:

Hướng dẫn tích hợp Webhook Pay2S

https://pay2s.vn/blog/huong-dan-tich-hop-webhook-pay2s/


API hay Webhook – nên sử dụng cách nào?

Nhu cầu API Webhook
Tra cứu lịch sử giao dịch ✓  
Đối soát giao dịch cũ ✓  
Đồng bộ dữ liệu theo khoảng thời gian ✓  
Nhận giao dịch mới tự động   ✓
Xử lý giao dịch gần thời gian thực   ✓
Giảm polling và request liên tục   ✓
Tự động xác nhận đơn hàng   ✓
Khôi phục hoặc kiểm tra lại dữ liệu ✓  

Trong phần lớn hệ thống thanh toán tự động, mô hình phù hợp là:

Webhook dùng để nhận giao dịch mới + API dùng để tra cứu và đối soát khi cần.


API ACB phù hợp với những hệ thống nào?

Giải pháp kết nối ACB thông qua Pay2S phù hợp với:

  • Website thương mại điện tử

  • Website bán hàng

  • Phần mềm quản lý bán hàng

  • POS

  • ERP

  • CRM

  • Hệ thống quản lý đơn hàng

  • Phần mềm kế toán

  • Hệ thống thu hộ

  • Nền tảng SaaS

  • Ứng dụng di động

  • Hệ thống nội bộ doanh nghiệp

Ví dụ, một website có thể tự động xử lý:

Khách chuyển khoản ACB → Pay2S nhận giao dịch → Webhook gửi dữ liệu → Website xác nhận đơn → Cập nhật trạng thái thanh toán

Toàn bộ quá trình có thể được xử lý tự động mà không cần nhân viên kiểm tra giao dịch thủ công.


Code mẫu tích hợp Pay2S

Source code

https://github.com/ThaiDuyKhang/collection-link-pay2s

Demo Collection Link

https://docs.pay2s.vn/example-collection-link/

Tài liệu kỹ thuật Pay2S

https://docs.pay2s.vn/


Câu hỏi thường gặp về API ACB

API ACB có thể lấy lịch sử giao dịch không?

Có. Sau khi tài khoản ACB được kết nối với Pay2S, hệ thống có thể sử dụng API giao dịch để tra cứu dữ liệu theo khoảng thời gian được hỗ trợ.

Có cần gọi API liên tục để phát hiện giao dịch mới không?

Không nên.

Nếu cần ghi nhận giao dịch tự động, Webhook là phương thức phù hợp hơn vì Pay2S chủ động gửi dữ liệu khi phát sinh giao dịch.

API ACB có tích hợp với website được không?

Có.

API và Webhook có thể được tích hợp với website, ứng dụng, POS, ERP hoặc các hệ thống nội bộ có khả năng gửi và nhận HTTP request.

Pay2S có hỗ trợ tự động xác nhận thanh toán ACB không?

Có thể xây dựng quy trình tự động dựa trên dữ liệu giao dịch do Pay2S ghi nhận.

Ví dụ:

Giao dịch ACB → Pay2S → Webhook → kiểm tra nội dung/số tiền → xác nhận đơn hàng.

Có nên để Secret Key trong JavaScript phía trình duyệt không?

Không.

Các khóa như Secret Key, Access Key có tính chất bí mật phải được lưu và xử lý ở phía máy chủ.

Không nên nhúng khóa bí mật vào JavaScript, ứng dụng frontend hoặc repository công khai.


Tích hợp API ACB cùng Pay2S

Việc kết nối tài khoản ACB với Pay2S giúp doanh nghiệp chuyển từ quy trình kiểm tra chuyển khoản thủ công sang mô hình xử lý giao dịch tự động.

Tùy nhu cầu, doanh nghiệp có thể sử dụng:

  • API giao dịch để tra cứu và đối soát

  • Webhook để nhận giao dịch tự động

  • Collection Link để tạo luồng thanh toán cho website và phần mềm

  • API Pay2S để kết nối với hệ thống quản lý doanh nghiệp

Qua đó, website, POS hoặc phần mềm có thể xây dựng quy trình:

Thanh toán → Ghi nhận giao dịch → Xác nhận → Xử lý đơn hàng

một cách nhanh chóng và tự động hơn.

    Chia sẻ bài viết