- Yêu cầu HTTP
- Nội dung yêu cầu
- Nội dung phản hồi
- RemittanceStatementSummary
- BillingPeriod
- RemittanceInstructions
- Sự kiện
Trả về thông tin chi tiết giao dịch về bảng sao kê chuyển tiền.
Đây là một API được phân trang. Bạn có thể chỉ định số lượng sự kiện giao dịch trên mỗi trang bằng numberOfEvents
. Nếu bạn không chỉ định, Chrome sẽ trả về tối đa 1.000 sự kiện trên mỗi trang. Mỗi yêu cầu đối với API này sẽ trả về một nextEventOffset
trỏ đến sự kiện giao dịch tiếp theo trong bảng sao kê, cũng như totalEvents
chỉ định tổng số giao dịch trong bảng sao kê. Nếu trang được truy xuất hiện tại chứa các giao dịch mới nhất của bảng sao kê, nextEventOffset
sẽ không xuất hiện trong phản hồi.
Giá trị statementId
là requestId
trong remittanceStatementNotificationRequest
Nếu điểm cuối gặp lỗi trong khi xử lý yêu cầu, thì phản hồi từ điểm cuối này sẽ thuộc loại
.ErrorResponse
Phản hồi cho truy vấn này có thể trống nếu phương thức này không trả về HTTP 200. Nội dung phản hồi bị trống trong trường hợp
có nội dung mô tả rõ ràng có thể được dùng để giúp kẻ tấn công hiểu được giá trị nhận dạng tài khoản của đối tác tích hợp thanh toán khác. Trong những trường hợp như vậy, khi khoá ký không khớp, không tìm thấy giá trị nhận dạng của trình tích hợp thanh toán hoặc không xác định được khoá mã hoá, thì phương thức này sẽ trả về một HTTP 404 có phần nội dung trống. Nếu chữ ký của yêu cầu có thể được xác minh thì thông tin bổ sung về lỗi sẽ được trả về trong nội dung phản hồi.ErrorResponse
Yêu cầu mẫu sẽ có dạng như sau:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "statement_detail_request_139932019",
"requestTimestamp": "1502551332087"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"statementId": "0123434-statement-abc",
"numberOfEvents": 4
}
Câu trả lời mẫu sẽ có dạng như sau:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"eventOffset": 0,
"nextEventOffset": 4,
"totalEvents": 15,
"remittanceStatementSummary": {
"statementDate": "1502521200000",
"billingPeriod": {
"startDate": "1502434800000",
"endDate": "1502434800000"
},
"dateDue": "1502348400000",
"currencyCode": "INR",
"totalDueByIntegrator": "1076000000",
"remittanceInstructions": {
"memoLineId": "stmt-1AB-pp0-invisi"
}
},
"captureEvents": [
{
"eventRequestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
"paymentIntegratorEventId": "ioj32SOIjf23oijSDfoij",
"eventCharge": "700000000",
"eventFee": "-28000000"
},
{
"eventRequestId": "Ggghvh78200PQ3Yrpb",
"paymentIntegratorEventId": "iasdf23dSdfijSDfoij",
"eventCharge": "800000000",
"eventFee": "-32000000"
}
],
"refundEvents": [
{
"eventRequestId": "liUrreQY233839dfFFb24gaQM",
"paymentIntegratorEventId": "asd3SDf3f3oijSDfoij",
"eventCharge": "-200000000",
"eventFee": "8000000"
},
{
"eventRequestId": "IIghhhUrreQY233839II9qM==",
"paymentIntegratorEventId": "DFjidoso12FSDFSDE",
"eventCharge": "-150000000",
"eventFee": "6000000"
}
]
}
Yêu cầu HTTP
POST https://vgw.googleapis.com/secure-serving/gsp/v1/remittanceStatementDetails/:PIAID
Nội dung yêu cầu
Nội dung yêu cầu chứa dữ liệu có cấu trúc sau:
Biểu diễn dưới dạng JSON |
---|
{
"requestHeader": {
object ( |
Trường | |
---|---|
requestHeader |
BẮT BUỘC: Tiêu đề chung cho tất cả các yêu cầu. |
paymentIntegratorAccountId |
BẮT BUỘC: Đây là giá trị nhận dạng tài khoản của đối tác tích hợp thanh toán giúp xác định những điều kiện ràng buộc theo hợp đồng áp dụng cho bảng sao kê này. |
statementId |
BẮT BUỘC: Mã yêu cầu của thông báo bảng sao kê. |
eventOffset |
KHÔNG BẮT BUỘC: Trả về các sự kiện bắt đầu tại giá trị chênh lệch này. Bạn nên đặt thuộc tính này thành |
numberOfEvents |
KHÔNG BẮT BUỘC: Số sự kiện hiển thị trên mỗi trang. Nếu bạn không chỉ định hoặc lớn hơn 1.000, thì giá trị này sẽ là 1.000. |
Nội dung phản hồi
Đối tượng phản hồi cho phương thức chi tiết bảng sao kê chuyển tiền.
Nếu thành công, phần nội dung phản hồi sẽ chứa dữ liệu có cấu trúc sau:
Biểu diễn dưới dạng JSON |
---|
{ "responseHeader": { object ( |
Trường | |
---|---|
responseHeader |
BẮT BUỘC: Tiêu đề chung cho tất cả câu trả lời. |
remittanceStatementSummary |
BẮT BUỘC: Bản tóm tắt bảng sao kê chuyển tiền này. |
eventOffset |
BẮT BUỘC: Độ lệch sự kiện của phản hồi này. |
nextEventOffset |
OPTIONAL: Độ lệch của sự kiện tiếp theo cần trả về. Nếu bạn chưa chỉ định, thì sẽ không có sự kiện nào khác để truy xuất cho câu lệnh này. |
totalEvents |
BẮT BUỘC: Tổng số sự kiện trong bảng sao kê này. |
totalWithholdingTaxes |
BẮT BUỘC: Tổng tất cả các khoản thuế khấu lưu cho bảng sao kê này. Giá trị này được tính bằng micros. |
captureEvents[] |
BẮT BUỘC: Bộ sự kiện chụp. |
refundEvents[] |
BẮT BUỘC: Tập hợp các sự kiện hoàn tiền. |
reverseRefundEvents[] |
KHÔNG BẮT BUỘC: Tập hợp các sự kiện hoàn tiền đảo ngược. |
chargebackEvents[] |
KHÔNG BẮT BUỘC: Tập hợp các sự kiện hoàn tiền. |
reverseChargebackEvents[] |
KHÔNG BẮT BUỘC: Tập hợp các sự kiện hoàn tiền đảo ngược. |
adjustmentEvents[] |
KHÔNG BẮT BUỘC: Tập hợp các sự kiện điều chỉnh. Google có thể thêm các sự kiện điều chỉnh theo quyết định của mình để điều chỉnh chênh lệch trong thanh toán, ví dụ: nếu phí bị tính thấp đối với một tập hợp các giao dịch trước đó, thì Google có thể điều chỉnh để điều chỉnh toàn bộ đơn vị tích hợp. |
RemittanceStatementSummary
Đối tượng tóm tắt về bảng sao kê chuyển tiền.
Biểu diễn dưới dạng JSON |
---|
{ "statementDate": string, "billingPeriod": { object ( |
Trường | |
---|---|
statementDate |
BẮT BUỘC: Ngày (tại Hoa Kỳ/Los Angeles) mà bản tuyên bố này được tạo. |
billingPeriod |
BẮT BUỘC: Kỳ thanh toán trong bảng sao kê này. |
dateDue |
KHÔNG BẮT BUỘC: Ngày đến hạn chuyển tiền. Thời gian này được biểu thị dưới dạng mili giây từ thời gian bắt đầu của hệ thống. Đó là ngày (và do đó sẽ luôn bắt đầu từ mili giây đầu tiên của ngày theo múi giờ thanh toán). Giá trị này được thiết lập miễn là |
currencyCode |
BẮT BUỘC: Mã đơn vị tiền tệ gồm 3 chữ cái theo ISO 4217. |
totalDueByIntegrator |
BẮT BUỘC: Giá trị này tính bằng phần triệu theo đơn vị tiền tệ của |
remittanceInstructions |
BẮT BUỘC: Thông tin chi tiết về cách chuyển tiền thanh toán |
BillingPeriod
Kỳ thanh toán của bảng sao kê này.
Biểu diễn dưới dạng JSON |
---|
{ "startDate": string, "endDate": string } |
Trường | |
---|---|
startDate |
BẮT BUỘC: Ngày bắt đầu kỳ thanh toán. Thời gian này được biểu thị dưới dạng mili giây từ thời gian bắt đầu của hệ thống. Đó là ngày (và do đó sẽ luôn bắt đầu từ mili giây đầu tiên của ngày theo múi giờ thanh toán). Đây là mili giây đầu tiên trong ngày của kỳ thanh toán, 00:00:00.000 |
endDate |
BẮT BUỘC: Ngày kết thúc của kỳ thanh toán. Thời gian này được biểu thị dưới dạng mili giây từ thời gian bắt đầu của hệ thống. Đây là mili giây cuối cùng của ngày cuối cùng của kỳ thanh toán, 23:59:59,999 |
RemittanceInstructions
Cấu trúc lưu trữ thông tin về cách thanh toán thông báo chuyển tiền này.
Biểu diễn dưới dạng JSON |
---|
{ "memoLineId": string } |
Trường | |
---|---|
memoLineId |
BẮT BUỘC: Giá trị nhận dạng bắt buộc phải ghi vào dòng thư báo để nhận dạng khoản thanh toán nhằm nhận dạng khoản thanh toán được chuyển tiền. |
Sự kiện
Cấu trúc thể hiện một sự kiện duy nhất trong bảng sao kê chuyển tiền.
Biểu diễn dưới dạng JSON |
---|
{ "eventRequestId": string, "paymentIntegratorEventId": string, "eventCharge": string, "eventFee": string, "presentmentChargeAmount": string, "presentmentCurrencyCode": string, "exchangeRate": string, "nanoExchangeRate": string } |
Trường | |
---|---|
eventRequestId |
BẮT BUỘC: Đối với sự kiện chụp hoặc hoàn tiền, đây sẽ là |
paymentIntegratorEventId |
BẮT BUỘC: Mã nhận dạng đơn vị tích hợp thanh toán được trả về cho sự kiện này. Đối với ảnh chụp, đây là Trường này có độ dài thay đổi, vì đó là trình tích hợp, bất kỳ mã nhận dạng nào bạn cung cấp cho sự kiện này sẽ được phản ánh tại đây. Nếu nhà tích hợp không cung cấp giá trị cho sự kiện tương ứng, thì trường này sẽ chứa cùng một giá trị với trường Đối với sự kiện hoàn tiền ngược, hoàn tiền và hoàn tiền ngược, đây sẽ là Độ dài và định dạng của trường này phụ thuộc vào trường nguồn cho mỗi mã nhận dạng. Hãy tham khảo tài liệu của từng trường nguồn để biết thông tin chi tiết về yêu cầu đối với độ dài và bộ ký tự. Cụ thể, xin lưu ý rằng đôi khi, trường này có thể chứa mã nhận dạng do Google tạo. Những mã này có thể có các yêu cầu về độ dài tối đa khác với mã do đối tác tích hợp tạo. |
eventCharge |
BẮT BUỘC: Bằng mã đơn vị tiền tệ do bảng sao kê xác định. Nếu giá trị này là số âm, thì đây là giá trị tiền tệ được chuyển từ Google sang đơn vị tích hợp thanh toán. Nếu giá trị này là dương thì đó là tiền từ bên tích hợp thanh toán đến hạn cho Google. Ví dụ: khi ghi nhận giao dịch sẽ luôn có giá trị dương và giao dịch hoàn tiền sẽ luôn có giá trị âm. Sự kiện hoàn tiền ngược và hoàn tiền ngược sẽ luôn có giá trị dương. Sự kiện hoàn tiền sẽ luôn có giá trị âm. Giá trị này được tính bằng micros. |
eventFee |
BẮT BUỘC: Bằng mã đơn vị tiền tệ do bảng sao kê xác định. Nếu giá trị này là số âm, thì đây là giá trị tiền tệ được chuyển từ Google sang đơn vị tích hợp thanh toán. Nếu giá trị này là dương thì đó là tiền từ bên tích hợp thanh toán đến hạn cho Google. Ví dụ: Nếu một thoả thuận quy định rằng Google sẽ trả 1% Giá trị này được tính bằng micros. |
presentmentChargeAmount |
KHÔNG BẮT BUỘC: Số tiền giao dịch bằng đơn vị tiền tệ dùng để tính (còn gọi là giao dịch) trước khi tính tỷ giá hối đoái. Trường này tuân theo quy ước dấu giống với trường Giá trị này được tính bằng micros. |
presentmentCurrencyCode |
KHÔNG BẮT BUỘC: Mã đơn vị tiền tệ gồm 3 chữ cái theo tiêu chuẩn ISO 4217, dùng để chỉ định đơn vị tiền tệ của quà tặng (giao dịch). |
exchangeRate |
KHÔNG BẮT BUỘC: Tỷ giá hối đoái dùng để quy đổi số tiền thanh toán sang số tiền thanh toán (hoá đơn). Giá trị này được tính bằng điểm cơ bản vi (1 điểm cơ bản = 0,0001 = ,01%). Tức là để biết được tỷ giá hối đoái, hãy chia trường này cho 10^10. |
nanoExchangeRate |
KHÔNG BẮT BUỘC: Tỷ giá hối đoái dùng để quy đổi số tiền thanh toán sang số tiền thanh toán (hoá đơn), tính bằng điểm cơ bản nano. Giá trị này được tính bằng điểm cơ bản nano (1 điểm cơ bản = 0,0001 = ,01%). Tức là để biết được tỷ giá hối đoái, hãy chia trường này cho 10^13. Cả trường này và ExchangeRate sẽ được điền sẵn. Chúng là tỷ giá hối đoái tương đương được thể hiện với độ chính xác khác nhau. Trong các phiên bản trong tương lai, ExchangeRate sẽ bị xoá và được thay bằng nanoExchangeRate. |