REST Resource: inventory.partners.merchants

Recurso: comerciante

Informações sobre um comerciante na plataforma do agregador.

Representação JSON
{
  "name": string,
  "merchantName": string,
  "telephone": string,
  "url": string,
  "geo": {
    object (GeoCoordinates)
  },
  "category": string,
  "numBookings30d": string,
  "taxRateBasisPoints": integer,
  "taxRate": {
    object (TaxRate)
  },
  "paymentRestrictions": {
    object (PaymentRestrictions)
  },
  "paymentOption": [
    {
      object (PaymentOption)
    }
  ],
  "paymentProcessorConfig": {
    object (PaymentProcessorConfig)
  },
  "tokenizationConfig": {
    object (TokenizationConfig)
  },
  "terms": {
    object (Terms)
  },
  "brandId": string,
  "matchingHints": {
    object (MerchantMatchingHints)
  },
  "serviceAttribute": [
    {
      object (ServiceAttribute)
    }
  ],
  "actionLink": [
    {
      object (ActionLink)
    }
  ],
  "waitlistAdvisement": {
    object (Advisement)
  }
}
Campos
name

string

O nome do recurso do comerciante, no formato partners/{partner_id}/merchants/{merchantId}.

merchantName

string

O merchantName, telefone, URL e localização geográfica são usados para corresponder o inventário do parceiro aos comerciantes no Google Maps. Essas informações não serão exibidas.

Nome do comerciante.

telephone

string

O número de telefone público do comerciante, incluindo o país e os códigos de área, por exemplo, +14567891234.

url

string

O URL do site público do comerciante.

geo

object (GeoCoordinates)

Informações geográficas do comerciante, incluindo latitude, longitude e endereço.

category

string

A categoria do negócio na plataforma do agregador.

numBookings30d
(deprecated)

string (int64 format)

O uso desse campo está suspenso.

taxRateBasisPoints
(deprecated)

integer (uint32 format)

Taxa de tributo do comerciante em pontos base (um centésimo de um por cento). Por exemplo, se a alíquota for de 7,5%, o campo exibirá 750.

Se esse campo não for definido ou mostrar o valor 0, o preço total cobrado do usuário por qualquer serviço do comerciante será aquele especificado em Service.price. Considera-se que esse valor está isento de impostos ou já inclui os tributos aplicáveis. Os impostos não serão exibidos para o usuário em outro item de linha.

Se o campo for definido como qualquer valor diferente de zero, o preço total cobrado pelo comerciante incluirá o valor do serviço e o tributo calculado com base na alíquota informada. As frações da menor unidade monetária (por exemplo, frações de um centavo) serão arredondadas para o número par mais próximo. Os tributos aparecerão em outro item de linha.

Este campo está obsoleto. Use taxRate.

taxRate

object (TaxRate)

Taxa de tributo do comerciante. Se presente, esse campo substitui o campo taxRateBasisPoints obsoleto. Uma mensagem vazia (por exemplo, taxRate {}) redefinirá a taxa de tributo aplicada para zero.

paymentRestrictions

object (PaymentRestrictions)

Restrições às formas de pagamento aceitas pelo comerciante. Supõe-se que não existam restrições se esse campo não estiver definido.

paymentOption[]

object (PaymentOption)

Opções de pagamento disponíveis para esse comerciante. Os serviços dele poderão limitar cada opção de pagamento permitida.

paymentProcessorConfig
(deprecated)

object (PaymentProcessorConfig)

Configuração para um processador de pagamentos tokenizado, se o comerciante oferecer suporte a esse recurso.

tokenizationConfig

object (TokenizationConfig)

Configuração para um processador de pagamentos tokenizado, se o comerciante oferecer suporte a esse recurso.

terms

object (Terms)

Os Termos e Condições do comerciante, exibidos ao usuário quando um serviço é agendado pelo Reservar com o Google. Além desses, os Termos e Condições do parceiro agregador são sempre exibidos ao usuário e não podem ser disponibilizados aqui.

brandId

string

String opaca que identifica a marca voltada para o consumidor que será usada ao mostrar a atribuição de parceiro. Esse campo permite que parceiros com várias marcas desse tipo especifiquem comerciantes para todas elas no mesmo feed.

