Gestire le impostazioni omnicanale

L'API OmnichannelSettings è il punto di accesso per configurare i programmi annunci di inventario locale (LIA) e schede locali senza costi (FLL).

Utilizzalo per

  • Gestire (creare e aggiornare) le impostazioni omnicanale
  • Recupera (ottieni ed elenca) le impostazioni omnicanale
  • Richiedere la verifica dell'inventario per i commercianti idonei

Per saperne di più, consulta la panoramica degli annunci di inventario locale e delle schede locali senza costi.

Prerequisiti

Dovresti avere

Crea un'impostazione omnicanale

Puoi utilizzare il metodo omnichannelSettings.create per creare un'impostazione omnicanale. Il metodo create accetta una risorsa omnichannelSetting come input e restituisce l'impostazione omnicanale creata, se l'operazione va a buon fine.

Quando crei un'offerta, devi compilare sia il campo regionCode sia il campo LsfType:

  • OmnichannelSetting è su base nazionale. RegionCode definisce il paese di destinazione. Una volta creato, non puoi modificarlo. RegionCode deve rispettare la regola di denominazione definita dal progetto Common Locale Data Repository (CLDR).
  • LsfType si basa sulla pagina del prodotto. Per maggiori dettagli, vedi LsfType.

Per maggiori dettagli, consulta Modificare l'esperienza sulla pagina di prodotto per gli annunci di inventario locale.

Non devi compilare tutti i campi durante la fase di creazione, ma puoi configurarli in un secondo momento. Per aggiornare un omnichannelSetting esistente, consulta Aggiornare un'impostazione omnicanale.

Ecco una richiesta di esempio se scegli MHLSF_BASIC e ti registri inStock:

POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/omnichannelSettings

{
  "regionCode": "{REGION_CODE}",
  "lsfType: "MHLSF_BASIC",
  "inStock": {
      "uri": "{URI}"
  }
}

Sostituisci quanto segue:

  • {ACCOUNT_ID}: l'identificatore univoco del tuo account Merchant Center
  • {REGION_CODE}: un codice regione definito da CLDR
  • {URI}: un URI valido utilizzato per la recensione specificata. Un URI non idoneo potrebbe impedire l'approvazione.

Una volta eseguita correttamente la richiesta, dovresti visualizzare la seguente risposta:

{
  "name": "accounts/{ACCOUNT_ID}/omnichannelSettings/{omnichannel_setting}",
  "regionCode": "{REGION_CODE}",
  "lsfType: "MHLSF_BASIC",
  "inStock": {
      "uri": "{URI}",
      "state": "RUNNING"
  }
}

La registrazione di diverse funzionalità LIA/FLL utilizzando i campi omnichannelSetting attiva revisioni manuali che in genere richiedono da un paio di ore a un paio di giorni. Ti consigliamo di ricontrollare i dati inseriti per evitare tempi di attesa inutili dovuti a dati non idonei.

Per visualizzare l'impostazione omnicanale appena creata o controllare lo stato delle recensioni, utilizza accounts.omnichannelSettings.get o accounts.omnichannelSettings.list, specificando il paese.

Tipo di vetrina locale

In base alla pagina di prodotto che prevedi di utilizzare, scegli un LsfType:

Tipo di pagina di prodotto LsfType Valore enum
Pagine di prodotto con disponibilità in negozio Vetrina locale ospitata dal commerciante (implementazione di base) MHLSF_BASIC
Pagine di prodotto specifiche per i singoli negozi con disponibilità e prezzo Vetrina locale ospitata dal commerciante (implementazione completa) MHLSF_FULL
Pagine di prodotto senza disponibilità in negozio Vetrina locale su Google GHLSF

Se scegli i tipi di vetrina locale ospitata dal commerciante, devi anche compilare il campo URI per almeno uno dei seguenti valori: inStock o pickup.

InStock

Puoi utilizzare InStock per fornire ulteriori informazioni sulla pagina del prodotto.

Se scegli i tipi di vetrina locale ospitata dal commerciante e specifichi il campo URI in InStock, mostri la tua intenzione di pubblicare prodotti con disponibilità in stock. Inizieremo una revisione in base all'URI fornito.

