Method: remittanceStatementDetails

Restituisce informazioni dettagliate sulla transazione relative a un prospetto dei versamenti.

Si tratta di un'API paginata. Il numero di eventi di transazione per pagina può essere specificato con numberOfEvents. Se non specificato, verranno restituiti al massimo 1000 eventi per pagina. Ogni richiesta a questa API restituirà un nextEventOffset che rimanda all'evento di transazione successivo nell'estratto conto, nonché 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 è requestId di remittanceStatementNotificationRequest

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

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

Un esempio di richiesta è il seguente:


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

Un esempio di risposta è il seguente:


{
  "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)

OBBLIGATORIO: intestazione comune per tutte le richieste.

paymentIntegratorAccountId

string

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

statementId

string

OBBLIGATORIO: ID richiesta della notifica dell'estratto conto.

eventOffset

integer

FACOLTATIVO: restituisce gli eventi a partire da questo offset. Questo valore deve essere impostato su nextEventOffset se ne è stato restituito uno o lasciato non specificato se si tratta della prima richiesta. Se eventOffset è zero, gli eventi verranno restituiti a partire dal primo. Se questo valore è 2, gli eventi verranno restituiti a partire dal terzo evento. Se non specificato, eventOffset verrà considerato pari a zero.

numberOfEvents

integer

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

Corpo della risposta

Oggetto di risposta per il metodo dei dettagli dell'estratto conto.

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)

OBBLIGATORIO: intestazione comune per tutte le risposte.

remittanceStatementSummary

object (RemittanceStatementSummary)

OBBLIGATORIO: riepilogo di questo prospetto dei versamenti.

eventOffset

integer

OBBLIGATORIO: l'offset 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 questo estratto.

totalEvents

integer

OBBLIGATORIO: numero totale di eventi in questa dichiarazione.

totalWithholdingTaxes

string (Int64Value format)

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

Questo valore è espresso in micros.

captureEvents[]

object (Event)

OBBLIGATORIO: 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 annullamento dello storno.

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 commissioni sono state calcolate in modo errato per un insieme di transazioni precedenti, un aggiustamento può essere utilizzato per compensare l'integratore.

RemittanceStatementSummary

Oggetto di riepilogo relativo a un estratto conto dei versamenti.

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

string (int64 format)

OBBLIGATORIO: data (in America/Los Angeles) di creazione di questa dichiarazione.

billingPeriod

object (BillingPeriod)

OBBLIGATORIO: il periodo di fatturazione coperto da questo estratto.

dateDue

string (int64 format)

(FACOLTATIVO): la data di scadenza del versamento. Questo valore è rappresentato come millisecondi dall'epoca. È una data (e quindi inizierà sempre al primo millisecondo del giorno nel fuso orario di fatturazione).

Questo valore viene impostato finché totalDueByIntegrator è maggiore di 0.

currencyCode

string

OBBLIGATORIO: codice valuta ISO 4217 di tre lettere.

totalDueByIntegrator

string (Int64Value format)

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

remittanceInstructions

object (RemittanceInstructions)

OBBLIGATORIO: 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)

OBBLIGATORIO: la data di inizio del periodo di fatturazione. Questo valore è rappresentato come millisecondi dall'epoca. È una data (e quindi 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)

OBBLIGATORIO: la data di fine del periodo di fatturazione. Questo valore è rappresentato come millisecondi dall'epoca.

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

RemittanceInstructions

Struttura che contiene informazioni su come pagare questa notifica di versamento.

Rappresentazione JSON
{
  "memoLineId": string
}
Campi
memoLineId

string

OBBLIGATORIO: identificatore obbligatorio da inserire nella riga della nota per il pagamento per l'identificazione del versamento.

Evento

Struttura che rappresenta un singolo evento incluso in un estratto conto.

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

string

OBBLIGATORIO: per gli eventi di acquisizione o rimborso, questo sarà il requestId che Google invia con la richiesta. Per gli eventi di rimborso inverso, storno di addebito e annullamento dello storno, questo sarà il requestId che l'integratore di pagamenti invia con la notifica dell'evento. Per gli aggiustamenti, si tratta di un ID univoco assegnato da Google all'evento di aggiustamento.

paymentIntegratorEventId

string

OBBLIGATORIO: ID restituito dall'integratore di pagamenti per questo evento. Per un addebito, questo è il paymentIntegratorTransactionId della risposta a una chiamata capture; per un rimborso, questo è il paymentIntegratorRefundId della risposta a una chiamata refund.

Questo campo ha una lunghezza variabile, in quanto l'ID fornito per questo evento dall'integratore verrà visualizzato 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 annullamento dello storno, questo sarà il requestId che l'integratore di pagamenti ha inviato con la notifica dell'evento.

La lunghezza e il formato di questo campo dipendono dal campo di origine di ogni ID. Per informazioni dettagliate sui requisiti di lunghezza e set di caratteri, consulta la documentazione di ciascuno dei campi di origine. 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)

OBBLIGATORIO: nel codice valuta definito dall'estratto conto. Se questo valore è negativo, rappresenta il valore monetario trasferito da Google all'integratore di pagamenti. Se è positivo, si tratta di denaro dovuto a Google dall'integratore di pagamenti.

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

Questo valore è espresso in micros.

eventFee

string (Int64Value format)

OBBLIGATORIO: nel codice valuta definito dall'estratto conto. Se questo valore è negativo, rappresenta il valore monetario trasferito da Google all'integratore di pagamenti. Se è positivo, si tratta di denaro dovuto a Google dall'integratore di pagamenti.

Ad esempio, se un contratto prevede che Google paghi l'1% di transactionCharge all'integratore di pagamenti e che questo 1% venga stornato 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 è espresso in micros.

presentmentChargeAmount

string (Int64Value format)

FACOLTATIVO: importo della transazione nella valuta di presentazione (ovvero della transazione) prima del cambio valuta. Questo campo segue la stessa convenzione di segno del campo eventCharge.

Questo valore è espresso in micros.

presentmentCurrencyCode

string

FACOLTATIVO: codice valuta ISO 4217 di tre lettere che indica la valuta di presentazione (transazione).

exchangeRate
(deprecated)

string (Int64Value format)

DEPRECATO: il tasso di cambio utilizzato per convertire l'importo di presentazione in importo di liquidazione (fattura).

Questo valore è espresso in micro punti base (1 punto base = 0,0001 = 0,01%). ovvero, 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 in importo di liquidazione (fattura), espresso in punti base nano.

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

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