Method: remittanceStatementDetails

Menampilkan informasi detail transaksi tentang laporan mutasi transfer dana.

API ini adalah API yang telah dipaginasi. Jumlah peristiwa transaksi per halaman dapat ditentukan dengan numberOfEvents. Jika tidak ditentukan, maksimum 1.000 peristiwa akan ditampilkan per halaman. Setiap permintaan ke API ini akan menampilkan nextEventOffset yang mengarah ke peristiwa transaksi berikutnya dalam pernyataan, serta totalEvents yang menentukan jumlah total transaksi dalam pernyataan. Jika halaman yang diambil saat ini berisi transaksi terakhir laporan, nextEventOffset tidak akan ada dalam respons.

Nilai statementId adalah requestId dari remittanceStatementNotificationRequest

Jika endpoint mengalami error saat memproses permintaan, respons dari endpoint ini akan berjenis ErrorResponse.

Respons untuk kueri ini boleh kosong jika metode ini tidak menampilkan HTTP 200. Isi respons kosong dalam situasi saat ErrorResponse dengan deskripsi yang jelas dapat digunakan untuk membantu penyerang memahami ID akun integrator pembayaran dari integrator lain. Dalam situasi ini, saat kunci penandatanganan tidak cocok, ID integrator pembayaran tidak ditemukan, atau kunci enkripsi tidak diketahui, metode ini akan menampilkan HTTP 404 dengan isi kosong. Jika tanda tangan permintaan dapat diverifikasi, informasi tambahan terkait error tersebut akan dikirimkan dalam isi respons.

Contoh permintaan terlihat seperti:


{
  "requestHeader": {
    "protocolVersion": {
      "major": 1,
      "minor": 0,
      "revision": 0
    },
    "requestId": "statement_detail_request_139932019",
    "requestTimestamp": "1502551332087"
  },
  "paymentIntegratorAccountId": "InvisiCashUSA_USD",
  "statementId": "0123434-statement-abc",
  "numberOfEvents": 4
}

Contoh respons akan terlihat seperti ini:


{
  "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"
    }
  ]
}

Permintaan HTTP

POST https://vgw.googleapis.com/secure-serving/gsp/v1/remittanceStatementDetails/:PIAID

Isi permintaan

Isi permintaan memuat data dengan struktur berikut:

Representasi JSON
{
  "requestHeader": {
    object (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "statementId": string,
  "eventOffset": integer,
  "numberOfEvents": integer
}
Kolom
requestHeader

object (RequestHeader)

WAJIB: Header umum untuk semua permintaan.

paymentIntegratorAccountId

string

WAJIB: Ini adalah ID akun integrator pembayaran yang mengidentifikasi batasan kontraktual terkait laporan ini.

statementId

string

WAJIB: ID permintaan notifikasi laporan.

eventOffset

integer

OPSIONAL: Tampilkan peristiwa yang dimulai dengan offset ini. Nilai ini harus disetel ke nextEventOffset jika ada yang ditampilkan atau tidak ditentukan jika ini adalah permintaan pertama. Jika eventOffset adalah nol, peristiwa akan ditampilkan dimulai dengan peristiwa pertama. Jika ini adalah dua, peristiwa akan ditampilkan dimulai dengan peristiwa ketiga. Jika tidak ditentukan, eventOffset akan diasumsikan sebagai nol.

numberOfEvents

integer

OPSIONAL: Jumlah peristiwa yang akan ditampilkan per halaman. Jika tidak ditentukan atau lebih besar dari 1.000, nilainya adalah 1.000.

Isi respons

Objek respons untuk metode detail laporan transfer dana.

Jika berhasil, isi respons memuat data dengan struktur berikut:

Representasi JSON
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "remittanceStatementSummary": {
    object (RemittanceStatementSummary)
  },
  "eventOffset": integer,
  "nextEventOffset": integer,
  "totalEvents": integer,
  "totalWithholdingTaxes": string,
  "captureEvents": [
    {
      object (Event)
    }
  ],
  "refundEvents": [
    {
      object (Event)
    }
  ],
  "reverseRefundEvents": [
    {
      object (Event)
    }
  ],
  "chargebackEvents": [
    {
      object (Event)
    }
  ],
  "reverseChargebackEvents": [
    {
      object (Event)
    }
  ],
  "adjustmentEvents": [
    {
      object (Event)
    }
  ]
}
Kolom
responseHeader

object (ResponseHeader)

WAJIB: Header umum untuk semua respons.

remittanceStatementSummary

object (RemittanceStatementSummary)

WAJIB: Ringkasan laporan mutasi transfer dana ini.

eventOffset

integer

WAJIB: Pengimbangan peristiwa untuk respons ini.

nextEventOffset

integer

OPSIONAL: Offset peristiwa berikutnya yang akan ditampilkan. Jika tidak ditetapkan, tidak ada lagi peristiwa yang akan diambil untuk pernyataan ini.

totalEvents

integer

WAJIB: Jumlah total peristiwa dalam laporan ini.

totalWithholdingTaxes

string (Int64Value format)

WAJIB: Jumlah semua pajak yang dipotong/dipungut untuk laporan ini.

Nilai ini dalam mikro.

captureEvents[]

object (Event)

WAJIB: Kumpulan peristiwa pengambilan gambar.

refundEvents[]

object (Event)

WAJIB: Rangkaian peristiwa pengembalian dana.

reverseRefundEvents[]

object (Event)

OPSIONAL: Rangkaian peristiwa pengembalian dana balik.

chargebackEvents[]

object (Event)

OPSIONAL: Kumpulan peristiwa penagihan balik.

reverseChargebackEvents[]

object (Event)

OPSIONAL: Kumpulan peristiwa penagihan balik balik.

adjustmentEvents[]

object (Event)

OPSIONAL: Kumpulan peristiwa penyesuaian. Peristiwa penyesuaian dapat ditambahkan sesuai kebijaksanaan Google untuk merekonsiliasi perbedaan penagihan, misalnya jika biaya kurang dihitung untuk rangkaian transaksi sebelumnya, penyesuaian dapat digunakan untuk menjadikan integrator sebagai keseluruhan.

RemittanceStatementSummary

Objek ringkasan tentang laporan mutasi transfer dana.

Representasi JSON
{
  "statementDate": string,
  "billingPeriod": {
    object (BillingPeriod)
  },
  "dateDue": string,
  "currencyCode": string,
  "totalDueByIntegrator": string,
  "remittanceInstructions": {
    object (RemittanceInstructions)
  }
}
Kolom
statementDate

string (int64 format)

WAJIB: Tanggal (di Amerika/Los Angeles) pernyataan ini dibuat.

billingPeriod

object (BillingPeriod)

WAJIB: Periode penagihan yang dicakup dalam laporan ini.

dateDue

string (int64 format)

OPSIONAL: Tanggal jatuh tempo transfer dana. Ini direpresentasikan sebagai milidetik dari epoch. Ini adalah tanggal (sehingga akan selalu dimulai pada milidetik pertama hari dalam zona waktu penagihan).

Ini ditetapkan selama totalDueByIntegrator lebih besar dari 0.

currencyCode

string

WAJIB: Kode mata uang 3 huruf ISO 4217.

totalDueByIntegrator

string (Int64Value format)

WAJIB: Nilai ini dalam mikro dalam mata uang currencyCode. Nilai ini selalu positif.

remittanceInstructions

object (RemittanceInstructions)

WAJIB: Detail tentang cara melakukan pembayaran

BillingPeriod

Periode penagihan laporan ini.

Representasi JSON
{
  "startDate": string,
  "endDate": string
}
Kolom
startDate

string (int64 format)

WAJIB: Tanggal mulai periode penagihan. Ini direpresentasikan sebagai milidetik dari epoch. Ini adalah tanggal (sehingga akan selalu dimulai pada milidetik pertama hari dalam zona waktu penagihan).

Ini adalah milidetik pertama pada hari periode penagihan, 00:00:00.000

endDate

string (int64 format)

WAJIB: Tanggal akhir periode penagihan. Ini direpresentasikan sebagai milidetik dari epoch.

Ini adalah milidetik terakhir dari hari terakhir periode penagihan, 23:59:59.999

RemittanceInstructions

Struktur yang menyimpan informasi tentang cara membayar notifikasi transfer dana ini.

Representasi JSON
{
  "memoLineId": string
}
Kolom
memoLineId

string

WAJIB: ID yang wajib dicantumkan pada baris memo untuk pembayaran identifikasi transfer dana.

Acara

Struktur yang mewakili satu peristiwa yang termasuk dalam laporan mutasi transfer dana.

Representasi JSON
{
  "eventRequestId": string,
  "paymentIntegratorEventId": string,
  "eventCharge": string,
  "eventFee": string,
  "presentmentChargeAmount": string,
  "presentmentCurrencyCode": string,
  "exchangeRate": string,
  "nanoExchangeRate": string
}
Kolom
eventRequestId

string

WAJIB: Untuk peristiwa pengambilan atau pengembalian dana, ini adalah requestId yang dikirim Google bersama permintaan. Untuk peristiwa pengembalian dana balik, penagihan balik, dan penagihan balik, ini adalah requestId yang dikirim Integrator Pembayaran bersama dengan notifikasi peristiwa tersebut. Untuk penyesuaian, ID ini akan menjadi ID unik yang ditetapkan oleh Google ke peristiwa penyesuaian.

paymentIntegratorEventId

string

WAJIB: ID integrator pembayaran yang ditampilkan untuk peristiwa ini. Untuk rekaman, ini adalah paymentIntegratorTransactionId dari respons terhadap panggilan capture, untuk pengembalian dana, ini adalah paymentIntegratorRefundId dari respons terhadap panggilan refund.

Panjang kolom ini bervariasi, sebagai integrator ID apa pun yang Anda berikan untuk acara ini akan ditampilkan di sini. Jika nilai tidak diberikan oleh integrator untuk peristiwa yang sesuai, kolom ini akan berisi nilai yang sama dengan kolom eventRequestId.

Untuk pengembalian dana balik, penagihan balik, dan peristiwa penagihan balik, requestId ini akan dikirim oleh Integrator Pembayaran bersama dengan notifikasi peristiwa tersebut.

Panjang dan format kolom ini bergantung pada kolom sumber untuk setiap ID. Lihat dokumentasi untuk setiap kolom sumber untuk detail tentang persyaratan panjang dan himpunan karakter. Secara khusus, perhatikan bahwa kolom ini terkadang dapat berisi ID yang dibuat Google yang mungkin memiliki persyaratan panjang maksimum yang berbeda dengan ID yang dibuat integrator.

eventCharge

string (Int64Value format)

WAJIB: Dalam kode mata uang yang ditentukan oleh laporan. Jika nilai ini negatif, ini menunjukkan perpindahan nilai moneter dari Google ke integrator pembayaran. Jika positif, ini adalah uang dari integrator pembayaran karena Google.

Misalnya, transaksi tangkapan akan selalu positif, dan transaksi pengembalian dana akan selalu negatif. Peristiwa pengembalian dana balik dan penagihan balik akan selalu positif. Peristiwa penagihan balik akan selalu negatif.

Nilai ini dalam mikro.

eventFee

string (Int64Value format)

WAJIB: Dalam kode mata uang yang ditentukan oleh laporan. Jika nilai ini negatif, ini menunjukkan perpindahan nilai moneter dari Google ke integrator pembayaran. Jika positif, ini adalah uang dari integrator pembayaran karena Google.

Misalnya, jika perjanjian menyatakan bahwa Google akan membayar 1% dari transactionCharge kepada integrator pembayaran, dan akan mengembalikan 1% tersebut setelah pengembalian dana transaksi, maka biaya penangkapannya akan negatif dan setelah pengembalian dana, biaya pengembalian dana akan menjadi positif.

Nilai ini dalam mikro.

presentmentChargeAmount

string (Int64Value format)

OPSIONAL: Jumlah transaksi dalam mata uang saat ini (disebut juga transaksi) sebelum nilai tukar mata uang asing. Kolom ini mengikuti konvensi tanda yang sama dengan kolom eventCharge.

Nilai ini dalam mikro.

presentmentCurrencyCode

string

OPSIONAL: Kode mata uang 3 huruf ISO 4217 yang menyatakan mata uang saat ini (transaksi).

exchangeRate

string (Int64Value format)

OPSIONAL: Kurs yang digunakan untuk mengonversi jumlah penyajian menjadi jumlah penyelesaian (invoice).

Nilai ini dalam poin dasar mikro (1 poin basis = 0,0001 = 0,01%). Artinya, untuk mendapatkan nilai tukar, bagi kolom ini dengan 10^10.

nanoExchangeRate

string (Int64Value format)

OPSIONAL: Kurs yang digunakan untuk mengonversi jumlah saat ini menjadi jumlah penyelesaian (invoice), yang dinyatakan dalam poin basis nano.

Nilai ini dalam nano basis poin (1 poin basis = 0,0001 = 0,01%). Artinya, untuk mendapatkan nilai tukar, bagi kolom ini dengan 10^13.

Kolom ini dan exchangeRate akan diisi. Nilai tukar yang setara dan dinyatakan dengan presisi yang berbeda. Pada versi mendatang, exchangeRate akan dihapus dan digantikan oleh nanoExchangeRate.