- Solicitud HTTP
- Cuerpo de la solicitud
- Cuerpo de la respuesta
- PaymentLookupCriterios
- ArnCriterios
- GoogleTransactionReferenceNumberCriterios
- CaptureRequestCriterios
- RequestOriginator
- GetReclamarInquiryReportResultCode
- PurchaseReport
- Cuenta de cliente
- Pedido
- Dirección
- Elemento
- Impuestos
- Pago
- Reembolso
- PaymentCardDetails
- AuthResult.
Obtén un informe que proporcione información para facilitar una conversación de asistencia al cliente con un usuario en relación con una posible disputa de pago.
Si el extremo encuentra un error mientras se procesa la solicitud, la respuesta de este extremo será del tipo
.ErrorResponse
Es posible que las respuestas a esta consulta estén vacías si este método no muestra un HTTP 200. El cuerpo de la respuesta está vacío en los casos en que se pueda usar un elemento
con una descripción clara para ayudar a un atacante a comprender el identificador de la cuenta del integrador de pagos de otros integradores. En estos casos, en los que la clave de firma no coincide, no se encontró el identificador del integrador de pago o la clave de encriptación es desconocida, este método mostrará un HTTP 404 con un cuerpo vacío. Si se pudo verificar la firma de la solicitud, se mostrará información adicional sobre el error en el cuerpo de la respuesta.ErrorResponse
Una solicitud de ejemplo se ve de la siguiente manera:
{
"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"
}
}
Una respuesta de ejemplo se ve de la siguiente manera:
{
"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"
}
}
}
}
Solicitud HTTP
POST https://vgw.googleapis.com/secure-serving/gsp/v1/getDisputeInquiryReport/:PIAID
Cuerpo de la solicitud
El cuerpo de la solicitud contiene datos con la siguiente estructura:
Representación JSON |
---|
{ "requestHeader": { object ( |
Campos | |
---|---|
requestHeader |
OBLIGATORIO: Es un encabezado común para todas las solicitudes. |
paymentIntegratorAccountId |
OBLIGATORIO: Es el identificador de la cuenta del integrador de pagos que identifica al emisor y las restricciones contractuales asociadas a esta interacción. |
paymentLookupCriteria |
OBLIGATORIO: Son los criterios que indican el pago que se debe buscar para esta consulta. |
existingGoogleClaimId |
OPCIONAL: Es una string generada por Google que muestra una llamada anterior a Si no está presente, se generará un ID de reclamo nuevo. El emisor puede proporcionar un El ID del reclamo que se propaga aquí o se genera en el campo No es válido proporcionar un |
requestOriginator |
OBLIGATORIO: Información sobre la organización o el subgrupo de la organización que originó esta solicitud. |
Cuerpo de la respuesta
Carga útil de respuesta para el método getDisputeInquiryReport
.
Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:
Representación JSON |
---|
{ "responseHeader": { object ( |
Campos | |
---|---|
responseHeader |
OBLIGATORIO: Es el encabezado común para todas las respuestas. |
result |
OBLIGATORIO: Resultado de esta llamada. |
googleClaimId |
OPCIONAL: Es una string generada por Google que identifica de forma única la disputa del cliente. (Presente solo si Si se propagó |
report |
OPCIONAL: Son los detalles relevantes de la disputa del pago que se identificó en la solicitud. (Presente solo si |
Criterios de PaymentLookup
Contenedor para criterios que pueden buscar un pago de manera única. Se debe propagar un campo de miembro (y solo uno).
Representación JSON |
---|
{ // Union field |
Campos | |
---|---|
Campo de unión
|
|
arnCriteria |
OPCIONAL: Búsqueda basada en el número de referencia del adquirente (ARN). |
googleTransactionReferenceNumberCriteria |
OPCIONAL: Búsqueda basada en el número de referencia de la transacción de Google. |
captureRequestCriteria |
OPCIONAL: Busca en función del ID de solicitud de captura. |
Criterios de Arn
Los criterios de búsqueda de pagos se basan en el número de referencia del adquirente (ARN).
Representación JSON |
---|
{ "acquirerReferenceNumber": string, "authorizationCode": string } |
Campos | |
---|---|
acquirerReferenceNumber |
OBLIGATORIO: Es el número de referencia del adquirente (ARN) que identifica de forma única el pago. Debe tener 23 dígitos. |
authorizationCode |
OBLIGATORIO: Es el código de autorización de la transacción. |
Número de referencia de transacción de Google
Criterios de búsqueda de pagos basados en el número de referencia de la transacción generado por Google
Representación JSON |
---|
{ "googleTransactionReferenceNumber": string, "authorizationCode": string } |
Campos | |
---|---|
googleTransactionReferenceNumber |
OBLIGATORIO: Es el número de referencia de la transacción generado por Google que identifica el pago de forma única. |
authorizationCode |
OBLIGATORIO: Es el código de autorización de la transacción. |
CaptureRequestCriterios
Criterios de búsqueda de pagos basados en la solicitud de captura original.
Representación JSON |
---|
{ "captureRequestId": string } |
Campos | |
---|---|
captureRequestId |
OBLIGATORIO: Es un identificador único para esta transacción. Este es el |
RequestOriginator
Incluye información sobre la organización o el subgrupo de la organización y, opcionalmente, el empleado del que se originó esta solicitud. Esto le permite a Google identificar problemas o abusos, así como implementar controles a un nivel más detallado que el paymentIntegratorAccountId
. Es especialmente útil cuando el emisor es un proveedor de servicios intermediario que obtiene solicitudes de varios clientes externos.
Representación JSON |
---|
{ "organizationId": string, "organizationDescription": string, "agentId": string } |
Campos | |
---|---|
organizationId |
OBLIGATORIO: Es un identificador de la empresa, organización o grupo que organizó esta solicitud. Debe ser único en esta |
organizationDescription |
OBLIGATORIO: Es un nombre legible o una descripción de la organización, que se puede usar para facilitar la comunicación entre los empleados de Google y el integrador en relación con esa organización. |
agentId |
OPCIONAL: Es un identificador único para el agente específico (empleado) de la organización que identifica |
Se obtiene el informe del resultado de la investigación
Es el resultado de la llamada al método getDisputeInquiryReport
.
Enumeradores | |
---|---|
UNKNOWN_RESULT |
No establezcas este valor predeterminado. |
SUCCESS |
Se encontró el pago y se proporcionó un informe. |
PAYMENT_NOT_FOUND |
No se encontró el pago solicitado. |
PAYMENT_TOO_OLD |
Se encontró el pago solicitado, pero no se proporcionó un informe debido a la antigüedad del pago. |
ORDER_CANNOT_BE_RETURNED |
El pago solicitado pertenece a un pedido que existe, pero no se puede devolver. Entre los motivos, se incluyen los casos en los que el pedido se quitó a pedido de su propietario. |
NO_ADDITIONAL_DETAILS |
Se encontró el pago solicitado, pero no hay un informe disponible. |
Informe de compra
Es un informe que contiene detalles relevantes de la compra asociada con el pago solicitado.
Representación JSON |
---|
{ "customerAccount": { object ( |
Campos | |
---|---|
customerAccount |
OBLIGATORIO: Incluye información sobre el cliente y su cuenta. |
order |
OBLIGATORIO: Información sobre el pedido en el que se realizó el pago. |
payment |
OPCIONAL: La información relacionada con el pago Nota: es posible realizar varios pagos en un solo pedido, pero solo contendrá información para el pago que se identificó en la solicitud original. No está disponible para todos los tipos de pedidos. |
Cuenta del cliente
Información de la cuenta del cliente
Representación JSON |
---|
{ "customerEmail": string, "customerName": string } |
Campos | |
---|---|
customerEmail |
OBLIGATORIO: La dirección de correo electrónico asociada con la Cuenta de Google del cliente |
customerName |
OBLIGATORIO: Indica el nombre del cliente. |
Ordenar
Información sobre el pedido.
Representación JSON |
---|
{ "timestamp": string, "orderId": string, "currencyCode": string, "subTotalAmount": string, "totalAmount": string, "shippingAddress": { object ( |
Campos | |
---|---|
timestamp |
OPCIONAL: Es la marca de tiempo del momento en que se realizó el pedido, representado como milisegundos desde el ciclo de entrenamiento. No está disponible para todos los tipos de pedidos. |
orderId |
OPCIONAL: Es una string que identifica de forma única este orden. No está disponible para todos los tipos de pedidos. |
currencyCode |
OPCIONAL: Código de moneda en formato ISO 4217 de 3 letras para todos los importes de este pedido. No está disponible para todos los tipos de pedidos. |
subTotalAmount |
OPCIONAL: Es el importe total de este pedido sin impuestos, representado como micros de la moneda especificada en |
totalAmount |
OPCIONAL: Es el importe total de este pedido, incluidos los impuestos, representado como micros de la moneda especificada en |
shippingAddress |
OPCIONAL: Dirección de envío de artículos físicos de este pedido. |
items[] |
OBLIGATORIO: Lista de artículos que fueron parte de este pedido. |
taxes[] |
OBLIGATORIO: Lista de artículos que fueron parte de este pedido. La lista puede estar vacía. |
Dirección
Estructura que contiene información sobre una dirección.
Representación JSON |
---|
{ "name": string, "addressLine": [ string ], "localityName": string, "administrativeAreaName": string, "postalCodeNumber": string, "countryCode": string } |
Campos | |
---|---|
name |
OPCIONAL: El nombre completo del cliente. |
addressLine[] |
OPCIONAL: Contiene texto de dirección no estructurado. |
localityName |
OPCIONAL: Es un término confuso, pero, por lo general, hace referencia a la parte de la ciudad o el pueblo de una dirección. En regiones del mundo en las que las localidades no estén bien definidas o no se ajusten bien a esta estructura (por ejemplo, Japón y China), deja la localidad en blanco y usa addressLine. Ejemplos: ciudad de EE.UU., comuna de Italia o ciudad postal en el Reino Unido. |
administrativeAreaName |
OPCIONAL: Subdivisión administrativa de nivel superior de este país. Por ejemplo, estado de EE.UU., región de TI, provincia de CN o prefectura de Japón. |
postalCodeNumber |
OPCIONAL: A pesar de su nombre, los valores postales suelen ser alfanuméricos. Ejemplos: “94043”, “SW1W”, “SW1W 9TQ”. |
countryCode |
OPCIONAL: Es el código de país de la dirección del cliente, que se espera que sea ISO-3166-1 alfa-2. |
Elemento
Incluye información sobre un artículo del pedido.
Representación JSON |
---|
{ "description": string, "merchant": string, "quantity": string, "totalPrice": string, "googleProductName": string } |
Campos | |
---|---|
description |
OPCIONAL: Una descripción del artículo que se compró. No está disponible para todos los tipos de pedidos. |
merchant |
OBLIGATORIO: Es el vendedor, el artista o el fabricante del artículo. |
quantity |
OPCIONAL: Es la cantidad que se pidió de este artículo. Este campo se omitirá si las cantidades de números enteros no son aplicables al producto (por ejemplo, los productos medidos pueden tener cantidades fraccionarias). |
totalPrice |
OPCIONAL: El precio total de este elemento, representado como micros de la moneda especificada en |
googleProductName |
OBLIGATORIO: Es el nombre del servicio de productos de Google correspondiente al artículo. |
Impuesto
Información sobre un impuesto que se aplica a este pedido.
Representación JSON |
---|
{ "description": string, "amount": string } |
Campos | |
---|---|
description |
OBLIGATORIO: Es una descripción del impuesto. |
amount |
OBLIGATORIO: El importe del impuesto, representado como micros de la moneda especificada en |
Pago
Información sobre el pago.
Representación JSON |
---|
{ "billingAddress": { object ( |
Campos | |
---|---|
billingAddress |
OBLIGATORIO: Dirección de facturación para este pago |
amount |
OBLIGATORIO: Importe de este pago, representado como micros de la moneda especificada en |
refunds[] |
OBLIGATORIO: Lista de reembolsos realizados en este pago. La lista puede estar vacía. |
Campo de unión
|
|
cardDetails |
OPCIONAL: Detalles del pago específicos para las FoP de las tarjetas de crédito y débito |
Reembolso
Información sobre un reembolso realizado en un pago.
Representación JSON |
---|
{ "amount": string, "initiatedTimestamp": string } |
Campos | |
---|---|
amount |
OBLIGATORIO: Es el importe reembolsado, una cantidad positiva de micros de la moneda especificada en |
initiatedTimestamp |
OBLIGATORIO: Marca de tiempo del momento en que se inició el reembolso, representado como milisegundos desde el ciclo de entrenamiento. |
Detalles de la tarjeta de pago
Detalles específicos de las tarjetas de crédito y débito
Representación JSON |
---|
{
"authResult": enum ( |
Campos | |
---|---|
authResult |
OBLIGATORIO: Resultado de la autenticación del pago. |
AuthResult
Resultados de la autenticación del pago
Enumeradores | |
---|---|
UNKNOWN_RESULT |
No establezcas este valor predeterminado. |
APPROVED |
Aprobación aprobada. |
DENIED |
Se denegó la autenticación. |
NOT_ATTEMPTED |
No se intentó la autenticación. |