Se scegli il tipo GHLSF, devi fornire un campo InStock vuoto nella richiesta. A differenza dei tipi di LSF ospitati dal commerciante, per completare l'onboarding devi completare la procedura di verifica dell'inventario.

Questo codice di esempio crea un omnichannelSetting con GHLSF:

package shopping.merchant.samples.accounts.v1;

// [START merchantapi_create_omnichannel_setting]
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.accounts.v1.AccountName;
import com.google.shopping.merchant.accounts.v1.CreateOmnichannelSettingRequest;
import com.google.shopping.merchant.accounts.v1.InStock;
import com.google.shopping.merchant.accounts.v1.OmnichannelSetting;
import com.google.shopping.merchant.accounts.v1.OmnichannelSetting.LsfType;
import com.google.shopping.merchant.accounts.v1.OmnichannelSettingsServiceClient;
import com.google.shopping.merchant.accounts.v1.OmnichannelSettingsServiceSettings;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;

/**
 *   This class demonstrates how to create an omnichannel setting for a given Merchant Center account
 *   in a given country
 */
public class CreateOmnichannelSettingSample {

  public static void createOmnichannelSetting(Config config, String regionCode) throws Exception {

    // Obtains OAuth token based on the user's configuration.
    GoogleCredentials credential = new Authenticator().authenticate();

    // Creates service settings using the retrieved credentials.
    OmnichannelSettingsServiceSettings omnichannelSettingsServiceSettings =
        OmnichannelSettingsServiceSettings.newBuilder()
            .setCredentialsProvider(FixedCredentialsProvider.create(credential))
            .build();

    // Calls the API and catches and prints any network failures/errors.
    try (OmnichannelSettingsServiceClient omnichannelSettingsServiceClient =
        OmnichannelSettingsServiceClient.create(omnichannelSettingsServiceSettings)) {
      String accountId = config.getAccountId().toString();
      String parent = AccountName.newBuilder().setAccount(accountId).build().toString();

      // Creates an omnichannel setting with GHLSF type in the given country.
      CreateOmnichannelSettingRequest request =
          CreateOmnichannelSettingRequest.newBuilder()
              .setParent(parent)
              .setOmnichannelSetting(
                  OmnichannelSetting.newBuilder()
                      .setRegionCode(regionCode)
                      .setLsfType(LsfType.GHLSF)
                      .setInStock(InStock.getDefaultInstance())
                      .build())
              .build();

      System.out.println("Sending create omnichannel setting request:");
      OmnichannelSetting response =
          omnichannelSettingsServiceClient.createOmnichannelSetting(request);

      System.out.println("Inserted Omnichannel Setting below:");
      System.out.println(response);
    } catch (Exception e) {
      System.out.println("An error has occurred: ");
      System.out.println(e);
    }
  }

  public static void main(String[] args) throws Exception {
    Config config = Config.load();

    // The country which you're targeting at.
    String regionCode = "{REGION_CODE}";

    createOmnichannelSetting(config, regionCode);
  }
}
// [END merchantapi_list_omnichannel_settings]

Ritiro

Oltre alla disponibilità in negozio, puoi anche migliorare i prodotti disponibili in negozio con la funzionalità Ritira, idonea solo per i tipi di annunci di inventario locale ospitati dal commerciante.

Quando un prodotto è contrassegnato per il ritiro, significa che un cliente può acquistarlo online e ritirarlo in negozio. Se imposti il campo Pickup, mostri la tua intenzione di pubblicare prodotti con un contratto di servizio per il ritiro. Inizieremo una revisione in base all'URI fornito.

Di seguito è riportata una richiesta di esempio che crea un'impostazione omnichannel con Pickup:

POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/omnichannelSettings

{
  "regionCode": "{REGION_CODE}",
  "lsfType: "MHLSF_BASIC",
  "pickup": {
     "uri: "{URI}"
  }
}

In esposizione, può essere ordinato