Uma marca consiste em propriedades voltadas para o consumidor, como nome, logotipo, Termos de Serviço e Política de Privacidade.

Se houver apenas uma marca de parceiro voltada para o consumidor, esse campo não precisará ser definido e poderá ser ignorado.

Se o parceiro...

não tiver várias marcas voltadas para o consumidor? --> Ignore esse campo

tiver várias marcas configuradas?

  If this field is set
    --> Associated consumer-facing brand attribution is used

  If this field is unset or the empty string
    --> Default consumer-facing brand attribution is used

Observação: a maioria dos parceiros não precisa definir esse campo. Se um parceiro quiser usá-lo, precisará entrar em contato conosco para configurar marcas separadas, incluindo a padrão.

matchingHints

object (MerchantMatchingHints)

Dicas para ajudar o Google a corresponder um comerciante a um lugar no Google Maps. Observação: a maioria dos parceiros não precisa definir esse campo, já que o Google fará a correspondência entre os comerciantes e os lugares no Google Maps usando as informações enviadas acima. (opcional)

serviceAttribute[]

object (ServiceAttribute)

Definições de qualquer atributo de serviço usado para descrever os serviços deste comerciante. (opcional)

waitlistAdvisement

object (Advisement)

Opcional. Recomendações gerais de um comerciante específico para um usuário que está entrando em uma lista de espera pelo Reservar com o Google. Cada campo da instrução deve ter um limite de 100 bytes.

PaymentRestrictions

Restrições às formas de pagamento aceitas pelo comerciante.

Representação JSON
{
  "creditCardRestrictions": {
    object (CreditCardRestrictions)
  }
}
Campos
creditCardRestrictions

object (CreditCardRestrictions)

Restrições aos cartões de crédito aceitos pelo comerciante. Presumimos que todos os cartões de crédito sejam aceitos se esse campo não estiver definido. A lista de cartões aceitos por CreditCardType aumentará ao longo do tempo, o que significa que deixar esse campo vazio sujeitará o comerciante a alterações futuras.

CreditCardRestrictions

Restrições aos tipos de cartão de crédito aceitos pelo comerciante.

Representação JSON
{
  "creditCardType": [
    enum (CreditCardType)
  ]
}
Campos
creditCardType[]

enum (CreditCardType)

Uma lista de cartões de crédito aceitos. Nenhum cartão de crédito será aceito se o campo estiver vazio.

CreditCardType

Tipo de cartão de crédito.

Enumerações
CREDIT_CARD_TYPE_UNSPECIFIED Não utilizado.
VISA Cartão de crédito Visa.
MASTERCARD Cartão de crédito Mastercard.
AMERICAN_EXPRESS Cartão de crédito American Express.
DISCOVER Cartão de crédito Discover.
JCB Cartão de crédito JCB.

PaymentOption

Opção que pode ser usada para pagar os serviços prestados por um comerciante. e pode ser compartilhada entre vários comerciantes (por exemplo, aqueles que fazem parte da mesma rede).

Representação JSON
{
  "paymentOptionId": string,
  "name": string,
  "description": string,
  "price": {
    object (Price)
  },
  "taxRate": {
    object (TaxRate)
  },
  "paymentOptionType": enum (PaymentOptionType),
  "sessionCount": string,
  "purchaseInterval": {
    object (TimeRange)
  },
  "validInterval": {
    object (TimeRange)
  },
  "validDuration": string,
  "activationType": enum (ActivationType),
  "userRestriction": {
    object (UserPurchaseRestriction)
  }
}
Campos
paymentOptionId

string

Código usado para identificar a opção de pagamento.

Esse código é global para todo o agregador. Se você reutilizar um valor em diversos comerciantes, um usuário poderá pagar com a opção correspondente em todos eles.

Nesse caso, quando você atualiza o valor de uma opção de pagamento em um comerciante, todas as outras opções com o mesmo código em outros comerciantes também serão modificadas. Portanto, utilize valores idênticos em todas as opções de pagamento com o mesmo código para evitar comportamentos prejudiciais.

name

string

Nome da opção de pagamento. Pode ser visível para o usuário.

description

string

Descrição da opção de pagamento, Pode ser visível para o usuário.

price

object (Price)

Preço da opção de pagamento.

taxRate

