Este guia ajuda você a migrar da API Merchant v1beta para v1, a primeira
versão de disponibilidade geral. A versão v1 apresenta várias atualizações e algumas mudanças que podem exigir atualizações de código. Essas mudanças foram projetadas para simplificar a API e melhorar o gerenciamento da sua conta do Merchant Center.
principais diferenças
Confira as mudanças mais importantes a serem consideradas ao migrar de v1beta
para v1:
- Registro único de pelo menos um desenvolvedor de API para usar a API Merchant:
Você precisa chamar o método
registerGcp(apenas uma vez para cada projeto na nuvem do Google usado para autenticação) para fornecer seus detalhes de contato, o que permite usar a API e receber atualizações e anúncios relacionados à API Merchant. Não será possível usar nenhumav1ouv1alphaAPI até que esta etapa esteja concluída. Para mais informações sobre o processo de registro, consulte Registro. Codificação do nome do produto: os
ProductInput.nameeProduct.namecampos oferecem suporte à codificação base64url não preenchida (seção 5 da RFC 4648). Siga estas diretrizes:- Antes da codificação, a string precisa respeitar o formato
contentLanguage~feedLabel~offerId. A codificação é obrigatória se o nome do produto contiver caracteres usados pela API Merchant ou caracteres reservados para URL, como:
% . + / : ~ , ( * ! ) & ? = @ # $Se o nome do produto estiver no formato
contentLanguage~feedLabel~offerIde não contiver caracteres usados pela API Merchant ou caracteres reservados para URL, você poderá usar o formato simples, sem codificação.Para garantir uma análise consistente e correta, recomendamos o uso da codificação base64url não preenchida para todos os nomes de produtos.
- Antes da codificação, a string precisa respeitar o formato
Remoção de informações fiscais no nível do produto:
taxesetaxCategory.Product.attributesrenomeado: o campoProduct.attributesfoi renomeado paraProduct.productAttributes.Remoção de informações fiscais no nível do produto: Os campos
taxesetaxCategoryforam removidos doProduct.productAttributesobjeto. Confira mais informações no artigo de ajuda do Google Merchant Center sobre impostos.Mudanças no campo GTIN: O campo
gtinno objetoProduct.productAttributesfoi renomeado paragtinspara refletir melhor que ele pode conter vários valores. O campogtinnoOrderTrackingSignals.lineItemDetailsobjeto agora é umarraye também foi renomeado paragtins.Remoção do campo de canal:o campo
channelfoi removido de produtos, entradas de produtos e fontes de dados. Um novo campo booleano,legacyLocal, foi introduzido para designar claramente os produtos vendidos exclusivamente em lojas físicas. Observação: o campolegacyLocalé um campo auxiliar para ajudar na migração e será descontinuado quando os métodos de marketing on-line e local puderem ser totalmente segmentados com uma única fonte de produtos. Confira mais informações na tabela da seção a seguir.Novos campos para atributos de inventário regional e local:
- Todos os
RegionalInventorycampos, excetoname,accounteregion, agora estão agrupados em um novo objeto chamadoregionalInventoryAttributes. Por exemplo, o atributoRegionalInventory.priceagora está emRegionalInventory.regionalInventoryAttributes.price. - Todos os
LocalInventorycampos, excetoname,accountestoreCode, agora estão agrupados em um novo objeto chamadolocalInventoryAttributes. Por exemplo, o atributoLocalInventory.priceagora está emLocalInventory.localInventoryAttributes.price.
- Todos os
Remoção de
customAttributesde inventários regionais e locais: OcustomAttributescampo foi removido dos recursosRegionalInventoryeLocalInventory.Criação de conta refinada:o campo
usersredundante foi removido doCreateAndConfigureAccountRequest. Use o campousersingular para associar um usuário inicial a uma nova conta.Alguns tipos de atributos foram alterados de strings para enums: Alguns campos nos recursos
ProducteInventorycom uma lista curta de valores definidos foram alterados do tipostringpara o tipoenumpara melhor validação de dados. Por exemplo, o campoProduct.ProductAttributes.conditionagora é umenum.Remoção do método de atualização da política de devolução on-line: O
onlineReturnPolicy.updatemétodo foi removido nav1. Crie uma política de devolução on-line usandoonlineReturnPolicy.createmétodo em vez disso.
Como migrar
A versão v1beta da API Merchant será descontinuada em 28 de fevereiro de 2026.
Para mais informações sobre a programação de descontinuação, consulte o
guia de controle de versões da API Merchant.
A primeira etapa da migração é fazer um registro de desenvolvedor único . Consulte Registrar-se como desenvolvedor. Você precisa chamar o método
registerGcppara cada projeto na nuvem do Google Cloud usado para autenticação antes que qualquer métodov1funcione.Independentemente de como você chama as APIs (com REST, gRPC ou usando bibliotecas de cliente), é possível migrar em etapas. Isso significa que você pode atualizar e migrar seu código uma API por vez (por exemplo, mover a
ProductsAPI parav1enquanto mantém aAccountsAPI emv1beta) sem precisar atualizar toda a integração de uma só vez.
Mudanças detalhadas no campo
Esta tabela oferece uma comparação detalhada dos campos que mudaram
entre as versões v1beta e v1.
| v1beta | v1 | Descrição |
|---|---|---|
ProductInput.name |
ProductInput.name |
Unpadded base64url encoding com suporte e obrigatória para
nomes de produtos que contêm caracteres usados pela API Merchant ou caracteres reservados para URL. |
Product.name |
Product.name |
Unpadded base64url encoding com suporte e obrigatória para
nomes de produtos que contêm caracteres usados pela API Merchant ou caracteres reservados para URL. |
Product.gtin |
Product.gtins |
O campo para GTINs foi renomeado. |
Product.taxes |
Removido | O campo taxes foi removido. |
Product.taxCategory |
Removido | O campo taxCategory foi removido. |
Product.channel |
Removido | O campo channel foi removido. Use o campo
legacyLocal para casos de uso local. |
Product.attributes |
Product.productAttributes |
O campo attributes foi renomeado para productAttributes.
|
availability, condition, gender, includedDestinations e excludedDestinations nos campos Product são representados como strings (ou array de strings) |
Esses campos agora são enums (ou array de enums) |
Os campos com uma lista curta de valores definidos foram alterados do tipo string para enum.
|
price, salePrice, salePriceEffectiveDate e availability em RegionalInventory |
Movido para RegionalInventory.regionalInventoryAttributes |
Esses campos foram movidos para regionalInventoryAttributes.
|
O campo RegionalInventory.availability é uma string |
RegionalInventory.regionalInventoryAttributes.availability agora é um enums |
O tipo de disponibilidade mudou de string para enum.
|
price, salePrice, salePriceEffectiveDate, availability, quantity, pickupMethod, pickupSla e instoreProductLocation em LocalInventory |
Movido para LocalInventory.localInventoryAttributes |
Esses campos foram movidos para localInventoryAttributes.
|
O campo LocalInventory.availability é uma string |
LocalInventory.localInventoryAttributes.availability agora é um enums |
O tipo de disponibilidade mudou de string para enum.
|
LocalInventory.customAttributes |
Removido | Os atributos personalizados não são mais aceitos para inventário local. |
RegionalInventory.customAttributes |
Removido | Os atributos personalizados não são mais aceitos para inventário regional. |
ProductInput.channel |
Removido | O campo channel foi removido. Use o campo
legacyLocal para casos de uso local. |
DataSource.channel |
Removido | O campo channel foi removido. Use o campo
legacyLocal para casos de uso local. |
| Indisponível | ProductInput.legacyLocal |
Um novo campo booleano para indicar que um produto só pode segmentar métodos de marketing locais O ID do recurso do produto terá o prefixo "local~". |
| Indisponível | Product.legacyLocal |
Um novo campo booleano para indicar que um produto é vendido apenas em lojas locais e não está disponível para compra on-line. |
| Indisponível | DataSource.legacyLocal |
Um novo campo booleano para indicar que uma fonte de dados contém produtos vendidos apenas em lojas locais. |
OrderTrackingSignals.LineItemDetails.gtin |
OrderTrackingSignals.LineItemDetails.gtins |
O campo gtin foi renomeado para gtins e
agora é uma matriz de strings (em vez de uma string). |
CreateAndConfigureAccountRequest.users |
Removido | O campo users foi removido. Use o campo
user para adicionar o administrador inicial à conta. |