Descripción general de la configuración de envío

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 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, haz lo siguiente:

  1. Realiza una solicitud GET para recuperar la configuración de envío completa de tu cuenta.
  2. Modifica la configuración de envío.
  3. Realiza una solicitud INSERT con la configuración de envío modificada.

ETag

La ETag es un token codificado para evitar actualizaciones asíncronas. La etiqueta cambia cuando cambia cualquiera de los datos de la configuración de envío. Los usuarios deben copiar la etiqueta de meta que obtuvieron de la solicitud GET al 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 que 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 muestra una solicitud de muestra que actualiza el maxTransitDays a 7 para un servicio de envío llamado GSA Shipping - Free Ship Over $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"
        }
      ]
    }
  ]
}

Cómo configurar almacenes

En la siguiente muestra de JSON, se muestra cómo puedes usar el servicio de configuración de envíos del comercio para administrar la información del almacén 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}: Es la parte de la dirección del almacén a nivel de la calle.
  • {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}: Es la parte de minutos 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 empacar y enviar un artículo.

El recurso warehouses es una lista de almacenes. Se puede hacer referencia a cada almacén mediante el tiempo de entrega basado en el almacén del servicio de envío a través de warehouse.name.

Administra tus almacenes

Sigue estos pasos para usar la API de Merchant y administrar tus almacenes:

  1. Realiza una solicitud de GET para recuperar todos tus shippingsettings y almacenes existentes.
  2. Copia el shippingsettings de la solicitud GET a la solicitud UPDATE.

  3. Propaga los almacenes si deseas usarlos en la sección warehouses para la solicitud INSERT.

  4. Realiza una solicitud UPDATE que contenga recursos shippingsettings y warehouses.

Este es un cuerpo de solicitud INSERT de muestra con el almacén de Almacén 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"
        }
      ]
    }
  ]
}

Cómo agregar la entrega el mismo día

Puedes usar Content API for Shopping para configurar servicios de envío el mismo día si tienes un inventario local. Los servicios de envío el mismo día tienen local_delivery como shipment_type. Por el momento, todos los servicios de envío de local_delivery se consideran entregas el mismo día.

No puedes cambiar la información de delivery_time para las publicaciones locales. Usa shippingsettings.insert para configurar la entrega el mismo día para los productos de tu inventario local.

A continuación, se muestra un cuerpo de solicitud de ejemplo 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 realizados después del horario límite para la entrega el mismo día se programan de forma predeterminada para la entrega al día siguiente. 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 se podrán ver antes del horario límite de cada día.

La entrega al día siguiente solo está disponible cuando shipment_type es local_delivery.

Más información

Para obtener información sobre cómo migrar desde Content API for Shopping, consulta Cómo migrar la administración de la configuración de envío.