Mit der Accounts-Sub-API 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 Versandinformationen für einzelne Produkte aktualisieren möchten, verwenden Sie die Merchant Products API.
Weitere Informationen finden Sie unter Versandeinstellungen festlegen.
Übersicht über die Versandeinstellungen
Mit der Ressource accounts.shippingSettings 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 Channelpartnern verwendet, die Onlineshops und API-Dienste für mehrere Unternehmen verwalten. Unternehmen, die mehrere Onlineshops oder Marken haben, 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.
In der folgenden Beispielanfrage 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 {ACCESS_TOKEN}' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"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"}}}]}]}' \
--compressed
Ersetzen Sie Folgendes:
- {ACCOUNT_ID}: Die eindeutige Kennung 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 Preisgruppen übereinstimmen.
- {SERVICE_NAME}: Name des Dienstes.
- {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, für die diese Preisgruppe gilt.
- {PRICE}: Der Preis als Zahl in Mikroeinheiten. Beispiel: 1 € = 1.000.000 Mikro-Einheiten.
- {CURRENCY_CODE}: Die Währung des Preises, angegeben als dreistelliges Akronym.
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, da alle NULL- oder fehlenden Werte im Anfragetext dazu führen, 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 mithilfe der 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 {ACCESS_TOKEN}' \
--header 'Accept: application/json' \
--compressed
Hier ist ein Beispiel, wie Sie die Informationen zu den Versandeinstellungen für ein bestimmtes Konto mithilfe der 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
Mit der Methode accounts.shippingSettings.insert können Sie die Lagereinstellungen hinzufügen oder 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
shippingsettingsundwarehousesabrufen möchten, stellen Sie eineGET-Anfrage mit der Methodeaccounts.shippingSettings.getShippingSettings.Erstellen Sie eine Anfrage mit der Methode
account.shippingSettings.insert. Kopieren Sie die Ressourceshippingsettingsaus der Antwort der AnfrageGETin die Einfüge-Anfrage.Wenn Sie Informationen zu Lagern mit dem Aufruf „insert“ hinzufügen möchten, geben Sie im Anfragetext Details dazu in der Ressource
warehousesan.Führen Sie die Einfüge-Anfrage aus.
Die folgende Beispielanfrage zeigt, wie Sie die Methode accounts.shippingSettings.insert verwenden, um die Warehouse-Einstellung für Ihr Konto zu aktualisieren. In der Anfrage werden die Uhrzeit, zu der eine Bestellung angenommen und bearbeitet werden kann, die Bearbeitungstage und die Versandadresse festgelegt.
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 Kennung Ihres Merchant Center-Kontos.
- {WAREHOUSE_NAME}: Der Name des Warehouse.
- {ADDRESS}: Die Versandadresse des Lagers.
- {CITY_NAME}: Stadt, Ort oder Gemeinde. Sie kann auch abhängige Orte oder Unterorte enthalten. Beispiel: Stadtteile oder Vororte.
- {POSTAL_CODE}: Postleitzahl. Beispielsweise 94043.
- {REGION_CODE}: Der CLDR-Ländercode. Beispiel: „DE“.
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 Accounts Sub-API können Sie Regionen, die als postalCodeGroups bezeichnet werden, für ein Merchant Center-Konto verwalten.
Die Ressource postalCodeGroups ist eine Liste von Gruppierungen, wobei jede Gruppierung eine Liste mehrerer Postleitzahlen ist, für die dieselben Versandeinstellungen gelten.
Mit der Merchant API können Sie Ihre postalCodeGroups so verwalten:
Führen Sie einen get-Aufruf aus, um alle Ihre shippingsettings und postalCodeGroups abzurufen.
Kopieren Sie die shippingsettings aus dem get-Aufruf in den update-Aufruf.
Wenn Sie in Ihrem Versandservice keine Laufzeitlabels verwenden, entfernen Sie den folgenden Eintrag aus dem Anfragetext.
"transitTimeLabels": [ "all other labels" ],Geben Sie die Regionen, die Sie verwenden möchten, im Abschnitt postalCodeGroups für den Aufruf update an.
Führen Sie einen update-Aufruf mit den Ressourcen shippingsettings und postalCodeGroups aus.
Lieferung am selben Tag hinzufügen
Sie können die Merchant API verwenden, um Versandservices für die Lieferung am selben Tag zu konfigurieren, wenn Sie lokales Inventar haben. Weitere Informationen finden Sie unter Informationen zum Geschäft zu lokal erhältlichen Produkten hinzufügen (addlocalinventory).
Versandservices für die Lieferung am selben Tag haben local_delivery als shipmentType.
Dabei gilt Folgendes:
- Alle Versandservices mit dem Attribut „Lokale Lieferung“ local_delivery werden als Lieferungen am selben Tag betrachtet.
- Sie können die Informationen zur deliveryTime für lokale Lieferungen nicht ändern.
Wenn Sie die Lieferung am selben Tag für Ihre Produkte im lokalen Inventar einrichten möchten, verwenden Sie die Methode accounts.shippingSettings.insert.
Hier ist eine Beispielanfrage, in der die Versandart, storeConfig (eine Liste der Geschäfte, aus denen Ihre Produkte geliefert werden) und Preisgruppen 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 Orte, an die dieser Dienst Bestellungen versendet, einschließlich:
SHIPMENT_TYPE_UNSPECIFIEDDELIVERYLOCAL_DELIVERYCOLLECTION_POINT
- {SHIPPING_LABEL}: Eine Liste von Versandlabels, die die Produkte definieren, für die diese Preisgruppe gilt.
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 Bestellungen 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 für Bestellungen sichtbar.
Die Lieferung am nächsten Tag ist nur verfügbar, wenn der shipmentType local_delivery ist.
Rückgabebedingungen hinzufügen
Wenn Sie Produkte über Shopping-Anzeigen oder organische Einträge präsentieren, können Sie mit returnpolicyonline Online-Rückgabebedingungen mit den folgenden Attributen erstellen, ansehen, bearbeiten oder löschen:
- Zielländer, siehe Rückgabebedingungen für Shopping-Anzeigen und Produkteinträge festlegen.
- Rücknahmegebühren
- Retourenverfahren
- Zustand des zurückgegebenen Artikels
- Kategorie des Rückgabegrunds
- URLs für Rückgabebedingungen, siehe 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.
Weitere Informationen finden Sie unter Rückgabebedingungen für Shopping-Anzeigen und organische Einträge festlegen.
Mit returnpolicyonline.create können Sie Rückgabebedingungen hinzufügen. Die Antwort enthält die aktualisierte Richtlinie.
POST https://merchantapi.googleapis.com/v1/{ACCOUNT_ID}/returnpolicyonline