Mit der Unter-API „Accounts“ können Sie die Versandeinstellungen für alle Produkte in Ihrem Konto und allen zugehörigen Unterkonten verwalten.
Änderungen, die Sie an den Versandeinstellungen vornehmen, gelten für alle Produkte. Wenn Sie die Versandkosten für einzelne Produkte aktualisieren möchten, verwenden Sie die Merchant Products API.
Weitere Informationen finden Sie unter Versandeinstellungen einrichten.
Übersicht über die Versandeinstellungen
Mit der accounts.shippingSettings
-Ressource können Sie die Versandeinstellungen Ihres erweiterten Kontos und aller zugehörigen Unterkonten abrufen und aktualisieren.
Erweiterte Konten werden in der Regel von Integratoren, Aggregatoren und Channel-Partnern verwendet, die Onlineshops und API-Dienste für mehrere Unternehmen verwalten. Unternehmen mit mehreren Onlineshops oder Marken, die auf separaten Websites verkauft werden, können auch Unterkonten unter einem einzigen erweiterten Konto einrichten.
Google kann die voraussichtliche Lieferdauer für einige Produkte automatisch aktualisieren.
Versandeinstellungen hinzufügen
Verwenden Sie die Methode accounts.shippingSettings.insert
, um die Versandeinstellungen für Ihr Konto hinzuzufügen oder zu aktualisieren.
Im folgenden Beispiel werden der Versandpreis, die Treuepunkteprogramme, auf die dieser Versandservice beschränkt ist, und der Währungscode festgelegt.
HTTP
POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/shippingSettings:insert
{
"etag": "",
"name": "accounts/ACCOUNT_ID/shippingSetting",
"services": [
{
"deliveryCountries": [
"COUNTRY_CODE"
],
"serviceName": "SERVICE_NAME",
"active": false,
"deliveryTime": {},
"loyaltyPrograms": [
{
"programLabel": "PROGRAM_LABEL"
}
],
"minimumOrderValue": {
"amountMicros": PRICE,
"currencyCode": "CURRENCY_CODE"
},
"currencyCode": "USD",
"rateGroups": [
{
"applicableShippingLabels": [
"SHIPPING_LABEL"
],
"singleValue": {
"flatRate": {
"amountMicros": 10000000,
"currencyCode": "USD"
}
}
}
]
}
]
}
cURL
curl --request POST \
'https://merchantapi.googleapis.com/accounts/v1/accounts/ACCOUNT_ID/shippingSettings:insert' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"name":"SHIPPING_SETTING_NAME","services":[{"serviceName":"SERVICE_NAME","currencyCode":"CURRENCY_CODE","rateGroups":[{"applicableShippingLabels":["SHIPPING_LABEL"],"carrierRates":[{"name":"new","carrier":"CARRIER_NAME","carrierService":"CARRIER_SERVICE","originPostalCode":"ZIPCODE"}],"singleValue":{"flatRate":{"amountMicros":10000000,"currencyCode":"USD"}}}],"deliveryCountries":["COUNTRY_CODE"],"deliveryTime":{"maxHandlingDays":2,"minHandlingDays":1},"minimumOrderValue":{"amountMicros":50000000,"currencyCode":"USD"},"active":false}]}' \
--compressed
Ersetzen Sie Folgendes:
- ACCOUNT_ID: Die eindeutige ID Ihres Merchant Center-Kontos.
- COUNTRY_CODE: Der CLDR-Code (Common Locale Data Repository) des Landes, für das dieser Dienst gilt. Muss mit den Preisen in den Raten-Gruppen übereinstimmen.
- SERVICE_NAME: Name des Dienstes.
- CARRIER_NAME: Der Name des Mobilfunkanbieters. Zum Beispiel UPS und FedEx.
- CARRIER_SERVICE: Der unterstützte Dienst für den Mobilfunkanbieter.
Eine vollständige Liste der Transportunternehmen finden Sie unter Vom Transportunternehmen berechneter Preis (nur Deutschland, Australien, USA und Vereinigtes Königreich).
- PROGRAM_LABEL: Das Programmlabel, das im Merchant Center in den Einstellungen für das Treuepunkteprogramm festgelegt ist.
- SHIPPING_LABEL: Eine Liste von Versandlabels, die die Produkte definieren, auf die diese Rategruppe angewendet wird.
- PRICE: Der Preis als Zahl in Mikros. Beispiel: 1 $ = 1.000.000 Mikros.
- CURRENCY_CODE: Die Währung des Preises in Form von dreibuchstabigen Akronymen.
Weitere Informationen zu den angegebenen Feldern finden Sie in der Referenzdokumentation.
Der Anfragetext sollte den vollständigen Ressourcentext der accounts.shippingSettings
-Ressource enthalten, auch wenn Sie nur ein einzelnes Attribut aktualisieren. Alle NULL-Werte oder fehlenden Werte im Anfragetext führen dazu, dass die vorhandenen Werte auf „null“ gesetzt werden.
Hier ist eine Beispielantwort für einen erfolgreichen Aufruf:
{
"name": "accounts/ACCOUNT_ID/shippingSettings",
"services": [
{
"serviceName": "SERVICE_NAME",
"active": false,
"deliveryCountries": [
"COUNTRY_CODE"
],
"currencyCode": "CURRENCY_CODE",
"rateGroups": [
{
"applicableShippingLabels": [
"SHIPPING_LABEL"
],
"singleValue": {
"flatRate": {
"amountMicros": "PRICE",
"currencyCode": "CURRENCY_CODE"
}
}
}
],
"shipmentType": "LOCAL_DELIVERY",
"storeConfig": {
"storeServiceType": "ALL_STORES",
"cutoffConfig": {
"localCutoffTime": {
"hour": "7",
"minute": "40"
},
"noDeliveryPostCutoff": false
},
"serviceRadius": {
"value": "40",
"unit": "KILOMETERS"
}
}
}
],
"etag": "OAJCTQgBEAAaRwoEdGVzdBIEIgJVUxoDVVNEIggiBggHECgoACoeCAESDwoNCAESCU9WRVJTSVpFRBoJIgcIAhCAwtcvWAWSAQCaAQQIAhAo"
}
Hier ist ein Beispiel, mit dem Sie die Versandeinstellungen für ein bestimmtes Konto mit den Clientbibliotheken aktualisieren können:
Java
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.accounts.v1.DeliveryTime;
import com.google.shopping.merchant.accounts.v1.InsertShippingSettingsRequest;
import com.google.shopping.merchant.accounts.v1.RateGroup;
import com.google.shopping.merchant.accounts.v1.Service;
import com.google.shopping.merchant.accounts.v1.Service.ShipmentType;
import com.google.shopping.merchant.accounts.v1.ShippingSettings;
import com.google.shopping.merchant.accounts.v1.ShippingSettingsServiceClient;
import com.google.shopping.merchant.accounts.v1.ShippingSettingsServiceSettings;
import com.google.shopping.merchant.accounts.v1.Value;
import com.google.shopping.type.Price;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;
/** This class demonstrates how to insert a ShippingSettings for a Merchant Center account. */
public class InsertShippingSettingsSample {
private static String getParent(String accountId) {
return String.format("accounts/%s", accountId);
}
public static void insertShippingSettings(Config config) throws Exception {
// Obtains OAuth token based on the user's configuration.
GoogleCredentials credential = new Authenticator().authenticate();
// Creates service settings using the credentials retrieved above.
ShippingSettingsServiceSettings shippingSettingsServiceSettings =
ShippingSettingsServiceSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(credential))
.build();
// Creates parent to identify where to insert the shippingsettings.
String parent = getParent(config.getAccountId().toString());
// Calls the API and catches and prints any network failures/errors.
try (ShippingSettingsServiceClient shippingSettingsServiceClient =
ShippingSettingsServiceClient.create(shippingSettingsServiceSettings)) {
InsertShippingSettingsRequest request =
InsertShippingSettingsRequest.newBuilder()
.setParent(parent)
.setShippingSetting(
ShippingSettings.newBuilder()
// Etag needs to be an empty string on initial insert
// On future inserts, call GET first to get the Etag
// Then use the retrieved Etag on future inserts.
// NOTE THAT ON THE INITIAL INSERT, YOUR SHIPPING SETTINGS WILL
// NOT BE STORED, YOU HAVE TO CALL INSERT AGAIN WITH YOUR
// RETRIEVED ETAG.
// .setEtag("")
.setEtag("PPa=")
.addServices(
Service.newBuilder()
.setServiceName("Canadian Postal Service")
.setActive(true)
.addDeliveryCountries("CA")
.setCurrencyCode("CAD")
.setDeliveryTime(
DeliveryTime.newBuilder()
.setMinTransitDays(0)
.setMaxTransitDays(3)
.setMinHandlingDays(0)
.setMaxHandlingDays(3)
.build())
.addRateGroups(
RateGroup.newBuilder()
.addApplicableShippingLabels("Oversized")
.addApplicableShippingLabels("Perishable")
.setSingleValue(Value.newBuilder().setPricePercentage("5.4"))
.setName("Oversized and Perishable items")
.build())
.setShipmentType(ShipmentType.DELIVERY)
.setMinimumOrderValue(
Price.newBuilder()
.setAmountMicros(10000000)
.setCurrencyCode("CAD")
.build())
.build())
.build())
.build();
System.out.println("Sending insert ShippingSettings request");
ShippingSettings response = shippingSettingsServiceClient.insertShippingSettings(request);
System.out.println("Inserted ShippingSettings Name below");
System.out.println(response.getName());
// You can apply ShippingSettings to specific products by using the `shippingLabel` field
// on the product.
} catch (Exception e) {
System.out.println(e);
}
}
public static void main(String[] args) throws Exception {
Config config = Config.load();
insertShippingSettings(config);
}
}
PHP
use Google\ApiCore\ApiException;
use Google\Shopping\Merchant\Accounts\V1\Client\ShippingSettingsServiceClient;
use Google\Shopping\Merchant\Accounts\V1\DeliveryTime;
use Google\Shopping\Merchant\Accounts\V1\InsertShippingSettingsRequest;
use Google\Shopping\Merchant\Accounts\V1\RateGroup;
use Google\Shopping\Merchant\Accounts\V1\Service;
use Google\Shopping\Merchant\Accounts\V1\Service\ShipmentType;
use Google\Shopping\Merchant\Accounts\V1\ShippingSettings;
use Google\Shopping\Merchant\Accounts\V1\Value;
use Google\Shopping\Type\Price;
/**
* This class demonstrates how to insert a ShippingSettings for a Merchant Center account.
*/
class InsertShippingSettings
{
/**
* A helper function to create the parent string.
*
* @param string $accountId The account ID.
* @return string The parent in the format "accounts/{accountId}".
*/
private static function getParent(string $accountId): string
{
return sprintf("accounts/%s", $accountId);
}
/**
* Inserts shipping settings for the specified Merchant Center account.
*
* @param array $config The configuration data containing the account ID.
* @return void
*/
public static function insertShippingSettings($config)
{
// Gets the OAuth credentials to make the request.
$credentials = Authentication::useServiceAccountOrTokenFile();
// Creates options config containing credentials for the client to use.
$options = ['credentials' => $credentials];
// Creates a client.
$shippingSettingsServiceClient = new ShippingSettingsServiceClient($options);
// Creates parent to identify where to insert the shippingsettings.
$parent = self::getParent($config['accountId']);
// Calls the API and catches and prints any network failures/errors.
try {
$request = (new InsertShippingSettingsRequest())
->setParent($parent)
->setShippingSetting(
(new ShippingSettings())
// Etag needs to be an empty string on initial insert
// On future inserts, call GET first to get the Etag
// Then use the retrieved Etag on future inserts.
// NOTE THAT ON THE INITIAL INSERT, YOUR SHIPPING SETTINGS WILL
// NOT BE STORED, YOU HAVE TO CALL INSERT AGAIN WITH YOUR
// RETRIEVED ETAG.
->setEtag("")
->setServices([
(new Service())
->setServiceName("Canadian Postal Service")
->setActive(true)
->setDeliveryCountries(["CA"])
->setCurrencyCode("CAD")
->setDeliveryTime(
(new DeliveryTime())
->setMinTransitDays(0)
->setMaxTransitDays(3)
->setMinHandlingDays(0)
->setMaxHandlingDays(3)
)
->setRateGroups(
[(new RateGroup())
->setApplicableShippingLabels(["Oversized","Perishable"])
->setSingleValue((new Value())->setPricePercentage("5.4"))
->setName("Oversized and Perishable items")]
)
->setShipmentType(ShipmentType::DELIVERY)
->setMinimumOrderValue(
(new Price())
->setAmountMicros(10000000)
->setCurrencyCode("CAD")
)
])
);
print "Sending insert ShippingSettings request" . PHP_EOL;
$response = $shippingSettingsServiceClient->insertShippingSettings($request);
print "Inserted ShippingSettings below" . PHP_EOL;
print_r($response);
// You can apply ShippingSettings to specific products by using the `shippingLabel` field
// on the product.
} catch (ApiException $e) {
print $e->getMessage();
}
}
/**
* Helper to execute the sample.
*
* @return void
*/
public function callSample(): void
{
$config = Config::generateConfig();
// Makes the call to insert shipping settings for the MC account.
self::insertShippingSettings($config);
}
}
// Run the script
$sample = new InsertShippingSettings();
$sample->callSample();
Python
from examples.authentication import configuration
from examples.authentication import generate_user_credentials
from google.shopping.merchant_accounts_v1 import DeliveryTime
from google.shopping.merchant_accounts_v1 import InsertShippingSettingsRequest
from google.shopping.merchant_accounts_v1 import RateGroup
from google.shopping.merchant_accounts_v1 import Service
from google.shopping.merchant_accounts_v1 import ShippingSettings
from google.shopping.merchant_accounts_v1 import ShippingSettingsServiceClient
from google.shopping.merchant_accounts_v1 import Value
_ACCOUNT = configuration.Configuration().read_merchant_info()
_PARENT = f"accounts/{_ACCOUNT}"
def insert_shipping_settings():
"""Inserts a ShippingSettings for a Merchant Center account."""
# Gets OAuth Credentials.
credentials = generate_user_credentials.main()
# Creates a client.
client = ShippingSettingsServiceClient(credentials=credentials)
# Creates the request.
request = InsertShippingSettingsRequest(
parent=_PARENT,
shipping_setting=ShippingSettings(
# Etag needs to be an empty string on initial insert
# On future inserts, call GET first to get the Etag
# Then use the retrieved Etag on future inserts.
# NOTE THAT ON THE INITIAL INSERT, YOUR SHIPPING SETTINGS WILL
# NOT BE STORED, YOU HAVE TO CALL INSERT AGAIN WITH YOUR
# RETRIEVED ETAG.
etag="",
services=[
Service(
service_name="Canadian Postal Service",
active=True,
delivery_countries=["CA"],
currency_code="CAD",
delivery_time=DeliveryTime(
min_transit_days=0,
max_transit_days=3,
min_handling_days=0,
max_handling_days=3,
),
rate_groups=[
RateGroup(
applicable_shipping_labels=[
"Oversized",
"Perishable",
],
single_value=Value(price_percentage="5.4"),
name="Oversized and Perishable items",
)
],
shipment_type=Service.ShipmentType.DELIVERY,
minimum_order_value={
"amount_micros": 10000000,
"currency_code": "CAD",
},
)
],
),
)
# Makes the request and prints the inserted ShippingSettings name.
try:
response = client.insert_shipping_settings(request=request)
print("Inserted ShippingSettings below")
print(response)
# You can apply ShippingSettings to specific products by using the
# `shippingLabel` field on the product.
except RuntimeError as e:
print(e)
if __name__ == "__main__":
insert_shipping_settings()
Versandeinstellungen abrufen
Die folgenden Anfragen zeigen, wie Sie die Versandeinstellungen eines Merchant Center-Kontos abrufen können:
HTTP
GET https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/shippingSettings
cURL
curl \
'https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/shippingSettings' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--compressed
Hier ist ein Beispiel, mit dem Sie die Versandinformationen für ein bestimmtes Konto mit den Clientbibliotheken abrufen können:
Java
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.accounts.v1.GetShippingSettingsRequest;
import com.google.shopping.merchant.accounts.v1.ShippingSettings;
import com.google.shopping.merchant.accounts.v1.ShippingSettingsName;
import com.google.shopping.merchant.accounts.v1.ShippingSettingsServiceClient;
import com.google.shopping.merchant.accounts.v1.ShippingSettingsServiceSettings;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;
/** This class demonstrates how to get the ShippingSettings for a given Merchant Center account. */
public class GetShippingSettingsSample {
public static void getShippingSettings(Config config) throws Exception {
// Obtains OAuth token based on the user's configuration.
GoogleCredentials credential = new Authenticator().authenticate();
// Creates service settings using the credentials retrieved above.
ShippingSettingsServiceSettings shippingSettingsServiceSettings =
ShippingSettingsServiceSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(credential))
.build();
// Creates ShippingSettings name to identify ShippingSettings.
String name =
ShippingSettingsName.newBuilder()
.setAccount(config.getAccountId().toString())
.build()
.toString();
// Calls the API and catches and prints any network failures/errors.
try (ShippingSettingsServiceClient shippingSettingsServiceClient =
ShippingSettingsServiceClient.create(shippingSettingsServiceSettings)) {
// The name has the format: accounts/{account}/shippingSettings
GetShippingSettingsRequest request =
GetShippingSettingsRequest.newBuilder().setName(name).build();
System.out.println("Sending Get ShippingSettings request:");
ShippingSettings response = shippingSettingsServiceClient.getShippingSettings(request);
System.out.println("Retrieved ShippingSettings below");
System.out.println(response);
} catch (Exception e) {
System.out.println(e);
}
}
public static void main(String[] args) throws Exception {
Config config = Config.load();
getShippingSettings(config);
}
}
PHP
use Google\ApiCore\ApiException;
use Google\Shopping\Merchant\Accounts\V1\Client\ShippingSettingsServiceClient;
use Google\Shopping\Merchant\Accounts\V1\GetShippingSettingsRequest;
/**
* This class demonstrates how to get the ShippingSettings for a given Merchant Center account.
*/
class GetShippingSettings
{
/**
* Retrieves the shipping settings for the specified Merchant Center account.
*
* @param array $config The configuration data containing the account ID.
* @return void
*/
public static function getShippingSettings($config)
{
// Gets the OAuth credentials to make the request.
$credentials = Authentication::useServiceAccountOrTokenFile();
// Creates options config containing credentials for the client to use.
$options = ['credentials' => $credentials];
// Creates a client.
$shippingSettingsServiceClient = new ShippingSettingsServiceClient($options);
// Creates ShippingSettings name to identify ShippingSettings.
// The name has the format: accounts/{account}/shippingSettings
$name = "accounts/" . $config['accountId'] . "/shippingSettings";
// Calls the API and catches and prints any network failures/errors.
try {
$request = (new GetShippingSettingsRequest())
->setName($name);
print "Sending Get ShippingSettings request:" . PHP_EOL;
$response = $shippingSettingsServiceClient->getShippingSettings($request);
print "Retrieved ShippingSettings below" . PHP_EOL;
print_r($response);
} catch (ApiException $e) {
print $e->getMessage();
}
}
/**
* Helper to execute the sample.
*
* @return void
*/
public function callSample(): void
{
$config = Config::generateConfig();
// Makes the call to get shipping settings for the MC account.
self::getShippingSettings($config);
}
}
// Run the script
$sample = new GetShippingSettings();
$sample->callSample();
Python
from examples.authentication import configuration
from examples.authentication import generate_user_credentials
from google.shopping.merchant_accounts_v1 import GetShippingSettingsRequest
from google.shopping.merchant_accounts_v1 import ShippingSettingsServiceClient
_ACCOUNT = configuration.Configuration().read_merchant_info()
_PARENT = f"accounts/{_ACCOUNT}"
def get_shipping_settings():
"""Gets the ShippingSettings for a given Merchant Center account."""
# Gets OAuth Credentials.
credentials = generate_user_credentials.main()
# Creates a client.
client = ShippingSettingsServiceClient(credentials=credentials)
# Creates the Shipping Settings name
name = _PARENT + "/shippingSettings"
# Creates the request.
request = GetShippingSettingsRequest(name=name)
# Makes the request and prints the retrieved ShippingSettings.
try:
response = client.get_shipping_settings(request=request)
print("Retrieved ShippingSettings below")
print(response)
except RuntimeError as e:
print(e)
if __name__ == "__main__":
get_shipping_settings()
Warenlagereinstellungen hinzufügen
Verwenden Sie die Methode accounts.shippingSettings.insert
, um die Lagereinstellungen hinzuzufügen oder zu aktualisieren, in denen das Inventar für Ihr Konto gespeichert und verwaltet wird.
So verwalten Sie Ihre Lager mit der Merchant API:
Wenn Sie alle vorhandenen
shippingsettings
undwarehouses
abrufen möchten, stellen Sie eineGET
-Anfrage mit der Methodeaccounts.shippingSettings.getShippingSettings
.Erstellen Sie eine Anfrage mit der Methode
account.shippingSettings.insert
. Kopieren Sie dieshippingsettings
-Ressource aus der Antwort derGET
-Anfrage in die Einfügeanfrage.Wenn Sie Informationen zu Lagern mit dem Insert-Aufruf hinzufügen möchten, geben Sie die Details dazu in der
warehouses
-Ressource im Anfragetext an.Führen Sie die Einfüge-Anfrage aus.
Die folgende Beispielanfrage zeigt, wie Sie die Methode accounts.shippingSettings.insert
verwenden, um die Warehouse-Einstellungen für Ihr Konto zu aktualisieren. Mit der Anfrage wird die Tageszeit festgelegt, zu der eine Bestellung angenommen und mit der Bearbeitung begonnen werden kann, sowie die Bearbeitungstage und die Versandadresse.
POST https://merchantapi.googleapis.com/accounts/v1/accounts/ACCOUNT_ID/shippingSettings:insert
{
"etag": "",
"name": "accounts/ACCOUNT_ID/shippingSetting",
"warehouses": [
{
"cutoffTime": {
"hour": 7,
"minute": 50
},
"handlingDays": 7,
"name": "WAREHOUSE_NAME",
"shippingAddress": {
"streetAddress": "ADDRESS",
"administrativeArea": "CA",
"city": "CITY_NAME",
"postalCode": "POSTAL_CODE",
"regionCode": "REGION_CODE"
}
}
]
}
Ersetzen Sie Folgendes:
- ACCOUNT_ID: Die eindeutige ID Ihres Merchant Center-Kontos.
- WAREHOUSE_NAME: Der Name des Data Warehouse.
- ADDRESS: Die Versandadresse des Lagers.
- CITY_NAME: Stadt, Gemeinde oder Kommune. Dazu können auch abhängige Orte oder Unterorte gehören. Beispiele: Stadtviertel oder Vororte.
- POSTAL_CODE: Postleitzahl. Beispielsweise 94043.
- REGION_CODE: Der CLDR-Ländercode. Beispiel: „US“.
Hier ist eine Beispielantwort für einen erfolgreichen Aufruf:
{
"name": "accounts/ACCOUNT_ID/shippingSettings",
"warehouses": [
{
"name": "WAREHOUSE_NAME",
"shippingAddress": {
"streetAddress": "ADDRESS",
"city": "CITY_NAME",
"administrativeArea": "CA",
"postalCode": "POSTAL_CODE",
"regionCode": "REGION_CODE"
},
"cutoffTime": {
"hour": 7,
"minute": 50
},
"handlingDays": "7",
"businessDayConfig": {
"businessDays": [
"MONDAY",
"TUESDAY",
"WEDNESDAY",
"THURSDAY",
"FRIDAY"
]
}
}
],
"etag": "OAJiUAjB0au+FBABGgR0ZXN0Ii4KAlVTGgJDQSoKQ2FsaWZvcm5pYWIFOTQwNDNyETExMXcgMzFzdCBTdHJlZXQuKgQIBxAyMAc4ATgCOAM4BDgF"
}
Postleitzahlengruppen festlegen
Mit der Unter-API „Accounts“ können Sie Regionen, sogenannte postalCodeGroups, für ein Merchant Center-Konto verwalten.
Die Ressource postalCodeGroups ist eine Liste von Gruppierungen, wobei jede Gruppierung eine Liste von mehreren Postleitzahlen ist, für die dieselben Versandeinstellungen gelten.
Mit der Merchant API können Sie Ihre postalCodeGroups so verwalten:
Rufen Sie alle Ihre shippingsettings und postalCodeGroups mit einem get-Aufruf ab.
Kopieren Sie die shippingsettings aus dem get-Aufruf in den update-Aufruf.
Wenn Sie keine Transitzeitlabels für Ihren Versanddienst verwenden, entfernen Sie den folgenden Eintrag aus dem Anfragetext.
"transitTimeLabels": [ "all other labels" ],
Füllen Sie die Regionen, die Sie verwenden möchten, im Abschnitt postalCodeGroups für den update-Aufruf aus.
Rufen Sie update mit den Ressourcen shippingsettings und postalCodeGroups auf.
Lieferung am selben Tag hinzufügen
Sie können die Merchant API verwenden, um Versanddienste für die Lieferung am selben Tag zu konfigurieren, wenn Sie lokales Inventar haben. Weitere Informationen finden Sie unter Informationen zu Geschäften für lokale Produkte hinzufügen (addlocalinventory).
Versanddienste für die Lieferung am selben Tag haben local_delivery als shipmentType.
Es gelten die folgenden Einschränkungen:
- Alle Versandservices vom Typ local_delivery gelten als Lieferungen am selben Tag.
- Sie können die Informationen zu deliveryTime für lokale Lieferungen nicht ändern.
Wenn Sie die Lieferung am selben Tag für Ihre Produkte mit lokalem Inventar einrichten möchten, verwenden Sie die Methode accounts.shippingSettings.insert
.
Hier ist ein Beispiel-Request, in dem der Sendungstyp, storeConfig
(eine Liste der Geschäfte, aus denen Ihre Produkte geliefert werden) und die Raten-Gruppen festgelegt werden.
POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/shippingSettings:insert
{
"etag": "",
"name": "accounts/ACCOUNT_ID/shippingSetting",
"services": [
{
"deliveryCountries": [
"COUNTRY_CODE"
],
"serviceName": "SERVICE_NAME",
"active": false,
"currencyCode": "CURRENCY_CODE",
"shipmentType": "SHIPMENT_TYPE",
"storeConfig": {
"cutoffConfig": {
"localCutoffTime": {
"hour": 7,
"minute": 40
}
},
"serviceRadius": {
"unit": "KILOMETERS",
"value": 40
},
"storeCodes": [],
"storeServiceType": "ALL_STORES"
},
"rateGroups": [
{
"applicableShippingLabels": [
"SHIPPING_LABEL"
],
"singleValue": {
"flatRate": {
"amountMicros": PRICE,
"currencyCode": "CURRENCY_CODE"
}
}
}
]
}
]
}
Ersetzen Sie Folgendes:
- SHIPMENT_TYPE: Art der Standorte, an die dieser Dienst Bestellungen liefert, einschließlich:
SHIPMENT_TYPE_UNSPECIFIED
DELIVERY
LOCAL_DELIVERY
COLLECTION_POINT
- SHIPPING_LABEL: Eine Liste von Versandlabels, die die Produkte definieren, auf die diese Rategruppe angewendet wird.
Hier ist eine Beispielantwort für einen erfolgreichen Aufruf:
{
"name": "accounts/ACCOUNT_ID/shippingSettings",
"services": [
{
"serviceName": "SERVICE_NAME",
"active": false,
"deliveryCountries": [
"COUNTRY_CODE"
],
"currencyCode": "CURRENCY_CODE",
"rateGroups": [
{
"applicableShippingLabels": [
"SHIPPING_LABEL"
],
"singleValue": {
"flatRate": {
"amountMicros": "PRICE",
"currencyCode": "CURRENCY_CODE"
}
}
}
],
"shipmentType": "SHIPMENT_TYPE",
"storeConfig": {
"storeServiceType": "ALL_STORES",
"cutoffConfig": {
"localCutoffTime": {
"hour": "7",
"minute": "40"
},
"noDeliveryPostCutoff": false
},
"serviceRadius": {
"value": "40",
"unit": "KILOMETERS"
}
}
}
],
"etag": "OAJCTQgBEAAaRwoEdGVzdBIEIgJVUxoDVVNEIggiBggHECgoACoeCAESDwoNCAESCU9WRVJTSVpFRBoJIgcIAhCAwtcvWAWSAQCaAQQIAhAo"
}
Lieferung am nächsten Tag hinzufügen
Bestellungen, die nach dem Annahmeschluss für die Lieferung am selben Tag eingehen, werden standardmäßig für die Lieferung am nächsten Tag geplant.
Wenn Sie die Lieferung am nächsten Tag deaktivieren möchten, setzen Sie no_delivery_post_cutoff auf true.
Wenn Sie die Lieferung am nächsten Tag deaktivieren, sind Ihre Versandservices nur vor dem täglichen Annahmeschluss sichtbar.
Die Lieferung am nächsten Tag ist nur verfügbar, wenn shipmentType den Wert local_delivery hat.
Rückgabebedingungen hinzufügen
Wenn Sie Produkte über Shopping-Anzeigen oder Produkteinträge präsentieren, können Sie mit returnpolicyonline Online-Rückgabebedingungen mit den folgenden Attributen erstellen, aufrufen, bearbeiten oder löschen:
- Zielländer: Rückgabebedingungen für Shopping-Anzeigen und Produkteinträge festlegen
- Rücknahmegebühren
- Retourenverfahren
- Zustand des zurückgegebenen Artikels
- Kategorie des Rücksendegrunds
- URLs für Rückgabebedingungen: Rückgabebedingungen für Shopping-Anzeigen und Produkteinträge festlegen
Für Produkte, die über Shopping-Anzeigen oder organische Einträge verkauft werden, ist keine Rücksendeadresse erforderlich.
Mit returnpolicyonline.create können Sie eine Rückgabebedingung hinzufügen. Die Antwort enthält die aktualisierte Richtlinie.
POST https://merchantapi.googleapis.com/v1/{ACCOUNT_ID}/returnpolicyonline