El recurso shippingsettings
te permite recuperar y actualizar la configuración de envío de tu cuenta.
Google puede actualizar automáticamente el tiempo de entrega estimado de algunos productos. Para obtener más información, consulta Habilita las mejoras automáticas.
Leer, escribir o actualizar la configuración de envío
Para usar el servicio de envío de la API de Merchant Center, sigue estos pasos:
- Realiza una solicitud
GET
para recuperar la configuración de envío completa de tu cuenta. - Modifica la configuración de envío.
- Realiza una solicitud
INSERT
con la configuración de envío modificada.
ETag
Etag es un token codificado para evitar las actualizaciones asíncronas. La ETag cambia cuando cambia cualquiera de los datos de configuración de envío. Los usuarios deben copiar la ETag que obtuvieron de la solicitud GET
en el cuerpo de la solicitud INSERT
.
Si los datos de la configuración de envío cambian entre la solicitud GET
y la solicitud INSERT
, recibirás un mensaje de error en el que se solicitará otra solicitud GET
para recuperar el token de ETag más reciente. Debes llamar a la solicitud GET
para recuperar el nuevo token de ETag y copiarlo en el cuerpo de la solicitud INSERT
.
Agrega tu configuración de envío
Usa shippingsettings.insert
para agregar o actualizar la configuración de envío de tu cuenta. A continuación, se incluye una solicitud de muestra que actualiza el maxTransitDays
a 7 para un
servicio de envío llamado GSA Shipping - Free Ship Over USD 49.99, en la cuenta
10.
POST https://merchantapi.googleapis.com/accounts/v1beta/accounts/{accountId}/shippingSettings/
{
"services": [
{
"name": "FedEx",
"active": true,
"deliveryCountries": ["US"],
"currencyCode": "USD",
"deliveryTime": {
"minTransitDays": 4,
"maxTransitDays": 6,
"minHandlingDays": 0,
"maxHandlingDays": 0
},
"rateGroups": [
{
"singleValue": {
"flatRate": {
"amountMicros": 5990000,
"currencyCode": "USD"
}
},
"name": "All products"
}
]
},
{
"name": "GSA Shipping - Free Ship Over $49.99",
"active": true,
"deliveryCountries": "US",
"currencyCode": "USD",
"deliveryTime": {
"minTransitDays": 3,
"maxTransitDays": 7,
"minHandlingDays": 1,
"maxHandlingDays": 2
},
"rateGroups": [
{
"mainTable": {
"rowHeaders": {
"prices": [
{
"amountMicros": 49990000,
"currencyCode": "USD"
},
{
"amountMicros": -1,
"currencyCode": "USD"
}
]
},
"rows": [
{
"cells": [
{
"flatRate": {
"amountMicros": 6990000,
"currencyCode": "USD"
}
}
]
},
{
"cells": [
{
"flatRate": {
"amountMicros": 0,
"currencyCode": "USD"
}
}
]
}
]
},
"name": "Free Ship Over $49.99"
}
]
}
]
}
Establecer almacenes
En la siguiente muestra de JSON, se indica cómo puedes usar el servicio de configuración de envío de comercios para administrar la información del almacén de datos de tu cuenta de comerciante:
"warehouses": [
{
"name": "warehouse 1",
"shippingAddress": {
"streetAddress": {street_address},
"city": {city},
"administrativeArea": {administrative_area},
"postalCode": {postal_code},
"regionCode": {region_code}
},
"cutoffTime": {
"minutes": {minutes}
},
"handlingDays": {handling_days},
"businessDaysConfig": {
"businessDays": [
"MONDAY", "SUNDAY"
]
}
}
]
Reemplaza lo siguiente:
- {street_address}: Parte a nivel de la calle de la dirección del almacén.
- {city}: Es la ciudad, el pueblo o la comuna donde se encuentra el almacén.
- {administrative_area}: Es la subdivisión administrativa del país. Por ejemplo, un estado.
- {postal_code}: Es el código postal.
- {region_code}: Es el código de país en la cadena.
- {minutes}: Son los minutos que son parte del horario límite hasta el que se debe realizar un pedido para que el almacén lo procese el mismo día.
- {handling_days}: Es la cantidad de días que tarda este almacén en empaquetar y enviar un artículo.
El recurso warehouses
es una lista de almacenes. Cada almacén se puede hacer referencia por el tiempo de entrega basado en el almacén del servicio de envío hasta el warehouse.name
.
Administra tus almacenes
A continuación, te mostramos cómo usar la API de Merchant para administrar tus almacenes:
- Realiza una solicitud
GET
para recuperar todos tusshippingsettings
y almacenes existentes. Copia el
shippingsettings
de la solicitudGET
en la solicitudUPDATE
.Propaga los almacenes si deseas usarlos en la sección
warehouses
para la solicitudINSERT
.Realiza una solicitud
UPDATE
que contenga los recursosshippingsettings
ywarehouses
.
A continuación, se muestra un cuerpo de solicitud de INSERT
de muestra con un almacén para Warehouse 1 actualizado de Nueva York a Mountain View:
{
"services": [
{
"name": "Standard Shipping",
"active": true,
"deliveryCountries": ["US", "UK"],
"currencyCode": "USD",
"deliveryTime": {
"minHandlingDays": 0,
"maxHandlingDays": 1,
"warehouseBasedDeliveryTimes": [
{"carrier": "Fedex"
"carrierService": "ground"
"warehouse": "Warehouse 1"
},
{"carrier": "Fedex"
"carrierService": "2 days"
"warehouse": "Warehouse 2"
}
]
},
"rateGroups": [
{
"singleValue": {
"flatRate": {
"amountMicros": 0,
"currencyCode": "USD"
}
},
"name": "Standard Shipping"
}
],
},
{
"name": "Expedited",
"flatRate": {
"amountMicros": 9990000,
"currencyCode": "USD"
}
},
"name": "Expedited"
}
],
}
],
"warehouses": [
{
"name": "Warehouse1",
"shippingAddress": [
{
"streetAddress": "1111 shoreline street"
"city": "Mountain View",
"administrativeArea": "CA"
}
]
},
{
"name": "Warehouse 2",
"country": "US",
"postalCodeRanges": [
{
"streetAddress": "1111 5th avenue"
"city": "New York",
"administrativeArea": "NY"
}
]
}
]
}
Agregar entrega el mismo día
Puedes usar Content API for Shopping para configurar los servicios de envío con entrega el mismo día si tienes un inventario local. Los servicios de envío de entrega el mismo día tienen
local_delivery
como su shipment_type
. En este momento, todos los servicios de envío de local_delivery
se consideran entregas en el mismo día.
No puedes cambiar la información de delivery_time
para las entregas locales. Usa shippingsettings.insert
para configurar la entrega el mismo día para los productos del inventario local.
A continuación, se incluye un cuerpo de solicitud de muestra que agrega un servicio de entrega el mismo día a todas las tiendas de tu cuenta:
{
"name": "accounts/accountId/shippingSettings",
"services": [
{
"name": "Local Delivery",
"active": true,
"shipmentType": "local_delivery",
"deliveryCountries": "US",
"currencyCode": "USD",
"rateGroups": [
{
"singleValue": {
"flatRate": {
"amountMicros": 0,
"currencyCode": "USD"
}
}
}
],
"storeConfig": {
"storeServiceType": "all stores",
"storeCodes": [],
"cutoffConfig": {
"storeCloseOffsetHours": 2,
"noDeliveryPostCutoff": true
},
"serviceRadius": {
"value": 4,
"unit": "Miles"
}
}
}
]
}
Agregar entrega al día siguiente
Los pedidos hechos después de la hora límite de entrega el mismo día se programan para la entrega al día siguiente de forma predeterminada. Para desactivar la entrega al día siguiente, establece el campo no_delivery_post_cutoff
como verdadero. Si desactivas la entrega al día siguiente, tus servicios de envío solo serán visibles todos los días antes de la hora límite.
La entrega al día siguiente solo está disponible cuando la shipment_type
es local_delivery
.