Questa guida ti aiuta a eseguire la migrazione dalla versione dell'API Merchant v1beta alla versione v1, la prima
versione per la disponibilità generale. La versione v1 introduce diversi aggiornamenti e alcune modifiche che potrebbero richiedere aggiornamenti del codice. Queste modifiche sono progettate per semplificare l'API e migliorare la gestione del tuo account Merchant Center.
Differenze principali
Di seguito sono riportate le modifiche più importanti di cui devi tenere conto durante la migrazione da v1beta
a v1:
- Registrazione una tantum di almeno uno sviluppatore di API per utilizzare l'API Merchant:
dovrai chiamare il metodo
registerGcp(una sola volta per ogni progetto Google Cloud utilizzato per l'autenticazione) per fornire i tuoi dati di contatto, che ti consentono di utilizzare l'API e di ricevere aggiornamenti e annunci relativi all'API Merchant. Non potrai utilizzare alcuna APIv1ov1alphafinché non avrai completato questo passaggio. Per ulteriori informazioni sulla procedura di registrazione, consulta la sezione Registrazione. Codifica del nome del prodotto: i campi
ProductInput.nameeProduct.namesupportano la codifica base64url senza padding (RFC 4648 Sezione 5). Segui queste linee guida:- Prima della codifica, la stringa deve rispettare il formato
contentLanguage~feedLabel~offerId. La codifica è obbligatoria se il nome del prodotto contiene caratteri utilizzati dall'API Merchant o caratteri riservati per gli URL, ad esempio:
% . + / : ~ , ( * ! ) & ? = @ # $Se il nome del prodotto rispetta il
contentLanguage~feedLabel~offerIdformato e non contiene caratteri utilizzati dall'API Merchant o caratteri riservati per gli URL, puoi utilizzare il formato semplice, senza codifica.Per garantire un'analisi coerente e corretta, ti consigliamo di utilizzare la codifica base64url senza padding per tutti i nomi dei prodotti.
- Prima della codifica, la stringa deve rispettare il formato
Rimozione dei dati fiscali a livello di prodotto:
taxesetaxCategory.Product.attributesrinominato: il campoProduct.attributesè stato rinominato inProduct.productAttributes.Rimozione dei dati fiscali a livello di prodotto: I campi
taxesetaxCategorysono stati rimossi dall'Product.productAttributesoggetto. Per ulteriori informazioni, consulta l' articolo del Centro assistenza Google Merchant Center relativo alle imposte.Modifiche al campo GTIN: Il campo
gtinnell'oggettoProduct.productAttributesè stato rinominato ingtinsper riflettere meglio il fatto che può contenere più valori. Anche il campogtinnell'OrderTrackingSignals.lineItemDetailsoggetto è ora unarrayed è stato rinominato ingtinsas well.Rimozione del campo canale: il campo
channelè stato rimosso da prodotti, input di prodotto e origini dati. È stato introdotto un nuovo campo booleano,legacyLocal, per designare chiaramente i prodotti venduti esclusivamente nei negozi fisici. Nota: il campolegacyLocalè un campo ausiliario per facilitare la migrazione e verrà ritirato una volta che i metodi di marketing online e locale potranno essere completamente targetizzati con una singola origine prodotto. Per ulteriori informazioni, consulta la tabella nella sezione seguente.Nuovi campi per gli attributi di inventario regionale e locale:
- Tutti i campi
RegionalInventorytrannename,accounteregionsono ora racchiusi in un nuovo oggetto chiamatoregionalInventoryAttributes. Ad esempio, l'attributoRegionalInventory.pricesi trova ora inRegionalInventory.regionalInventoryAttributes.price. - Tutti i
LocalInventorycampi trannename,accountestoreCodesono ora racchiusi in un nuovo oggetto chiamatolocalInventoryAttributes. Ad esempio, l'attributoLocalInventory.pricesi trova ora inLocalInventory.localInventoryAttributes.price.
- Tutti i campi
Rimozione di
customAttributesdagli inventari regionali e locali: Il campocustomAttributesè stato rimosso dalle risorseRegionalInventoryeLocalInventory.Creazione dell'account perfezionata: il campo ridondante
usersè stato rimosso daCreateAndConfigureAccountRequest. Utilizza il campouseral singolare per associare un utente iniziale a un nuovo account.Alcuni tipi di attributi sono stati modificati da stringhe a enum: Alcuni campi all'interno delle risorse
ProducteInventorycon un elenco breve di valori definiti sono stati modificati dal tipostringal tipoenumper una migliore convalida dei dati (ad esempio, il campoProduct.ProductAttributes.conditionè ora unenum).Rimozione del metodo di aggiornamento delle norme sui resi online: Il
onlineReturnPolicy.updatemetodo viene rimosso inv1. Crea invece una norma sui resi online utilizzando ilonlineReturnPolicy.createmetodo.
Come eseguire la migrazione
La versione v1beta dell'API Merchant verrà ritirata il 28 febbraio 2026.
Per ulteriori informazioni sulla pianificazione del ritiro, consulta la
guida al controllo delle versioni dell'API Merchant.
Il primo passo per la migrazione è eseguire una registrazione una tantum dello sviluppatore (vedi Registrarsi come sviluppatore). Prima che i metodi
v1funzionino, devi chiamare il metodoregisterGcpper ogni progetto cloud di Google Cloud che utilizzi per l'autenticazione.Indipendentemente dalla modalità di chiamata delle API (con REST, gRPC o utilizzando le librerie client), puoi eseguire la migrazione in più fasi. Ciò significa che puoi aggiornare ed eseguire la migrazione del codice un'API alla volta (ad esempio, spostando l'API
Productssuv1mantenendo l'APIAccountssuv1beta) senza dover aggiornare l'intera integrazione contemporaneamente.
Modifiche dettagliate dei campi
Questa tabella fornisce un confronto dettagliato dei campi che sono stati modificati
tra le v1beta e v1 versioni.
| v1beta | v1 | Descrizione |
|---|---|---|
ProductInput.name |
ProductInput.name |
Unpadded base64url encoding supportata e obbligatoria per
i nomi dei prodotti che contengono caratteri utilizzati dall'API Merchant o caratteri riservati per gli URL. |
Product.name |
Product.name |
Unpadded base64url encoding supportata e obbligatoria per
i nomi dei prodotti che contengono caratteri utilizzati dall'API Merchant o caratteri riservati per gli URL. |
Product.gtin |
Product.gtins |
Il campo per i GTIN è stato rinominato. |
Product.taxes |
Rimosso | Il campo taxes è stato rimosso. |
Product.taxCategory |
Rimosso | Il campo taxCategory è stato rimosso. |
Product.channel |
Rimosso | Il campo channel è stato rimosso. Utilizza il
legacyLocal campo per i casi d'uso locali. |
Product.attributes |
Product.productAttributes |
Il campo attributes è stato rinominato in productAttributes.
|
availability, condition, gender, includedDestinations e excludedDestinations nei campi Product sono rappresentati come strings (o array di strings) |
Questi campi sono ora enums (o array di enums) |
I campi con un elenco breve di valori definiti sono stati modificati dal tipo string al tipo enum.
|
price, salePrice, salePriceEffectiveDate e availability in RegionalInventory |
Spostato in RegionalInventory.regionalInventoryAttributes |
Questi campi sono stati spostati in regionalInventoryAttributes.
|
Il campo RegionalInventory.availability è una string |
RegionalInventory.regionalInventoryAttributes.availability è ora un enums |
Il tipo di disponibilità è stato modificato da string a enum.
|
price, salePrice, salePriceEffectiveDate, availability, quantity, pickupMethod, pickupSla e instoreProductLocation in LocalInventory |
Spostato in LocalInventory.localInventoryAttributes |
Questi campi sono stati spostati in localInventoryAttributes.
|
Il campo LocalInventory.availability è una string |
LocalInventory.localInventoryAttributes.availability è ora un enums |
Il tipo di disponibilità è stato modificato da string a enum.
|
LocalInventory.customAttributes |
Rimosso | Gli attributi personalizzati non sono più supportati per l'inventario locale. |
RegionalInventory.customAttributes |
Rimosso | Gli attributi personalizzati non sono più supportati per l'inventario regionale. |
ProductInput.channel |
Rimosso | Il campo channel è stato rimosso. Utilizza il
legacyLocal campo per i casi d'uso locali. |
DataSource.channel |
Rimosso | Il campo channel è stato rimosso. Utilizza il
legacyLocal campo per i casi d'uso locali. |
| Non disponibile | ProductInput.legacyLocal |
Un nuovo campo booleano per indicare che un prodotto può essere targetizzato solo con metodi di marketing locali marketing. L'ID risorsa prodotto avrà il prefisso "local~". |
| Non disponibile | Product.legacyLocal |
Un nuovo campo booleano per indicare che un prodotto viene venduto solo nei negozi locali e non è disponibile per l'acquisto online. |
| Non disponibile | DataSource.legacyLocal |
Un nuovo campo booleano per indicare che un'origine dati contiene prodotti venduti solo nei negozi locali. |
OrderTrackingSignals.LineItemDetails.gtin |
OrderTrackingSignals.LineItemDetails.gtins |
Il campo gtin è stato rinominato in gtins e
è ora un array di stringhe (anziché una stringa). |
CreateAndConfigureAccountRequest.users |
Rimosso | Il campo users è stato rimosso. Utilizza il
user campo per aggiungere l'amministratore iniziale all'account. |