# Tích hợp

# Mô tả

Việc tích hợp cực kỳ đơn giản với PHP, Nodejs hay bất kỳ mã nguồn nào khác. Bạn chỉ cần khai báo đầu nhận dữ liệu và đón kết quả được trả về từ ThueAPI sau đó xử lý dữ liệu giao dịch này trên hệ thống của bạn.

# Liên kết tài khoản

Đầu tiên bạn cần có tài khoản và liên kết tài khoản được ThueAPI hỗ trợ trên hệ thống ThueAPI. Vui lòng xem trong danh sách liên kết trong menu quản trị hệ thống (danh sách hỗ trợ sẽ được update hoặc thay đổi bất kỳ lúc nào)

ThueAPI Accounts

# Giao diện liên kết cơ bản

Hệ thống hỗ trợ rất nhiều tài khoản liên kết, bạn có thể liên kết bất kỳ tài khoản nào mà bạn muốn. Việc tích hợp gần như không phụ thuộc vào việc bạn liên kết tài khoản nào vào hệ thống nhờ tính linh động của hệ thống Hook.

ThueAPI Accounts

# Tạo Hook

Sau khi đã liên kết tài khoản thành công, bạn tiến hành tạo Hook để khai báo việc gửi dữ liệu giao dịch qua endpoint mà bạn muốn.

Chi tiết vui lòng tham khảo ở mục Tạo Hook !

# Thông báo giao dịch và Debug

Các giao dịch được gửi riêng lẻ 1-1, nghĩa là nếu bạn có 5 giao dịch thì ThueAPI sẽ gửi 5 lần dữ liệu giao dịch qua endpoint bạn khai báo.

Bạn có thể theo dõi dữ liệu trả về từ endpoint của bạn ở mục thông báo để dễ dàng debug nếu muốn. Thông thường thì để kiểm tra quá trình tích hợp của bạn, đơn giản là bạn tự tạo giao dịch cho tài khoản đã liên kết và chờ kết quả debug.

ThueAPI Accounts

# Dữ liệu gửi đi từ ThueAPI

Các tham số cơ bản của một giao dịch, dữ liệu này được gửi theo dạng json (raw text) kèm theo Token mà bạn đã khai báo ở bước Tạo Hook.

Token được gửi kèm trong Header của request tên là X-Thueapi do đó để bảm bảo dữ liệu được gửi từ ThueAPI thì bạn nên kiểm tra và so sánh Token này trước khi xử lý dữ liệu giao dịch trên hệ thống của mình:

Sau đây là dữ liệu được gửi từ ThueAPI:

phone
money
type
gateway
txn_id
content
datetime

Phone

Đây là số điện thoại người giao dịch (nếu là Momo) có thể là tên người giao dịch nếu là các cổng khác không hỗ trợ số điện thoại

Money

Đây là số tiền giao dịch, số tiền này ở dạng số nguyên không chứa ký tự phân cách (,.) hàng đơn vị. Ví dụ: 1000000

Type

Đây là định danh cho loại giao dịch (nhận tiền hoặc chuyển tiền).

In: nhận tiền

Out: chuyển tiền

Gateway

Đây là tên cổng thanh toán của tài khoản liên kết (momo, vcb, techcombank...)

Txn_id

Đây là mã giao dịch riêng biệt và không trùng với các giao dịch khác trên cùng 1 tài khoản liên kết của bạn.

Nghĩa là sẽ không thể có 2 giao dịch cùng mã này trên cùng một cổng thanh toán.

Content

Đây là nội dung của giao dịch mà bạn nhận được từ các cổng thanh toán

Datetime

Đây là ngày tháng của giao dịch dưới dạng microtime (13 số nguyên).

Thông thường thì bạn cần chia lại cho 1000 sau đó convert sang định dạng ngày tháng theo unixtime