API Nạp tiền điện thoại
Endpoint: /api/v2/service/topup/charging
Method: POST
Header: Cách tạo JWT_TOKEN
{
"X-APPOTAPAY-AUTH": Bearer JWT_TOKEN,
"Content-Type": "application/json"
}
Tham số
Tham số | Yêu cầu | Kiểu dữ liệu | Mô tả |
---|---|---|---|
partnerRefId | √ | String | Mã giao dịch phía đối tác, duy nhất cho mỗi giao dịch |
telco | √ | String | Tên nhà mạng (xem thêm phần Phụ Lục bảng nhà mạng) |
telcoServiceType | √ | String | Loại dịch vụ (xem thêm phần Phụ Lục bảng mã dịch vụ) |
productCode | √ | String | Mã sản phẩm (xem thêm API lấy bảng mã sản phẩm) |
phoneNumber | √ | String | Số điện thoại nạp tiền (truyền dạng: 09x, 08x,..) |
signature | √ | String | Chữ ký các tham số truyền lên API, các tham số được đưa vào chữ ký theo thứ tự bao gồm: partnerRefId + phoneNumber + productCode + telco + telcoServiceType (xem thêm phần cách tạo signature) |
Dữ liệu trả về
Tham số | Kiểu dữ liệu | Mô tả |
---|---|---|
errorCode | Integer | Mã lỗi trả về |
message | String | Mô tả chi tiết mã lỗi |
transaction | Object | Thông tin giao dịch |
transaction.phoneNumber | String | Số điện thoại nạp |
transaction.amount | Integer | Số tiền giao dịch |
transaction.productCode | String | Mã sản phẩm |
transaction.topupAmount | String | Số tiền nạp |
transaction.appotapayTransId | String | Mã giao dịch phía AppotaPay |
transaction.time | String | Thời gian giao dịch (định dạng chuẩn RFC-3339) |
account | Object | Thông tin tài khoản |
account.balance | Integer | Số dư tài khoản sau giao dịch |
signature | String | Chữ ký thông tin giao dịch trả về, các trường được ký bao gồm (amount + appotapayTransId + errorCode + phoneNumber + productCode + time + topupAmount) (xem thêm phần cách tạo signature) |
Ví dụ
Request
{
"partnerRefId": "AB123",
"telco": "viettel",
"telcoServiceType": "prepaid",
"phoneNumber": "0866123456",
"productCode": "viettel_10",
"signature": "5a2774918a29cf4d2bdb78cccceb956f4c27837fad09a03a56e1df68b1bf29dd"
}
Response
{
"errorCode": 0,
"message": "Thành công",
"transaction": {
"phoneNumber": "0866123456",
"amount": 10000,
"productCode": "viettel_10",
"topupAmount": 10000,
"appotapayTransId": "01J7G2DYZTPCGHM3AAF8ANZC7J",
"time": "2024-09-13T17:48:06+07:00"
},
"account": {
"balance": "121000000"
},
"signature": "e5f61a7eca55ca1c5a1b6305acfa0e52f6d3d562de1b9780faf5f247ed10ab8d"
}