object (TaxRate)

Taxa de tributo dessa opção de pagamento. Se presente, esse campo substitui o taxRate presente no comerciante ou serviço. Uma mensagem vazia (por exemplo, taxRate {}) redefinirá a taxa de tributo aplicada para zero.

paymentOptionType

enum (PaymentOptionType)

Tipo dessa opção de pagamento. Uso único para atendimentos sem hora marcada, várias utilizações para pacotes e ilimitado para assinaturas.

sessionCount

string (int64 format)

Em quantas sessões essa opção de pagamento pode ser usada. Válido apenas para várias sessões / pacotes, em que o valor deve ser > 1.

purchaseInterval

object (TimeRange)

A opção de pagamento pode ser comprada dentro desse intervalo.

validInterval

object (TimeRange)

A opção de pagamento pode ser usada no intervalo (por exemplo, preço especial para janeiro de 2017). Se presente, substitui validDuration e activationType.

validDuration

string (Duration format)

Duração da validade da opção de pagamento (por exemplo, assinatura de 30 dias).

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

activationType

enum (ActivationType)

Define como a data de início da validade é determinada para essa opção de pagamento.

userRestriction

object (UserPurchaseRestriction)

Restringe os usuários qualificados para comprar com essa opção de pagamento. Pode ser usado para restringir uma opção de pagamento promocional a um subconjunto de usuários. Se não estiver definido, todos os usuários estarão qualificados.

PaymentOptionType

Tipo de opção de pagamento.

Enums
PAYMENT_OPTION_TYPE_UNSPECIFIED Não utilizado.
PAYMENT_OPTION_SINGLE_USE A opção de pagamento só pode ser usada uma vez.
PAYMENT_OPTION_MULTI_USE A opção de pagamento poderá ser usada se a contagem de sessões for > 0.
PAYMENT_OPTION_UNLIMITED A opção de pagamento pode ser usada em um período válido. A contagem de sessões não se aplica.

ActivationType

Define como a data de início da validade é determinada.

Enums
ACTIVATION_TYPE_UNSPECIFIED Não utilizado.
ACTIVATION_ON_PURCHASE A validade começa no momento da compra.
ACTIVATION_ON_FIRST_USE A validade começa quando a opção de pagamento é usada pela primeira vez.

UserPurchaseRestriction

Restringe os usuários qualificados para comprar uma opção de pagamento.

Representação JSON
{
  "newToMerchant": boolean,
  "newToPaymentOption": boolean
}
Campos
newToMerchant

boolean

Uma opção de pagamento que só pode ser comprada por usuários que nunca compraram do mesmo comerciante.

newToPaymentOption

boolean

Uma opção de pagamento que só pode ser comprada por usuários que nunca compraram a mesma opção de pagamento.

PaymentProcessorConfig

Configuração para um processador de pagamentos definida por comerciante.

Representação JSON
{
  "processor": enum (Processor),
  "publicKey": string,
  "version": string
}
Campos
processor

enum (Processor)

Define o parceiro do processador de pagamentos a que essa configuração se aplica.

publicKey

string

A chave usada para identificar esse comerciante com o processador de pagamentos.

Para o Stripe, consulte: https://stripe.com/docs/dashboard#api-keys Para o Braintree, consulte: https://articles.braintreepayments.com/control-panel/important-gateway-credentials

version

string

O número da versão da API enviado ao processador de pagamentos com as solicitações de pagamento.

Processador

Define um parceiro específico de processador de pagamentos.

Enums
PROCESSOR_UNSPECIFIED Não usado
PROCESSOR_STRIPE Configuração para pagamentos com o Stripe.
PROCESSOR_BRAINTREE Configuração para pagamentos com o Braintree.

TokenizationConfig

Configuração de tokenização do processador de pagamentos, definida por comerciante.

Representação JSON
{
  "tokenizationParameter": {
    string: string,
    ...
  },
  "billingInformationFormat": enum (BillingInformationFormat)
}
Campos
tokenizationParameter

map (key: string, value: string)

Uma configuração de tokenização geralmente tem um tokenizationParameter, em que a chave é "gateway" e o valor é o nome do processador.

Os demais parâmetros dependem do processador. Consulte a documentação do Google Pay para mais informações.

