Esta referência descreve as opções do objeto de resposta da API Google Pay a usar com o seu Website. Os objetos de resposta são objetos devolvidos pelos métodos de cliente da API Google Pay.
IsReadyToPayResponse
Este objeto fornece informações sobre a capacidade de um visitante do Website fornecer informações de pagamento ao site que as solicita.
| Propriedade | Tipo | Existe sempre | Descrição |
|---|---|---|---|
result |
booleano | Sim | O visitante atual consegue fornecer informações de pagamento ao site que as solicita. A capacidade de um visitante pagar pode estar associada à capacidade do respetivo navegador de Internet apresentar os componentes necessários para os métodos de pagamento especificados. Isto inclui quando iniciam sessão numa Conta Google e indicam um método de pagamento. |
paymentMethodPresent |
booleano | Não |
Se Existe apenas quando Se |
Exemplo
O exemplo seguinte mostra quando o visitante atual pode fornecer informações de pagamento ao site que as solicita.
{ "result": true }
PaymentData
Este é um objeto de resposta devolvido pela Google depois de um responsável pelo pagamento aprovar o pagamento.
PaymentDataRequest.PaymentDataRequest.PaymentDataRequest.| Propriedade | Tipo | Existe sempre | Descrição |
|---|---|---|---|
apiVersion |
número | Sim | Versão principal da API. O valor na resposta corresponde ao valor fornecido em
PaymentDataRequest. |
apiVersionMinor |
número | Sim | Versão secundária da API. O valor na resposta corresponde ao valor fornecido em
PaymentDataRequest. |
paymentMethodData |
PaymentMethodData | Sim | Dados sobre o método de pagamento selecionado. |
email |
de string | Não | Endereço de email, se emailRequired estiver definido como true
no
PaymentDataRequest.
Se outro pedido tiver a propriedade definida como true, não tem efeito. |
shippingAddress |
Morada | Não | Morada de envio, se shippingAddressRequired estiver definido como true no
PaymentDataRequest. |
Exemplo
Este exemplo de resposta para a versão 2.0 da API Google Pay mostra um CARDmétodo de pagamento
selecionado na folha de pagamento do Google Pay. Foi gerado um token de método de pagamento para o gateway example.
{ "apiVersion": 2, "apiVersionMinor": 0, "paymentMethodData": { "type": "CARD", "description": "Visa •••• 1234", "info": { "cardNetwork": "VISA", "cardDetails": "1234", "cardFundingSource": "CREDIT" }, "tokenizationData": { "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" } } }
IntermediatePaymentData
Este objeto é devolvido pela entrada da API Google Pay quando o endereço de envio ou as opções de envio são alterados na folha de pagamento.onPaymentDataChanged()
| Propriedade | Tipo | Necessidade | Descrição |
|---|---|---|---|
callbackTrigger |
String | Opcional | Descreve o motivo pelo qual o callback de dados de pagamento foi invocado.
|
offerData |
OfferData | Opcional | O código promocional fornecido pelo utilizador. |
shippingAddress |
IntermediateAddress | Opcional | A morada selecionada na página de pagamento. |
shippingOptionData |
SelectionOptionData | Opcional | A opção de envio selecionada na página de pagamento. |
Exemplo
Este exemplo mostra o payload intermédio devolvido pela API Google Pay.
{ "callbackTrigger": "SHIPPING_ADDRESS", "offerData": { "redemptionCode": "exampleCode" }, "shippingAddress": { "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" }, "shippingOptionData": { "id": "shipping-001" } }
PaymentMethodData
Este objeto fornece dados para um método de pagamento selecionado.
| Propriedade | Tipo | Existe sempre | Descrição |
|---|---|---|---|
type |
de string | Sim |
PaymentMethod
type selecionado na folha de pagamento do Google Pay.
|
description |
de string | Sim | Mensagem visível para o utilizador que descreve o método de pagamento que financia esta transação. |
info |
objeto | Sim | O valor desta propriedade depende do método de pagamento type devolvido.
Para o CARD, consulte CardInfo.
|
tokenizationData |
PaymentMethodTokenizationData | Não | Dados de tokenização de pagamentos para o método de pagamento selecionado. |
Exemplo
Esta resposta de exemplo mostra como um método de pagamento CARD selecionado na folha de pagamento do Google Pay gera um token de método de pagamento para a gateway example.
{ "type": "CARD", "description": "Visa •••• 1234", "info": { "cardNetwork": "VISA", "cardDetails": "1234" }, "tokenizationData": { "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" } }
CardInfo
Este objeto fornece informações sobre o cartão de pagamento selecionado.
| Propriedade | Tipo | Existe sempre | Descrição |
|---|---|---|---|
cardDetails |
de string | Sim | Os detalhes sobre o cartão. Este valor é normalmente os últimos quatro dígitos do número da conta de pagamento selecionada. |
assuranceDetails |
AssuranceDetailsSpecifications | Sim | Este objeto fornece informações sobre a validação efetuada nos dados de pagamento devolvidos se assuranceDetailsRequired estiver definido como true no
CardParameters.
|
cardNetwork |
de string | Sim | A rede de cartões de pagamento do pagamento selecionado.
Os valores devolvidos correspondem ao formato de Este valor da rede de cartões não deve ser apresentado ao comprador. É usado quando são necessários os detalhes do cartão de um comprador. Por exemplo, se o apoio técnico precisar deste valor para identificar o cartão que um comprador usou para a respetiva transação. Para uma descrição visível para o utilizador, use, em alternativa, a propriedade |
billingAddress |
Morada | Não | A morada de faturação associada ao método de pagamento fornecido, se
billingAddressRequired estiver definido como true em
CardParameters.
|
cardFundingSource |
de string | Sim | Fonte de financiamento do cartão para o método de pagamento selecionado.
|
Exemplo
Este exemplo mostra um cartão na rede Visa.
{ "cardNetwork": "VISA", "cardDetails": "1234", "cardFundingSource": "CREDIT", "assuranceDetails": { "cardHolderAuthenticated": false, "accountVerified": true } }
AssuranceDetailsSpecifications
Este objeto fornece informações sobre a validação que foi realizada nas credenciais de pagamento devolvidas para que possam ser aplicadas verificações de risco do instrumento adequadas.
| Nome | Tipo | Descrição |
|---|---|---|
accountVerified |
booleano | Se true, indica que a validação de posse de Cardholder foi realizada na credencial de pagamento devolvida. |
cardHolderAuthenticated |
booleano |
Se Se |
Pode receber e processar o objeto de resposta mesmo que não use o campo assuranceDetails. Para receber este objeto, inclua
assuranceDetailsRequired: true no objeto Request
CardParameters.
PaymentMethodTokenizationData
Este objeto fornece dados de tokenização para o método de pagamento.
| Propriedade | Tipo | Existe sempre | Descrição |
|---|---|---|---|
type |
de string | Sim | O tipo de tokenização a aplicar ao método de pagamento selecionado.
Este valor corresponde ao type definido em
PaymentMethodTokenizationSpecification.
|
token |
de string | Não | O token do método de pagamento gerado.
|
Exemplo
Este é um exemplo de uma resposta tokenizada preparada para o gateway example.
{ "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" }
PaymentAuthorizationResult
Este objeto fornece informações sobre o resultado da autorização de pagamento.
| Propriedade | Tipo | Necessidade | Descrição |
|---|---|---|---|
transactionState |
String | Obrigatória | O estado da transação é resolvido por um dos seguintes resultados do comerciante:
|
error |
PaymentDataError | Opcional | O erro a ser renderizado na folha de pagamento para o utilizador quando for necessário tentar novamente o pagamento. |
Exemplo
O exemplo seguinte mostra o resultado do pagamento devolvido após o processamento de um pagamento:
{ "transactionState": "ERROR", "error": { "reason": "PAYMENT_DATA_INVALID", "message": "Cannot pay with payment credentials", "intent": "PAYMENT_AUTHORIZATION" } }
PaymentDataError
| Propriedade | Tipo | Necessidade | Descrição |
|---|---|---|---|
reason |
String | Obrigatória | Lista de motivos de erro predefinidos:
|
message |
String | Obrigatória | Mensagem de erro ao utilizador apresentada numa caixa de diálogo. |
intent |
String | Obrigatória | A intenção do erro. Tem de ser um que tenha sido registado em
|
Exemplo
Este exemplo mostra a intenção de erro e a mensagem a serem renderizadas na folha de pagamento.
{ "error": { "reason": "SHIPPING_OPTION_INVALID", "message": "This shipping option is invalid for the given address", "intent": "SHIPPING_OPTION" } }
Endereço
Este objeto fornece informações sobre uma morada pedida. Todas as propriedades são strings.
As moradas podem ser devolvidas nos formatos MIN, FULL e FULL-ISO3166. Pode ver as propriedades pertencentes a cada formato na tabela seguinte.
| Propriedade | Formato de endereço | Descrição |
|---|---|---|
name |
MIN, FULL, FULL-ISO3166 |
O nome completo do destinatário. |
postalCode |
MIN, FULL, FULL-ISO3166 |
O código postal. |
countryCode |
MIN, FULL, FULL-ISO3166 |
Código do país ISO 3166-1 alfa-2. |
phoneNumber |
MIN, FULL, FULL-ISO3166 |
Um número de telefone, se phoneNumberRequired estiver definido como
true no
PaymentDataRequest.
|
address1 |
FULL, FULL-ISO3166 |
A primeira linha da morada. |
address2 |
FULL, FULL-ISO3166 |
A segunda linha da morada. |
address3 |
FULL, FULL-ISO3166 |
A terceira linha da morada. |
locality |
FULL, FULL-ISO3166 |
Cidade, vila, bairro ou subúrbio. |
administrativeArea |
FULL, FULL-ISO3166 |
Uma subdivisão de um país, como um estado ou uma província. |
sortingCode |
FULL, FULL-ISO3166 |
O código de ordenação. |
iso3166AdministrativeArea |
FULL-ISO3166 |
Código da área administrativa ISO 3166-2 correspondente a administrativeArea. |
Exemplo
Este é um exemplo de um endereço no formato FULL-ISO3166 nos Estados Unidos com várias linhas de dados de morada.
{ "name": "John Doe", "address1": "c/o Google LLC", "address2": "1600 Amphitheatre Pkwy", "address3": "Building 40", "locality": "Mountain View", "administrativeArea": "CA", "countryCode": "US", "postalCode": "94043", "sortingCode": "" "iso3166AdministrativeArea": "US-CA" }
IntermediateAddress
| Propriedade | Tipo | Necessidade | Descrição |
|---|---|---|---|
administrativeArea |
String | Obrigatória | Uma subdivisão de um país, como um estado ou uma província. |
countryCode |
String | Obrigatória | Código do país ISO 3166-1 alfa-2. |
locality |
String | Obrigatória | Cidade, vila, bairro ou subúrbio. |
postalCode |
String | Obrigatória | O código postal ocultado com base no país. Para o Canadá e o Reino Unido, contém apenas os três primeiros carateres. Para os EUA, contém os primeiros cinco dígitos. |
iso3166AdministrativeArea |
String | Opcional |
Código da área administrativa ISO 3166-2 correspondente a administrativeArea. Só está presente se o formato da morada de envio for FULL-ISO3166.
|
Exemplo
Este exemplo mostra a morada selecionada na folha de pagamento.
{ "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" "iso3166AdministrativeArea": "US-NY" }
SelectionOptionData
| Propriedade | Tipo | Necessidade | Descrição |
|---|---|---|---|
id |
String | Obrigatória | Corresponde a SelectionOption.id |
Exemplo
Este exemplo mostra a opção de envio selecionada na folha de pagamento.
{ "id": "shipping-001" }
OfferData
Este objeto fornece informações sobre um código de oferta introduzido na página de pagamento.
| Propriedade | Tipo | Necessidade | Descrição |
|---|---|---|---|
redemptionCodes |
matriz | Existe sempre | O conjunto de códigos promocionais introduzidos na folha de pagamento. Inclui códigos que já foram aprovados. |
Exemplo
O exemplo seguinte mostra um objeto OfferData com uma matriz redemptionCodes.
"offerData": { "redemptionCodes": ["PROMOTIONALCODE"] }