Esta guía te ayuda a migrar de la API de Merchant v1beta a v1, la primera versión para la disponibilidad general. La versión 1 incluye varias actualizaciones y algunos cambios que podrían requerir actualizaciones de código. Estos cambios están diseñados para simplificar la API y mejorar la administración de tu cuenta de Merchant Center.
Diferencias clave
Estos son los cambios más importantes que debes tener en cuenta cuando migres de v1beta a v1:
- Registro único de al menos un desarrollador de la API para usar la API de Merchant:
Deberás llamar al método registerGcp(solo una vez para cada proyecto de Google Cloud que se use para la autenticación) para proporcionar tus detalles de contacto, lo que te permitirá usar la API y recibir actualizaciones y anuncios relacionados con la API de Merchant. No podrás usar ninguna API dev1ov1alphahasta que se complete este paso. Para obtener instrucciones, consulta Regístrate como desarrollador
- Se cambió el nombre de Product.attributes: Se cambió el nombre del campoProduct.attributesporProduct.productAttributes.
- Eliminación de la información fiscal a nivel del producto: Se quitaron los campos taxesytaxCategorydel objetoProduct.productAttributes. Consulta el artículo de ayuda de Google Merchant Center sobre impuestos para obtener más información.
- Cambios en el campo GTIN: Se cambió el nombre del campo gtinen el objetoProduct.productAttributesagtinspara reflejar mejor que puede contener varios valores. El campogtinen el objetoOrderTrackingSignals.lineItemDetailsahora es unarrayy también se cambió su nombre agtins.
- Eliminación del campo Channel: Se quitó el campo channelde los productos, las entradas de productos y las fuentes de datos. Se introdujo un nuevo campo booleano,legacyLocal, para designar claramente los productos que se venden exclusivamente en tiendas físicas. Nota: El campolegacyLocales un campo auxiliar para ayudar con la migración y, finalmente, quedará obsoleto cuando los métodos de marketing en línea y local se puedan segmentar por completo con una sola fuente de productos. Consulta la tabla de la siguiente sección para obtener más información.
- Nuevos campos para los atributos de inventario regional y local:
- Todos los campos RegionalInventory, exceptoname,accountyregion, ahora se incluyen en un objeto nuevo llamadoregionalInventoryAttributes. Por ejemplo, el atributoRegionalInventory.priceahora se encuentra enRegionalInventory.regionalInventoryAttributes.price.
- Todos los campos LocalInventory, exceptoname,accountystoreCode, ahora se incluyen en un objeto nuevo llamadolocalInventoryAttributes. Por ejemplo, el atributoLocalInventory.priceahora se encuentra enLocalInventory.localInventoryAttributes.price.
 
- Todos los campos 
- Se quitó customAttributesde los inventarios regionales y locales: Se quitó el campocustomAttributesde los recursosRegionalInventoryyLocalInventory.
- Creación de cuentas perfeccionada: Se quitó el campo redundante usersdeCreateAndConfigureAccountRequest. Usa el campo singularuserpara asociar un usuario inicial con una cuenta nueva.
- Se cambiaron ciertos tipos de atributos de cadenas a enumeraciones: Algunos campos dentro de los recursos ProductyInventorycon una lista corta de valores definida se cambiaron del tipostringal tipoenumpara una mejor validación de datos (por ejemplo, el campoProduct.ProductAttributes.conditionahora es unenum).
- Se quitó el método de actualización de la política de devoluciones en línea: El método onlineReturnPolicy.updatese quitó env1. En su lugar, crea una política de devoluciones en línea con el métodoonlineReturnPolicy.create.
Cómo realizar la migración
Está previsto que la versión v1beta de la API de Merchant deje de estar disponible el 28 de febrero de 2026.
Para obtener más información sobre el cronograma de baja, consulta la guía de control de versiones de la API de Merchant.
- El primer paso para migrar es registrarte como desarrollador por única vez (consulta Cómo registrarte como desarrollador). Debes llamar al método - registerGcppara cada proyecto de Google Cloud que uses para la autenticación antes de que funcione cualquier método- v1.
- Independientemente de cómo llames a las APIs (con REST, gRPC o con bibliotecas cliente), puedes migrar en etapas. Esto significa que puedes actualizar y migrar tu código una API a la vez (por ejemplo, mover la API de - Productsa- v1y mantener la API de- Accountsen- v1beta) sin tener que actualizar toda tu integración de una vez.
Cambios detallados en los campos
En esta tabla, se proporciona una comparación detallada de los campos que cambiaron entre las versiones v1beta y v1.
| v1beta | v1 | Descripción | 
|---|---|---|
| Product.gtin | Product.gtins | Se cambió el nombre del campo para los GTIN. | 
| Product.taxes | Quitada | Se quitó el campo taxes | 
| Product.taxCategory | Quitada | Se quitó el campo taxCategory | 
| Product.channel | Quitada | Se quitó el campo channel. Usa el campolegacyLocalpara los casos de uso locales. | 
| Product.attributes | Product.productAttributes | Se cambió el nombre del campo attributesaproductAttributes. | 
| availability,condition,gender,includedDestinationsyexcludedDestinationsen los camposProductse representan comostrings(oarraydestrings) | Estos campos ahora son enums(oarraydeenums). | Los campos con una lista corta de valores definida se cambiaron del tipo stringaenum. | 
| price,salePrice,salePriceEffectiveDateyavailabilityenRegionalInventory | Se movió a RegionalInventory.regionalInventoryAttributes | Estos campos se trasladaron a regionalInventoryAttributes. | 
| El campo RegionalInventory.availabilityes unstring | RegionalInventory.regionalInventoryAttributes.availabilityahora es unenums | El tipo de disponibilidad cambió de stringaenum. | 
| price,salePrice,salePriceEffectiveDate,availability,quantity,pickupMethod,pickupSlayinstoreProductLocationenLocalInventory | Se movió a LocalInventory.localInventoryAttributes | Estos campos se trasladaron a localInventoryAttributes. | 
| El campo LocalInventory.availabilityes unstring | LocalInventory.localInventoryAttributes.availabilityahora es unenums | El tipo de disponibilidad cambió de stringaenum. | 
| LocalInventory.customAttributes | Quitada | Los atributos personalizados ya no son compatibles con el inventario local. | 
| RegionalInventory.customAttributes | Quitada | Ya no se admiten los atributos personalizados para el inventario regional. | 
| ProductInput.channel | Quitada | Se quitó el campo channel. Usa el campolegacyLocalpara los casos de uso locales. | 
| DataSource.channel | Quitada | Se quitó el campo channel. Usa el campolegacyLocalpara los casos de uso locales. | 
| No disponible | ProductInput.legacyLocal | Es un nuevo campo booleano que indica que un producto solo puede segmentarse para métodos de marketing locales. El ID del recurso del producto tendrá el prefijo "local~". | 
| No disponible | Product.legacyLocal | Es un nuevo campo booleano para indicar que un producto solo se vende en tiendas locales y no está disponible para la compra en línea. | 
| No disponible | DataSource.legacyLocal | Es un nuevo campo booleano que indica que una fuente de datos contiene productos que se venden solo en tiendas locales. | 
| OrderTrackingSignals.LineItemDetails.gtin | OrderTrackingSignals.LineItemDetails.gtins | Se cambió el nombre del campo gtinagtins, y ahora es un array de cadenas (en lugar de una cadena). | 
| CreateAndConfigureAccountRequest.users | Quitada | Se quitó el campo users. Usa el campouserpara agregar el administrador inicial a la cuenta. |