Con la funzionalità In esposizione, può essere ordinato puoi mostrare i prodotti esposti nel tuo negozio fisico, ma non disponibili per un acquisto immediato. Ad esempio, mobili di grandi dimensioni:

  • I clienti che cercano prodotti simili su Google visualizzeranno questi annunci con l'annotazione "In negozio" nei risultati di ricerca.
  • I clienti che esplorano il negozio in una pagina dei risultati di ricerca di Google vedranno questi prodotti contrassegnati come "Ordinabile".

Possono scegliere l'annuncio di inventario locale o la scheda locale senza costi per visualizzare l'articolo. Per acquistare l'articolo, possono visitare il tuo negozio fisico, visualizzarlo e quindi ordinarlo, scegliendo tra la spedizione a domicilio oppure presso il tuo negozio, dove potranno ritirarlo.

Pagina Informazioni (Germania, Austria e Svizzera)

Se pubblichi annunci in Austria e Germania e scegli GHLSF, devi inviare una pagina Informazioni.

Se pubblichi annunci in Svizzera, devi inviare una pagina "Informazioni" indipendentemente da LsfType.

Finché l'URL della pagina Informazioni non viene verificato, i commercianti GHLSF non possono richiedere la verifica manuale dell'inventario da parte di Google.

Per tutti i commercianti di questi tre paesi, il servizio non attiva le funzionalità FLL/LIA finché la pagina Chi siamo non viene approvata.

Verifica dell'inventario

La verifica dell'inventario è obbligatoria solo per i commercianti GHLSF. Non è supportato per i tipi MHLSF.

