- 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 về giao dịch của một bảng sao kê lệnh chuyển tiền.
Đây là một API 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, hệ thống sẽ trả về tối đa 1.000 sự kiện trên mỗi trang. Mỗi yêu cầu đến 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 hiện tại được truy xuất chứa các giao dịch gần đây nhất của bảng sao kê, thì nextEventOffset sẽ không xuất hiện trong phản hồi.
Giá trị statementId là requestId từ remittanceStatementNotificationRequest
Nếu gặp lỗi trong quá trình 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 sẽ trống trong trường hợp có thể sử dụng một có nội dung mô tả rõ ràng để giúp kẻ tấn công hiểu được giá trị nhận dạng tài khoản của đơn vị tích hợp thanh toán của các đơn vị tích hợp khác. Trong những trường hợp này, khi khoá ký không khớp, không tìm thấy mã nhận dạng của đơn vị tích hợp thanh toán hoặc không xác định được khoá mã hoá, phương thức này sẽ trả về HTTP 404 với nội dung trống. Nếu có thể xác minh chữ ký yêu cầu, thông tin bổ sung về lỗi sẽ được trả về trong phần nội dung phản hồi.ErrorResponse
Ví dụ về yêu cầu:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "statement_detail_request_139932019",
"requestTimestamp": "1502551332087"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"statementId": "0123434-statement-abc",
"numberOfEvents": 4
}
Ví dụ về phản hồi:
{
"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 với 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 đơn vị tích hợp thanh toán, giúp xác định các ràng buộc theo hợp đồng liên quan đến câu lệnh này. |
statementId |
BẮT BUỘC: Mã yêu cầu của thông báo sao kê. |
eventOffset |
KHÔNG BẮT BUỘC: Trả về các sự kiện bắt đầu tại độ lệch này. Bạn nên đặt giá trị này thành |
numberOfEvents |
KHÔNG BẮT BUỘC: Số lượng sự kiện cần hiển thị trên mỗi trang. Nếu bạn không chỉ định hoặc chỉ định giá trị lớn hơn 1000, thì giá trị này sẽ là 1000. |
Nội dung phản hồi
Đối tượng phản hồi cho phương thức chi tiết thông báo 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ác phản hồi. |
remittanceStatementSummary |
BẮT BUỘC: Tóm tắt nội dung của thông báo 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 |
KHÔNG BẮT BUỘC: Độ lệch của sự kiện tiếp theo cần trả về. Nếu không được chỉ định, thì không còn sự kiện nào để truy xuất cho câu lệnh này. |
totalEvents |
BẮT BUỘC: Tổng số sự kiện trong báo cáo này. |
totalWithholdingTaxes |
BẮT BUỘC: Tổng số thuế đã khấu lưu cho báo cáo này. Giá trị này được tính bằng micros. |
captureEvents[] |
BẮT BUỘC: Tập hợp các sự kiện chụp. |
refundEvents[] |
BẮT BUỘC: Nhóm 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 ngược. |
chargebackEvents[] |
KHÔNG BẮT BUỘC: Tập hợp các sự kiện bồi hoàn. |
reverseChargebackEvents[] |
KHÔNG BẮT BUỘC: Tập hợp các sự kiện hủy bỏ yêu cầu đòi hoàn tiền. |
adjustmentEvents[] |
KHÔNG BẮT BUỘC: Nhóm sự kiện điều chỉnh. Google có thể tuỳ ý thêm các sự kiện điều chỉnh để điều chỉnh những điểm khác biệt trong việc thanh toán, ví dụ: nếu phí được tính thấp hơn cho một nhóm giao dịch trước đó, thì Google có thể sử dụng một khoản điều chỉnh để bù đắp cho bên 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 (theo múi giờ của Los Angeles, Hoa Kỳ) tạo ra tuyên bố này. |
billingPeriod |
BẮT BUỘC: Kỳ thanh toán mà bảng sao kê này đề cập đến. |
dateDue |
KHÔNG BẮT BUỘC: Ngày đến hạn của khoản tiền thanh toán. Giá trị này được biểu thị bằng mili giây tính từ thời gian bắt đầu của hệ thống. Đây là một ngày (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 đặt miễn là |
currencyCode |
BẮT BUỘC: Mã đơn vị tiền tệ gồm 3 chữ cái theo tiêu chuẩn ISO 4217. |
totalDueByIntegrator |
BẮT BUỘC: Giá trị này tính bằng micro trong đơ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 của kỳ thanh toán. Giá trị này được biểu thị bằng mili giây tính từ thời gian bắt đầu của hệ thống. Đây là một ngày (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. Giá trị này được biểu thị bằng mili giây tính 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 trong kỳ thanh toán, tức là 23:59:59.999 |
RemittanceInstructions
Cấu trúc lưu giữ 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 có trên dòng ghi chú của khoản thanh toán để xác định khoản chuyển tiền. |
Sự kiện
Cấu trúc đại diện cho một sự kiện duy nhất có 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 các sự kiện ghi lại hoặc hoàn tiền, đây sẽ là |
paymentIntegratorEventId |
BẮT BUỘC: Mã nhận dạng mà đơn vị tích hợp thanh toán trả về cho sự kiện này. Đối với một yêu cầu ghi lại, đây là Trường này có độ dài thay đổi, vì bất kỳ mã nhận dạng nào mà đơn vị tích hợp cung cấp cho sự kiện này sẽ được phản ánh ở đây. Nếu đơn vị 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 giá trị với trường Đối với các sự kiện hoàn tiền, bồi hoàn và hủy bỏ yêu cầu đòi hoàn tiền, đây sẽ là Độ dài và định dạng của trường này phụ thuộc vào trường nguồn của từng mã nhận dạng. Hãy tham khảo tài liệu cho từng trường nguồn để biết thông tin chi tiết về các yêu cầu về độ dài và bộ ký tự. Đặc biệt, xin lưu ý rằng trường này đôi khi có thể chứa các mã do Google tạo. Các mã này có thể có yêu cầu khác về độ dài tối đa so với các mã do đơn vị tích hợp tạo. |
eventCharge |
BẮT BUỘC: Trong mã đơn vị tiền tệ do câu lệnh xác định. Nếu giá trị này là số âm, thì giá trị này biểu thị giá trị bằng tiền chuyển từ Google sang đơn vị tích hợp thanh toán. Nếu đây là số dương, thì đó là số tiền mà nhà tích hợp thanh toán phải trả cho Google. Ví dụ: giao dịch ghi lại sẽ luôn dương và giao dịch hoàn tiền sẽ luôn âm. Các sự kiện hoàn tiền và hủy bỏ yêu cầu đòi hoàn tiền sẽ luôn là số dương. Sự kiện bồi hoàn sẽ luôn có giá trị âm. Giá trị này được tính bằng micros. |
eventFee |
BẮT BUỘC: Trong mã đơn vị tiền tệ do câu lệnh xác định. Nếu giá trị này là số âm, thì giá trị này biểu thị giá trị bằng tiền chuyển từ Google sang đơn vị tích hợp thanh toán. Nếu đây là số dương, thì đó là số tiền mà nhà tích hợp thanh toán phải trả 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ệ trình bày (còn gọi là đơn vị tiền tệ giao dịch) trước khi quy đổi ngoại tệ. Trường này tuân theo cùng một quy ước về dấu như trường Giá trị này được tính bằng micros. |
presentmentCurrencyCode |
KHÔNG BẮT BUỘC: Mã tiền tệ gồm 3 chữ cái theo tiêu chuẩn ISO 4217 biểu thị đơn vị tiền tệ trình bày (giao dịch). |
exchangeRate |
KHÔNG DÙNG NỮA: Tỷ giá hối đoái được dùng để quy đổi số tiền trình bày sang số tiền thanh toán (hoá đơn). Giá trị này được tính bằng micro điểm cơ sở (1 điểm cơ sở = 0,0001 = 0,01%). Tức là để biết 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 được dùng để quy đổi số tiền trình bày sang số tiền thanh toán (hoá đơn), được biểu thị bằng điểm cơ sở nano. Giá trị này tính bằng nano điểm cơ sở (1 điểm cơ sở = 0,0001 = 0,01%). Tức là để biết tỷ giá hối đoái, hãy chia trường này cho 10^13. Cả trường này và exchangeRate đều sẽ được điền sẵn. Đây 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 sau này, exchangeRate sẽ bị xoá để thay thế bằng nanoExchangeRate. |