- Richiesta HTTP
- Corpo della richiesta
- Corpo della risposta
- PagamentiSearchCriteri
- Criteri Arn
- GoogleTransactionReferenceNumberCriteria
- AcquisitionRequestCriteria
- RequestOriginator
- Recupera la contestazione della richiesta di segnalazione dei risultati
- ReportAcquisto
- Account cliente
- Ordine
- Indirizzo
- Articolo
- Tasse
- Pagamento
- Rimborso
- PaymentCardDetails
- AuthRisultato
Generare un report che fornisce informazioni per agevolare una conversazione con l'assistenza clienti relativa a una potenziale contestazione di un pagamento.
Se si verifica 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 nel caso in cui un
con una descrizione chiara possa essere utilizzato per aiutare un utente malintenzionato a comprendere l'identificatore di account integratore di pagamento di altri integratori. In questi casi, in cui la chiave di firma non corrisponde, non è stato trovato l'identificatore dell'integratore dei pagamenti o la chiave di crittografia era sconosciuta, questo metodo restituirà un errore HTTP 404 con un corpo vuoto. Se è stato possibile verificare la firma della richiesta, nel corpo della risposta verranno restituite ulteriori informazioni sull'errore.ErrorResponse
Una richiesta di esempio ha il seguente aspetto:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "HsKv5pvtQKTtz7rdcw1YqE",
"requestTimestamp": "1519996751331"
},
"paymentIntegratorAccountId": "InvisiCashUSA",
"paymentLookupCriteria": {
"googleTransactionReferenceNumberCriteria": {
"googleTransactionReferenceNumber": "714545417102363157911822",
"authorizationCode": "111111"
}
},
"existingGoogleClaimId": "138431383281",
"requestOriginator": {
"organizationId": "ISSUER_256",
"organizationDescription": "Community Bank of Some City",
"agentId": "982749"
}
}
Un esempio di risposta è:
{
"responseHeader": {
"responseTimestamp": "1519996752221"
},
"result": "SUCCESS",
"googleClaimId": "138431383281",
"report": {
"customerAccount": {
"customerEmail": "example@gmail.com",
"customerName" : "Example Customer"
},
"order": {
"timestamp": "1517992525972",
"orderId": "SOP.8976-1234-1234-123456..99",
"currencyCode": "USD",
"subTotalAmount": "206990000",
"totalAmount": "212990000",
"shippingAddress": {
"name": "Example Customer",
"addressLine": ["123 Main St"],
"localityName": "Springfield",
"administrativeAreaName": "CO",
"postalCodeNumber": "80309",
"countryCode": "US"
},
"taxes": [
{
"description": "Colorado Sales Tax",
"amount": "6000000"
}
],
"items": [
{
"description": "Super cool gizmo",
"merchant": "HTC",
"googleProductName": "Google Store",
"quantity": "2",
"totalPrice": "198000000"
},
{
"description": "Gizmo charger",
"merchant": "HTC",
"googleProductName": "Google Store",
"quantity": "1",
"totalPrice": "8990000"
}
]
},
"payment": {
"billingAddress" : {
"name": "Example Customer",
"addressLine": ["123 Main St"],
"localityName": "Springfield",
"administrativeAreaName": "CO",
"postalCodeNumber": "80309",
"countryCode": "US"
},
"amount": "100000000",
"refunds": [
{
"amount": "9250000",
"initiatedTimestamp": "1518811245384"
}
],
"cardDetails": {
"authResult": "APPROVED"
}
}
}
}
Richiesta HTTP
POST https://vgw.googleapis.com/secure-serving/gsp/v1/getDisputeInquiryReport/:PIAID
Corpo della richiesta
Il corpo della richiesta contiene dati con la seguente struttura:
Rappresentazione JSON |
---|
{ "requestHeader": { object ( |
Campi | |
---|---|
requestHeader |
REQUIRED: intestazione comune per tutte le richieste. |
paymentIntegratorAccountId |
REQUIRED: l'identificatore dell'account integrato del pagamento che identifica il chiamante e i vincoli contrattuali associati a questa interazione. |
paymentLookupCriteria |
REQUIRED: i criteri che indicano il pagamento da ricercare per la richiesta di informazioni. |
existingGoogleClaimId |
OPTIONAL: una stringa generata da Google restituita da una chiamata precedente a Se non è presente, verrà generato un nuovo ID rivendicazione. Il chiamante può fornire un L'ID rivendicazione che viene inserito qui o generato verrà restituito nel campo Non è valido fornire un |
requestOriginator |
REQUIRED: informazioni sull'organizzazione o sul sottogruppo dell'organizzazione da cui ha avuto origine questa richiesta. |
Corpo della risposta
Payload della risposta per il metodo getDisputeInquiryReport
.
In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:
Rappresentazione JSON |
---|
{ "responseHeader": { object ( |
Campi | |
---|---|
responseHeader |
REQUIRED: intestazione comune per tutte le risposte. |
result |
REQUIRED: risultato della chiamata. |
googleClaimId |
OPTIONAL: una stringa generata da Google che identifica in modo univoco questa contestazione del cliente. (presenta se e solo se Se nella richiesta è stato completato |
report |
FACOLTATIVO: i dettagli relativi alla contestazione del pagamento identificato nella richiesta. (presenta se e solo se |
Criteri di ricerca dei pagamenti
Contenitore per criteri che possono cercare in modo univoco un pagamento. È necessario compilare un (e un solo) campo membro.
Rappresentazione JSON |
---|
{ // Union field |
Campi | |
---|---|
Campo unione
|
|
arnCriteria |
OPTIONAL: ricerca basata sull'Acquirer Reference Number (ARN). |
googleTransactionReferenceNumberCriteria |
OPTIONAL: ricerca basata sul numero di riferimento della transazione Google. |
captureRequestCriteria |
FACOLTATIVO: ricerca basata sull'ID richiesta di acquisizione. |
Criteri Arn
Criteri di ricerca dei pagamenti basati sul numero di riferimento Acquirer Reference (ARN).
Rappresentazione JSON |
---|
{ "acquirerReferenceNumber": string, "authorizationCode": string } |
Campi | |
---|---|
acquirerReferenceNumber |
REQUIRED: il numero di riferimento dell'Acquirer (ARN) che identifica in modo univoco il pagamento. Deve avere una lunghezza di 23 cifre. |
authorizationCode |
REQUIRED: il codice di autorizzazione per la transazione. |
Criteri di numero di transazione Google
Criteri di ricerca dei pagamenti basati sul numero di riferimento per la transazione generato da Google.
Rappresentazione JSON |
---|
{ "googleTransactionReferenceNumber": string, "authorizationCode": string } |
Campi | |
---|---|
googleTransactionReferenceNumber |
REQUIRED: il numero di riferimento della transazione generato da Google che identifica in modo univoco il pagamento. |
authorizationCode |
REQUIRED: il codice di autorizzazione per la transazione. |
Criteri di richiesta di acquisizione
Criteri di ricerca dei pagamenti basati sulla richiesta di acquisizione originale.
Rappresentazione JSON |
---|
{ "captureRequestId": string } |
Campi | |
---|---|
captureRequestId |
REQUIRED: un identificatore univoco per questa transazione. Questo è l' |
OriginOriginator
Informazioni sull'organizzazione o sul sottogruppo dell'organizzazione e, facoltativamente, sul dipendente da cui ha avuto origine questa richiesta. In questo modo, Google può identificare i problemi o gli abusi e implementare controlli a un livello più dettagliato rispetto a paymentIntegratorAccountId
. Questo è particolarmente importante quando il chiamante è un fornitore di servizi intermediario che raccoglie le richieste da più client esterni.
Rappresentazione JSON |
---|
{ "organizationId": string, "organizationDescription": string, "agentId": string } |
Campi | |
---|---|
organizationId |
REQUIRED: un identificatore dell'azienda, dell'organizzazione o del gruppo organizzativo da cui ha avuto origine questa richiesta. Deve essere univoco all'interno di questo elemento |
organizationDescription |
REQUIRED: un nome leggibile o una descrizione dell'organizzazione che può essere utilizzato per facilitare le comunicazioni tra i dipendenti di Google e l'integratore in merito a tale organizzazione. |
agentId |
FACOLTATIVO: un identificatore univoco per l'agente specifico (dipendente) dell'organizzazione identificato da |
GetDisputeInquiryReportResultsCode
Il risultato della chiamata al metodo getDisputeInquiryReport
.
Enum | |
---|---|
UNKNOWN_RESULT |
Non impostare questo valore predefinito. |
SUCCESS |
Il pagamento è stato trovato e viene fornito un report. |
PAYMENT_NOT_FOUND |
Il pagamento richiesto non è stato trovato. |
PAYMENT_TOO_OLD |
Il pagamento richiesto è stato trovato, ma non è stato fornito alcun report a causa dell'età del pagamento. |
ORDER_CANNOT_BE_RETURNED |
Il pagamento richiesto appartiene a un ordine esistente, ma non può essere restituito. I motivi includono i casi in cui l'ordine è stato rimosso su richiesta del suo proprietario. |
NO_ADDITIONAL_DETAILS |
Il pagamento richiesto è stato trovato, ma non è disponibile un report. |
ReportAcquisto
Un report contenente i dettagli pertinenti dell'acquisto associato al pagamento richiesto.
Rappresentazione JSON |
---|
{ "customerAccount": { object ( |
Campi | |
---|---|
customerAccount |
REQUIRED: informazioni relative al cliente e al suo account. |
order |
REQUIRED: informazioni sull'ordine in cui è stato effettuato il pagamento. |
payment |
OPTIONAL: informazioni relative al pagamento. Nota: sono possibili più pagamenti per un singolo ordine, ma questi contengono solo i dati per il pagamento identificato nella richiesta originale. Non disponibile per tutti i tipi di ordine. |
Account cliente
Informazioni sull'account del cliente
Rappresentazione JSON |
---|
{ "customerEmail": string, "customerName": string } |
Campi | |
---|---|
customerEmail |
REQUIRED: l'indirizzo email associato all'Account Google del cliente. |
customerName |
REQUIRED: il nome del cliente. |
Ordine
Informazioni sull'ordine.
Rappresentazione JSON |
---|
{ "timestamp": string, "orderId": string, "currencyCode": string, "subTotalAmount": string, "totalAmount": string, "shippingAddress": { object ( |
Campi | |
---|---|
timestamp |
FACOLTATIVO: timestamp di quando è stato effettuato l'ordine, rappresentato come millisecondi dall'epoca. Non disponibile per tutti i tipi di ordine. |
orderId |
OPTIONAL: una stringa che identifica in modo univoco questo ordine. Non disponibile per tutti i tipi di ordine. |
currencyCode |
FACOLTATIVO: il codice valuta ISO 4217 di tre lettere per tutti gli importi dell'ordine indicato. Non disponibile per tutti i tipi di ordine. |
subTotalAmount |
FACOLTATIVO: l'importo totale dell'ordine al netto delle imposte, rappresentato come micro della valuta specificata in |
totalAmount |
FACOLTATIVO: l'importo totale dell'ordine, comprensivo di imposte, rappresentato come micro valuta della valuta specificata in |
shippingAddress |
FACOLTATIVO: indirizzo di spedizione per gli articoli fisici in questo ordine. |
items[] |
REQUIRED: elenco di articoli che facevano parte di questo ordine. |
taxes[] |
REQUIRED: elenco di articoli che facevano parte di questo ordine. Questo elenco potrebbe essere vuoto. |
Indirizzo
Struttura contenente informazioni su un indirizzo.
Rappresentazione JSON |
---|
{ "name": string, "addressLine": [ string ], "localityName": string, "administrativeAreaName": string, "postalCodeNumber": string, "countryCode": string } |
Campi | |
---|---|
name |
FACOLTATIVO: nome e cognome del cliente. |
addressLine[] |
FACOLTATIVO: contiene il testo dell'indirizzo non strutturato. |
localityName |
FACOLTATIVO: si tratta di un termine incomprensibile, ma generalmente si riferisce alla porzione di città di un indirizzo. Nelle regioni del mondo in cui le località non sono ben definite o non si adattano bene a questa struttura (ad es. Giappone e Cina), lascia vuoto il campo NeighborhoodName e utilizza addressLine. Esempi: "city" per gli Stati Uniti, "comune" in Italia, "post city" nel Regno Unito. |
administrativeAreaName |
FACOLTATIVO: suddivisione amministrativa di primo livello del paese. Esempi: stato degli Stati Uniti, regione IT, provincia del CN, prefettura del Giappone." |
postalCodeNumber |
FACOLTATIVO: nonostante il nome, i valori postaliCodeNumber sono spesso alfanumerici. Esempi: "94043", "SW1W", "SW1W 9TQ". |
countryCode |
FACOLTATIVO: il codice del paese dell'indirizzo del cliente deve essere conforme allo standard ISO-3166-1 Alpha-2. |
Articolo
Informazioni su un articolo dell'ordine.
Rappresentazione JSON |
---|
{ "description": string, "merchant": string, "quantity": string, "totalPrice": string, "googleProductName": string } |
Campi | |
---|---|
description |
FACOLTATIVO: una descrizione dell'articolo che è stato acquistato. Non disponibile per tutti i tipi di ordine. |
merchant |
REQUIRED: il venditore, l'artista o il produttore dell'articolo. |
quantity |
FACOLTATIVO: la quantità ordinata per questo articolo. Questo campo verrà omesso se le quantità intere non sono applicabili al prodotto (ad es. i prodotti a consumo possono avere quantità frazionarie). |
totalPrice |
FACOLTATIVO: il prezzo totale di questo articolo, espresso come micro della valuta specificata in |
googleProductName |
REQUIRED: nome del servizio Google del prodotto. |
Imposta
Informazioni su una imposta che si applica a questo ordine.
Rappresentazione JSON |
---|
{ "description": string, "amount": string } |
Campi | |
---|---|
description |
REQUIRED: una descrizione di tasse. |
amount |
REQUIRED: l'importo dell'imposta, calcolato come micro della valuta specificata in |
Pagamento
Informazioni sul pagamento.
Rappresentazione JSON |
---|
{ "billingAddress": { object ( |
Campi | |
---|---|
billingAddress |
REQUIRED: l'indirizzo di fatturazione per questo pagamento. |
amount |
REQUIRED: l'importo di questo pagamento, espresso in micro, nella valuta specificata in |
refunds[] |
REQUIRED: elenco dei rimborsi effettuati per questo pagamento. Questo elenco potrebbe essere vuoto. |
Campo unione
|
|
cardDetails |
FACOLTATIVO: dati di pagamento specifici per i FoP di carte di credito e di debito. |
Rimborso
Informazioni su un rimborso effettuato su un pagamento.
Rappresentazione JSON |
---|
{ "amount": string, "initiatedTimestamp": string } |
Campi | |
---|---|
amount |
REQUIRED: l'importo rimborsato, un numero positivo di micro valuta della valuta specificata in |
initiatedTimestamp |
REQUIRED: timestamp di inizio del rimborso, espresso in millisecondi dall'epoca. |
Dettagli carta di pagamento
Dettagli sul pagamento specifici per le carte di credito e di debito.
Rappresentazione JSON |
---|
{
"authResult": enum ( |
Campi | |
---|---|
authResult |
REQUIRED: risultato dell'autenticazione del pagamento. |
RisultatoRisultato autenticazione
Risultati autenticazione pagamento.
Enum | |
---|---|
UNKNOWN_RESULT |
Non impostare questo valore predefinito. |
APPROVED |
Approvato da Auth. |
DENIED |
Autorizzazione negata. |
NOT_ATTEMPTED |
Autenticazione non tentata. |