Prima o dopo aver aggiunto i dati di prodotto e di inventario (utilizzando accounts.products.localInventories.insert o l'interfaccia utente di Merchant Center), devi verificare il tuo contatto. Fornisci un contatto per la verifica dell'inventario (nome e indirizzo email) utilizzando il metodo create o update. Il contatto riceverà un'email inviata da Google e potrà verificare il proprio stato facendo clic su un pulsante nel messaggio.

Una volta completata questa operazione, puoi richiedere la verifica dell'inventario. Per saperne di più, consulta Informazioni sulla verifica dell'inventario.

Puoi modificare il contatto durante la procedura di verifica o dopo la verifica utilizzando omnichannelSetting.update.

Al termine della procedura, Google convalida l'accuratezza delle informazioni fornite.

Recupera un'impostazione omnicanale

Per recuperare la configurazione omnichannelSetting in un determinato paese o controllare lo stato attuale delle recensioni, utilizza il metodo omnichannelSettings.get.

Ecco una richiesta di esempio:

GET https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/omnichannelSettings/{OMNICHANNEL_SETTING}

Sostituisci quanto segue:

  • {ACCOUNT_ID}: l'identificatore univoco del tuo account Merchant Center
  • {OMNICHANNEL_SETTING}: Il codice regione del paese di destinazione

Lo stato ACTIVE indica che la revisione è stata approvata.

Se lo stato è FAILED, risolvi i problemi e attiva una nuova revisione chiamando il numero omnichannelSetting.update.

Il campo di sola lettura LFP mostra lo stato della partnership per i feed locali. Per collegarti alla partnership, utilizza lfpProviders.linkLfpProvider.

Per saperne di più sul controllo degli stati e sul loro significato, vedi Visualizzare lo stato di un'impostazione omnicanale.

Elenca le impostazioni omnicanale

Per recuperare tutte le informazioni omnichannelSetting del tuo account, utilizza il metodo omnichannelSettings.list.

Ecco un esempio di codice:

package shopping.merchant.samples.accounts.v1;

// [START merchantapi_list_omnichannel_settings]
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.accounts.v1.AccountName;
import com.google.shopping.merchant.accounts.v1.ListOmnichannelSettingsRequest;
import com.google.shopping.merchant.accounts.v1.OmnichannelSetting;
import com.google.shopping.merchant.accounts.v1.OmnichannelSettingsServiceClient;
import com.google.shopping.merchant.accounts.v1.OmnichannelSettingsServiceClient.ListOmnichannelSettingsPagedResponse;
import com.google.shopping.merchant.accounts.v1.OmnichannelSettingsServiceSettings;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;

/**
 *   This class demonstrates how to get the list of omnichannel settings for a given Merchant Center
 *   account
 */
public class ListOmnichannelSettingsSample {

  public static void omnichannelSettings(Config config) throws Exception {

    // Obtains OAuth token based on the user's configuration.
    GoogleCredentials credential = new Authenticator().authenticate();

    // Creates service settings using the retrieved credentials.
    OmnichannelSettingsServiceSettings omnichannelSettingsServiceSettings =
        OmnichannelSettingsServiceSettings.newBuilder()
            .setCredentialsProvider(FixedCredentialsProvider.create(credential))
            .build();

    String accountId = config.getAccountId().toString();
    String parent = AccountName.newBuilder().setAccount(accountId).build().toString();

    // Calls the API and catches and prints any network failures/errors.
    try (OmnichannelSettingsServiceClient omnichannelSettingsServiceClient =
        OmnichannelSettingsServiceClient.create(omnichannelSettingsServiceSettings)) {
      ListOmnichannelSettingsRequest request =
          ListOmnichannelSettingsRequest.newBuilder().setParent(parent).build();

      System.out.println("Sending list omnichannel setting request:");
      ListOmnichannelSettingsPagedResponse response =
          omnichannelSettingsServiceClient.listOmnichannelSettings(request);

      int count = 0;

      // Iterates over all the entries in the response.
      for (OmnichannelSetting omnichannelSetting : response.iterateAll()) {
        System.out.println(omnichannelSetting);
        count++;
      }
      System.out.println(String.format("The following count of elements were returned: %d", count));
    } catch (Exception e) {
      System.out.println("An error has occurred: ");
      System.out.println(e);
    }
  }

  public static void main(String[] args) throws Exception {
    Config config = Config.load();

    omnichannelSettings(config);
  }
}
// [END merchantapi_list_omnichannel_settings]

Aggiornare un'impostazione omnicanale

Per aggiornare la configurazione di un'impostazione omnicanale esistente, utilizza il metodo omnichannelSettings.update.

Per eseguire l'aggiornamento, devi aggiungere la funzionalità che vuoi alla maschera di aggiornamento e compilare i campi corrispondenti nel campo omnichannelSetting della richiesta di aggiornamento. Puoi aggiornare uno qualsiasi dei

  • lsfType
  • inStock
  • pickup
  • odo
  • about
  • inventoryVerification

Se un attributo non è incluso nella maschera di aggiornamento, non verrà aggiornato.

Se un attributo è incluso nella maschera di aggiornamento, ma non impostato nella richiesta, verrà cancellato.

Il seguente esempio di codice mostra come aggiornare il campo di verifica dell'inventario.

package shopping.merchant.samples.accounts.v1;

// [START merchantapi_update_omnichannel_setting]
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.protobuf.FieldMask;
import com.google.shopping.merchant.accounts.v1.InventoryVerification;
import com.google.shopping.merchant.accounts.v1.OmnichannelSetting;
import com.google.shopping.merchant.accounts.v1.OmnichannelSettingName;
import com.google.shopping.merchant.accounts.v1.OmnichannelSettingsServiceClient;
import com.google.shopping.merchant.accounts.v1.OmnichannelSettingsServiceSettings;
import com.google.shopping.merchant.accounts.v1.UpdateOmnichannelSettingRequest;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;

/**
 *   This class demonstrates how to update an omnichannel setting for a given Merchant Center account
 *   in a given country
 */
public class UpdateOmnichannelSettingSample {

  public static void updateOmnichannelSettings(
      Config config, String regionCode, String contact, String email) throws Exception {

    // Obtains OAuth token based on the user's configuration.
    GoogleCredentials credential = new Authenticator().authenticate();

    // Creates service settings using the retrieved credentials.
    OmnichannelSettingsServiceSettings omnichannelSettingsServiceSettings =
        OmnichannelSettingsServiceSettings.newBuilder()
            .setCredentialsProvider(FixedCredentialsProvider.create(credential))
            .build();

    // Calls the API and catches and prints any network failures/errors.
    try (OmnichannelSettingsServiceClient omnichannelSettingsServiceClient =
        OmnichannelSettingsServiceClient.create(omnichannelSettingsServiceSettings)) {
      String accountId = config.getAccountId().toString();
      String name =
          OmnichannelSettingName.newBuilder()
              .setAccount(accountId)
              .setOmnichannelSetting(regionCode)
              .build()
              .toString();

      OmnichannelSetting omnichannelSetting =
          OmnichannelSetting.newBuilder()
              .setName(name)
              .setInventoryVerification(
                  InventoryVerification.newBuilder()
                      .setContact(contact)
                      .setContactEmail(email)
                      .build())
              .build();
      FieldMask fieldMask = FieldMask.newBuilder().addPaths("inventory_verification").build();
      UpdateOmnichannelSettingRequest request =
          UpdateOmnichannelSettingRequest.newBuilder()
              .setOmnichannelSetting(omnichannelSetting)
              .setUpdateMask(fieldMask)
              .build();

      System.out.println("Sending update omnichannel setting request:");
      OmnichannelSetting response =
          omnichannelSettingsServiceClient.updateOmnichannelSetting(request);

      System.out.println("Updated Omnichannel Setting below:");
      System.out.println(response);
    } catch (Exception e) {
      System.out.println("An error has occurred: ");
      System.out.println(e);
    }
  }

  public static void main(String[] args) throws Exception {
    Config config = Config.load();

    // The country which you're targeting at.
    String regionCode = "{REGION_CODE}";
    // The name of the inventory verification contact you want to update.
    String contact = "{NAME}";
    // The address of the inventory verification email you want to update.
    String email = "{EMAIL}";

    updateOmnichannelSettings(config, regionCode, contact, email);
  }
}
// [END merchantapi_update_omnichannel_setting]

Richiedere la verifica dell'inventario

omnichannelSettings.requestInventoryVerification è pertinente solo per i commercianti GHLSF.

Prima di chiamare questa RPC, devi aver eseguito le seguenti operazioni:

  • Carica i dati di prodotto e di inventario.
  • Verifica un contatto per la verifica dell'inventario.
  • Per i commercianti in Austria, Germania o Svizzera, completa una revisione della pagina About.

Per determinare la tua idoneità, chiama il numero omnichannelSettings.get e controlla omnichannelSetting.inventoryVerification.state. Se viene visualizzato INACTIVE, puoi chiamare omnichannelSettings.requestInventoryVerification.

package shopping.merchant.samples.accounts.v1;

// [START merchantapi_request_inventory_verification]
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.accounts.v1.OmnichannelSettingName;
import com.google.shopping.merchant.accounts.v1.OmnichannelSettingsServiceClient;
import com.google.shopping.merchant.accounts.v1.OmnichannelSettingsServiceSettings;
import com.google.shopping.merchant.accounts.v1.RequestInventoryVerificationRequest;
import com.google.shopping.merchant.accounts.v1.RequestInventoryVerificationResponse;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;

/**
 *   This class demonstrates how to request inventory verification for a given Merchant Center account
 *   in a given country
 */
public class RequestInventoryVerificationSample {

  public static void requestInventoryVerification(Config config, String regionCode)
      throws Exception {

    // Obtains OAuth token based on the user's configuration.
    GoogleCredentials credential = new Authenticator().authenticate();

    // Creates service settings using the retrieved credentials.
    OmnichannelSettingsServiceSettings omnichannelSettingsServiceSettings =
        OmnichannelSettingsServiceSettings.newBuilder()
            .setCredentialsProvider(FixedCredentialsProvider.create(credential))
            .build();

    // Calls the API and catches and prints any network failures/errors.
    try (OmnichannelSettingsServiceClient omnichannelSettingsServiceClient =
        OmnichannelSettingsServiceClient.create(omnichannelSettingsServiceSettings)) {
      String accountId = config.getAccountId().toString();
      String name =
          OmnichannelSettingName.newBuilder()
              .setAccount(accountId)
              .setOmnichannelSetting(regionCode)
              .build()
              .toString();
      RequestInventoryVerificationRequest request =
          RequestInventoryVerificationRequest.newBuilder().setName(name).build();

      System.out.println("Sending request inventory verification request:");
      RequestInventoryVerificationResponse response =
          omnichannelSettingsServiceClient.requestInventoryVerification(request);

      System.out.println("Omnichannel Setting after inventory verification request below:");
      System.out.println(response);
    } catch (Exception e) {
      System.out.println("An error has occurred: ");
      System.out.println(e);
    }
  }

  public static void main(String[] args) throws Exception {
    Config config = Config.load();

    // The country which you're targeting at.
    String regionCode = "{REGION_CODE}";

    requestInventoryVerification(config, regionCode);
  }
}
// [END merchantapi_request_inventory_verification]

Visualizza lo stato di un'impostazione omnicanale.

Per controllare lo stato di revisione delle revisioni di onboarding degli annunci di inventario locale, controlla ReviewState per gli attributi corrispondenti di omnichannelSetting restituiti dai metodi omnichannelSettings.get o omnichannelSettings.list.

Il campo ReviewState si applica a tutte le revisioni di onboarding, ad eccezione del processo di verifica dell'inventario, e può avere i seguenti valori:

  • ACTIVE: è approvato.
  • FAILED: è stato rifiutato.
  • RUNNING: è ancora in fase di revisione.
  • ACTION_REQUIRED: questo esiste solo in InStock.state per i commercianti GHLSF. Significa che devi richiedere la verifica dell'inventario per attivare gli annunci di inventario locale.

InventoryVerification.State ha i seguenti valori:

  • SUCCEEDED: è approvato.
  • INACTIVE: puoi richiedere la verifica dell'inventario.
  • RUNNING: è in corso di revisione
  • SUSPENDED: La verifica dell'inventario non è riuscita troppe volte (di solito 5) e devi attendere prima di poterla richiedere di nuovo.
  • ACTION_REQUIRED: Devi intraprendere ulteriori azioni prima di richiedere la verifica dell'inventario.

Questa sezione descrive come risolvere i problemi comuni.

Crea un'impostazione omnicanale

  • Assicurati di impostare sia LsfType che RegionCode.
  • Se scegli GHLSF, fornisci un InStock vuoto nella richiesta.
  • Se scegli i tipi di LSF ospitati dal commerciante, fornisci almeno un URI in InStock o Pickup.

Aggiornare un'impostazione omnicanale

Il metodo di aggiornamento per questa risorsa richiede le seguenti regole aggiuntive:

  • Non puoi modificare il codice regione.
  • Non puoi apportare aggiornamenti mentre la funzionalità Annunci di inventario locale/Feed di inventario locale è in esecuzione o è stata approvata.
  • Quando passi dai tipi di LSF ospitati dal commerciante a GHLSF, se InStock e Pickup sono stati configurati in precedenza, devi includerli nella maschera di aggiornamento insieme all'aggiornamento di LsfType.

Ad esempio, se in precedenza hai richiesto MHLSF_BASIC e Pickup e queste sono state rifiutate, puoi passare a GHLSF inviando una richiesta come questa:

PATCH https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/omnichannelSettings/{REGION_CODE}?update_mask=lsf_type,in_stock,pickup

{
  "lsfType: "GHLSF",
  "inStock": {},
}

Sostituisci quanto segue:

  • {ACCOUNT_ID}: l'identificatore univoco del tuo account Merchant Center
  • {REGION_CODE}: un codice regione definito da CLDR

Richiedere la verifica dell'inventario

Se, nonostante l'aggiornamento dei feed dei prodotti o dell'inventario e la conferma del contatto, InventoryVerification.state è diverso da INACTIVE:

  • Per i commercianti in Austria, Germania e Svizzera: assicurati di aver completato una revisione della pagina Informazioni.
  • Ci sarà un ritardo di circa 48 ore.
  • In caso di errori ripetuti di controllo dell'inventario (più di cinque), il servizio impone un periodo di attesa di 30 giorni prima di consentire un'altra richiesta. Contatta l'Assistenza Google se vuoi richiederlo in anticipo.

Scopri di più

Per ulteriori dettagli, consulta il Centro assistenza annunci di inventario locale e schede locali senza costi.