Exemplo do Braintree: tokenizationParameter { key: "gateway" value: "braintree" } tokenizationParameter { key: "braintree:apiVersion" value: "v1" } tokenizationParameter { key: "braintree:sdkVersion" value: "2.30.0" } tokenizationParameter { key: "braintree:merchantId" value: "abcdef" } tokenizationParameter { key: "braintree:clientKey" value: "production_xxx_yyy" }

Exemplo do Stripe: tokenizationParameter { key: "gateway" value: "stripe" } tokenizationParameter { key: "stripe:version" value: "2018-02-28" } tokenizationParameter { key: "stripe:publishableKey" value: "pk_1234" }

Exemplo do Adyen: tokenizationParameter { key: "gateway" value: "adyen" } tokenizationParameter { key: "gatewayMerchantId" value: "yourId" }

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

billingInformationFormat

enum (BillingInformationFormat)

Inclua no token de pagamento as informações de faturamento do usuário idênticas ao que consta no Google Pay com a FOP (veja acima). Quando você deixa o campo vazio, o comportamento é o mesmo que especificar o campo MIN.

BillingInformationFormat

Quanto do endereço de faturamento deve ser exigido do usuário e incluído no token. Os valores de enumeração correspondem aos parâmetros na API Google Pay (consulte https://developers.google.com/pay/api/web/reference/object#BillingAddressParameters).

Enums
BILLING_INFORMATION_FORMAT_UNSPECIFIED Não especificado. O padrão é MIN.
MIN Nome, código do país e código postal (configuração padrão do Google Pay).
FULL nome, endereço, localização, região, código do país e código postal.

Termos

Um conjunto de regras e diretrizes exibidas ao usuário quando ele faz um agendamento pelo Reservar com o Google.

Representação JSON
{
  "url": string,
  "text": string,
  "localizedText": {
    object (Text)
  }
}
Campos
url

string

Opcionalmente, o URL para os Termos e Condições.

text

string

O texto a ser exibido para o usuário. Use localizedText abaixo para novas integrações.

localizedText

object (Text)

O texto localizado que será exibido ao usuário.

MerchantMatchingHints

Dicas para ajudar o Google a corresponder um comerciante a um lugar no Google Maps.

Representação JSON
{
  "placeId": string
}
Campos
placeId

string

O código de um lugar no banco de dados do Google Places e no Maps. Consulte https://developers.google.com/places/web-service/place-id para saber mais sobre IDs de lugar.

ServiceAttribute

Os atributos de serviço são categorias definidas pelo parceiro que descrevem os serviços de um comerciante. Por exemplo, um banco pode definir um atributo de serviço "Tipo de conta" com os valores "Pessoal" e "Empresa", enquanto um salão de beleza, com os valores "Corte de cabelo", "Coloração" e "Penteado".

Representação JSON
{
  "attributeId": string,
  "attributeName": string,
  "value": [
    {
      object (Value)
    }
  ]
}
Campos
attributeId

string

Um identificador que identifica exclusivamente esse atributo de serviço entre outros para o mesmo comerciante, por exemplo, "account-type".

attributeName

string

Um nome visível para o usuário para esse atributo, por exemplo, "Tipo de conta".

value[]

object (Value)

Todos os valores possíveis para este atributo de serviço.

Valor

Representa um possível valor para um atributo de serviço específico.

Representação JSON
{
  "valueId": string,
  "valueName": string
}
Campos
valueId

string

Um identificador que identifica exclusivamente esse valor entre outros para esse atributo de serviço, por exemplo, "personal".

valueName

string

Um nome visível ao usuário para o valor, por exemplo, "Pessoal".

Orientação

Recomendações exibidas ao usuário durante a reserva pelo Reservar com o Google.

Representação JSON
{
  "text": {
    object (Text)
  }
}
Campos
text

object (Text)

Mensagem personalizada a ser mostrada ao usuário quando ele faz uma reserva pelo Reservar com o Google.

Métodos

create

Cria e retorna um novo Merchant gerenciado pelo agregador especificado.

delete

Exclui um Merchant existente gerenciado pelo agregador especificado.

getStatus

Acessar o MerchantStatus de um Merchant.

patch

Atualiza e retorna um Merchant gerenciado pelo agregador especificado.