Method: remittanceStatementDetails

Restituisce informazioni dettagliate sulla transazione relative a un estratto conto.

Questa è un'API impaginata. Il numero di eventi di transazione per pagina può essere specificato con numberOfEvents. Se questo valore non è specificato, verrà restituito il numero massimo di 1000 eventi per pagina. Ogni richiesta a questa API restituirà un nextEventOffset che rimanda all'evento di transazione successivo nell'istruzione, nonché un totalEvents che specifica il numero totale di transazioni nell'estratto conto. Se la pagina recuperata corrente contiene le ultime transazioni dell'estratto conto, nextEventOffset non sarà presente nella risposta.

Il valore statementId è il valore requestId di remittanceStatementNotificationRequest

Se l'endpoint rileva un errore durante l'elaborazione della richiesta, la risposta da questo endpoint sarà di tipo ErrorResponse.

Le risposte a questa query potrebbero essere vuote se questo metodo non restituisce un HTTP 200. Il corpo della risposta è vuoto nelle situazioni in cui è possibile utilizzare un ErrorResponse con una descrizione chiara per aiutare un utente malintenzionato a comprendere l'identificatore dell'account dell'integratore dei pagamenti di altri integratori. In queste situazioni, in cui la chiave di firma non corrisponde, l'identificatore dell'integratore dei pagamenti non è stato trovato o la chiave di crittografia era sconosciuta, questo metodo restituirà un errore HTTP 404 con un corpo vuoto. Se è possibile verificare la firma della richiesta, nel corpo della risposta verranno restituite ulteriori informazioni sull'errore.

Ecco un esempio di richiesta:


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

Ecco un esempio di risposta:


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

Richiesta HTTP

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

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

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

object (RequestHeader)

REQUIRED: intestazione comune per tutte le richieste.

paymentIntegratorAccountId

string

REQUIRED: si tratta dell'identificatore dell'account dell'integratore pagamenti che identifica i vincoli contrattuali relativi a questa dichiarazione.

statementId

string

OBBLIGATORIO: richiesta dell'ID della notifica relativa all'estratto conto.

eventOffset

integer

FACOLTATIVO: restituisci gli eventi che iniziano da questo offset. Deve essere impostato su nextEventOffset se ne viene restituito uno restituito o non viene specificato se si tratta della prima richiesta. Se eventOffset è zero, gli eventi verranno restituiti a partire dal primo evento. Se si tratta di due, gli eventi verranno restituiti a partire dal terzo evento. Se non specificato, si presume che il valore eventOffset sia zero.

numberOfEvents

integer

FACOLTATIVO: il numero di eventi da mostrare per pagina. Se il valore non è specificato o è superiore a 1000, il valore sarà 1000.

Corpo della risposta

Oggetto di risposta per il metodo di dettaglio della dichiarazione di versamento.

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione 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)
    }
  ]
}
Campi
responseHeader

object (ResponseHeader)

REQUIRED: intestazione comune per tutte le risposte.

remittanceStatementSummary

object (RemittanceStatementSummary)

REQUIRED: riepilogo di questa distinta di versamento.

eventOffset

integer

REQUIRED: la differenza dell'evento di questa risposta.

nextEventOffset

integer

FACOLTATIVO: l'offset dell'evento successivo da restituire. Se non specificato, non ci sono altri eventi da recuperare per questa istruzione.

totalEvents

integer

REQUIRED: numero totale di eventi presenti in questa istruzione.

totalWithholdingTaxes

string (Int64Value format)

REQUIRED: la somma di tutte le imposte trattenute per questa dichiarazione.

Questo valore è in micros.

captureEvents[]

object (Event)

REQUIRED: insieme di eventi di acquisizione.

refundEvents[]

object (Event)

OBBLIGATORIO: insieme di eventi di rimborso.

reverseRefundEvents[]

object (Event)

FACOLTATIVO: insieme di eventi di rimborso inverso.

chargebackEvents[]

object (Event)

FACOLTATIVO: insieme di eventi di storno di addebito.

reverseChargebackEvents[]

object (Event)

FACOLTATIVO: insieme di eventi di storno di addebito.

adjustmentEvents[]

object (Event)

FACOLTATIVO: insieme di eventi di aggiustamento. Gli eventi di aggiustamento possono essere aggiunti a discrezione di Google per riconciliare le discrepanze di fatturazione. Ad esempio, se le tariffe sono state sottocalcolate per una serie di transazioni precedenti, è possibile utilizzare un aggiustamento per rendere intero l'integratore.

RemittanceStatementSummary

Oggetto di riepilogo relativo a una dichiarazione di versamento.

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

string (int64 format)

REQUIRED: data (in America/Los Angeles) di creazione della dichiarazione.

billingPeriod

object (BillingPeriod)

OBBLIGATORIO: il periodo di fatturazione coperto da questo estratto conto.

dateDue

string (int64 format)

FACOLTATIVO: la data di scadenza del versamento. rappresentato in millisecondi da epoca. Si tratta di una data (e pertanto inizierà sempre al primo millisecondo del giorno nel fuso orario di fatturazione).

Questo valore viene impostato purché il valore totalDueByIntegrator sia maggiore di 0.

currencyCode

string

OBBLIGATORIO: codice valuta ISO 4217 di tre lettere.

totalDueByIntegrator

string (Int64Value format)

REQUIRED: questo valore è espresso in micro nella valuta currencyCode. Questo valore è sempre positivo.

remittanceInstructions

object (RemittanceInstructions)

REQUIRED: dettagli su come effettuare il pagamento

BillingPeriod

Periodo di fatturazione di questo estratto conto.

Rappresentazione JSON
{
  "startDate": string,
  "endDate": string
}
Campi
startDate

string (int64 format)

REQUIRED: la data di inizio del periodo di fatturazione. rappresentato in millisecondi da epoca. Si tratta di una data (e pertanto inizierà sempre al primo millisecondo del giorno nel fuso orario di fatturazione).

Questo è il primo millisecondo del giorno del periodo di fatturazione, 00:00:00.000

endDate

string (int64 format)

REQUIRED: la data di fine del periodo di fatturazione. rappresentato in millisecondi da epoca.

Ultimo millisecondo dell'ultimo giorno del periodo di fatturazione, 23:59:59.999

RemittanceInstructions

Strutturare le informazioni in conservazione su come pagare questa notifica di versamento.

Rappresentazione JSON
{
  "memoLineId": string
}
Campi
memoLineId

string

REQUIRED: identificatore obbligatorio da inserire nella riga della nota per il pagamento ai fini dell'identificazione del versamento.

Evento

Struttura che rappresenta un singolo evento incluso in una distinta di versamento.

Rappresentazione JSON
{
  "eventRequestId": string,
  "paymentIntegratorEventId": string,
  "eventCharge": string,
  "eventFee": string,
  "presentmentChargeAmount": string,
  "presentmentCurrencyCode": string,
  "exchangeRate": string,
  "nanoExchangeRate": string
}
Campi
eventRequestId

string

REQUIRED: per gli eventi di acquisizione o rimborso, questi saranno i requestId che Google invia con la richiesta. Per gli eventi di rimborso inverso, storno di addebito e storno di addebito, si tratta del requestId che l'integratore dei pagamenti invia con la notifica dell'evento in questione. Per gli aggiustamenti, si tratta di un ID univoco assegnato da Google all'evento di aggiustamento.

paymentIntegratorEventId

string

REQUIRED: ID che l'integratore dei pagamenti ha restituito per questo evento. Per un'acquisizione, questo è il paymentIntegratorTransactionId della risposta a una chiamata capture, per un rimborso è il paymentIntegratorRefundId della risposta a una chiamata refund.

Questo campo ha una lunghezza variabile, come integratore e qualsiasi ID fornito per questo evento verrà riportato qui. Se l'integratore non ha fornito un valore per l'evento corrispondente, questo campo conterrà lo stesso valore del campo eventRequestId.

Per gli eventi di rimborso inverso, storno di addebito e storno di addebito, questo sarà il valore di requestId inviato dall'integratore dei pagamenti con la notifica dell'evento.

La lunghezza e il formato di questo campo dipendono dal campo di origine di ogni ID. Fai riferimento alla documentazione di ogni campo di origine per informazioni dettagliate sui requisiti di lunghezza e set di caratteri. In particolare, tieni presente che questo campo a volte può contenere ID generati da Google che potrebbero avere requisiti di lunghezza massima diversi rispetto agli ID generati dall'integratore.

eventCharge

string (Int64Value format)

REQUIRED: nel codice valuta definito nell'estratto conto. Se questo valore è negativo, si tratta del valore monetario che passa da Google all'integratore dei pagamenti. Se questo è positivo, si tratta di denaro dall'integratore dei pagamenti dovuto a Google.

Ad esempio, le transazioni di acquisizione sono sempre positive, mentre le transazioni di rimborso sono sempre negative. Gli eventi di storno di rimborso e storno di addebito saranno sempre positivi. Gli eventi di storno di addebito saranno sempre negativi.

Questo valore è in micros.

eventFee

string (Int64Value format)

REQUIRED: nel codice valuta definito nell'estratto conto. Se questo valore è negativo, si tratta del valore monetario che passa da Google all'integratore dei pagamenti. Se questo è positivo, si tratta di denaro dall'integratore dei pagamenti dovuto a Google.

Ad esempio, se un contratto prevede che Google pagherà l'1% dell'importo transactionCharge all'integratore dei pagamenti e lo annulla al momento del rimborso della transazione, la commissione di acquisizione sarà negativa e al momento del rimborso la commissione di rimborso sarà positiva.

Questo valore è in micros.

presentmentChargeAmount

string (Int64Value format)

FACOLTATIVO: importo della transazione nella valuta attuale (ovvero la transazione) precedente al cambio valuta. Questo campo segue la stessa convenzione di firma del campo eventCharge.

Questo valore è in micros.

presentmentCurrencyCode

string

FACOLTATIVO: codice valuta ISO 4217 di tre lettere che definisce la valuta (transazione) attuale.

exchangeRate

string (Int64Value format)

FACOLTATIVO: il tasso di cambio utilizzato per convertire l'importo di presentazione nell'importo del pagamento (fattura).

Questo valore è espresso in micro punti base (1 punto base = 0,0001 = 0,01%). Vale a dire, per ottenere il tasso di cambio, dividi questo campo per 10^10.

nanoExchangeRate

string (Int64Value format)

FACOLTATIVO: il tasso di cambio utilizzato per convertire l'importo di presentazione nell'importo di liquidazione (fattura), espresso in nano punti base.

Questo valore è espresso in nano punti base (1 punto base = 0,0001 = 0,01%). Vale a dire, per ottenere il tasso di cambio, dividi questo campo per 10^13.

Verranno compilati sia questo campo sia il tasso di cambio. Si tratta di tassi di cambio equivalenti espressi con precisione diversa. Nelle versioni future, exchangeRate verrà rimosso e sostituito con nanoExchangeRate.