Hesap düzeyinde vergi ve gönderim bedeli

Content API, shippingsettings ve accounttax hizmetleri aracılığıyla bir hesaptaki tüm ürünler için geçerli olacak vergi ve kargo ayarlarını belirtmenize olanak tanır. Daha hassas olmak isterseniz products hizmeti aracılığıyla vergi ve kargo bilgilerini öğe düzeyinde belirtebilirsiniz.

Google politikaları ve vergi ile kargoyu belirtme seçeneklerinin tamamı hakkında bilgi için aşağıdaki Yardım Merkezi makalelerine bakın:

tax özelliğinin ve dolayısıyla accounttax hizmetinin kullanımının yalnızca ABD'yi hedefleyen ürünler için geçerli olduğunu unutmayın.

accounttax ve shippingsettings Content API hizmetleri, Merchant Center kullanıcı arayüzünün işlevlerini yansıtır.

Basit örnek

Fransa'da 8 avro olan kargo ücretleri ve ABD'deki kargo şirketi ücretlerine göre (her kargo hizmetinin teslimatı 3-7 gün sürer):

PUT /content/v2.1/<merchant_id>/shippingsettings/<account_id>
{
  "accountId": <account_id>,
  "services": [
    {
      "name": "Livraison Prioritaire",
      "deliveryCountry": "FR",
      "currency": "EUR",
      "rateGroups": [
        {
          "singleValue": {
            "flatRate": { "currency": "EUR", "value": "8" }
          }
        }
      ],
      "active": true,
      "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 }
    },
    {
      "name": "UPS in US",
      "deliveryCountry": "US",
      "currency": "USD"
      "rateGroups": [
        {
          "singleValue": { "carrierRateName": "ups" },
          "carrierRates": [
            {
              "name": "ups",
              "carrierName": "UPS",
              "carrierService": "Ground",
              "originPostalCode": "10011"
            }
          ]
        }
      ],
      "active": true,
      "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 },
    }
  ]
}

Kullanılabilir kargo şirketi adlarını ve hizmetlerini almak için getsupportedcarriers yöntemini kullanın.

Karmaşık örnek

New York'un çevresindeki eyaletlerde ücretsiz kargo promosyonu oluşturmak (kargo ücreti almamak) için ABD'nin geri kalanında UPS'i kullanın ve ABD eyaletlerinin her biri için farklı bir vergi uygulamak üzere Content API'nin accounttax ve shippingsettings hizmetlerine istekleri aşağıdaki gibi kullanın. Öncelikle kargo ayarlarını yapılandırın:

PUT /content/v2.1/<merchant_id>/shippingsettings/<account_id>
{
  "accountId": <account_id>,
  "services": [
    {
      "name": "Eligible for free shipping",
      "deliveryCountry": "US",
      "rateGroups": [
        {
          "mainTable": {
            "rowHeaders": {
              "locations": [
                { "locationIds": ["21167"] }, // NY
                { "locationIds": ["21164", "21139"] }  // NJ, CT
              ]
            },
            "rows": [
              {
                "cells": [
                  {
                    "flatRate": { "currency": "USD", "value": "0" }
                  }
                ]
              },
              {
                "cells": [
                  {
                    "flatRate": { "currency": "USD", "value": "0" }
                  }
                ]
              }
            ]
          }
        }
      ],
      "active": true,
      "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 },
      "currency": "USD"
    },
    {
      "name": "UPS in US",
      "deliveryCountry": "US",
      "rateGroups": [
        {
          "singleValue": { "carrierRateName": "UPS mainland" },
          "carrierRates": [
            {
              "name": "UPS mainland",
              "carrierName": "UPS",
              "carrierService": "Ground",
              "originPostalCode": "10011",  // currently only US, AU, and DE postal codes
              "percentageAdjustment": "1.05",
              "flatAdjustment": { "currency": "USD", "value": "0.75" }
            }
          ]
        }
      ],
      "active": true,
      "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 },
      "currency": "USD"
    }
   ],
  "postalCodeGroups": [
    {
      "name": "More cities",  // An alternative using postal codes
      "country": "US",
      "postalCodeRanges": [
        { "postalCodeRangeBegin": "94041" },
        { "postalCodeRangeBegin": "94042" },
        { "postalCodeRangeBegin": "94043", "postalCodeRangeEnd": "94045" },
        { "postalCodeRangeBegin": "9405*" },
        { "postalCodeRangeBegin": "9406*", "postalCodeRangeEnd": "9408*" }
      ]
    }
  ]
}

Konum kimliklerinin idari bölgeleri temsil etmek için kullanılabileceğini unutmayın.

Ardından, vergi ücretlerini yapılandırın:

PUT /content/v2.1/<merchant_id>/accounttax/<account_id>
{
  "accountId": <account_id>,
  "rules": [
    {
      "country": "US",  // currently only US is supported, may be omitted
      "locationId": 21167,
      "useGlobalRate": true,
      "shippingTaxed": false
    },
    {
      "locationId": 21137,
      "useGlobalRate": false,
      "shippingTaxed": true,
      "ratePercent": "2.15"
    }
    // ...
  ]
}

Not: Kargo ücretleri yalnızca ABD, Almanya ve Avustralya'da kullanılabilir. Konum grupları şu anda ABD ve Avustralya'da desteklenmektedir.

Karmaşık kargo kuralları: iki boyutlu tablolar ve alt tablolar

ABD'de 7 ABD doları, NYC'de 10 pound'dan ağır siparişler için 3 ABD doları veya 5 ABD doları (siparişin fiyatına bağlı olarak) ve bu ağırlığın altındaki siparişler için ücretsiz kargo promosyonu tanımlamak istiyorsanız aşağıdakileri kullanın:

PUT /content/v2.1/<merchant_id>/shippingsettings/<account_id>
{
  "accountId": <account_id>,
  "services": [
    {
      "name": "Custom shipping rules",
      "deliveryCountry": "US",
      "rateGroups": [
        {
          "mainTable": {
            "rowHeaders": {
              "postalCodeGroupNames": [ "NYC", "all other locations" ]
            },
            "columnHeaders": {
              "weights": [
                { "unit": "lb", "value": "10" },
                { "unit": "lb", "value": "infinity" }
              ]
            },
            "rows": [
              {
                "cells": [
                  { "flatRate": { "value": "0", "currency": "USD" } },
                  { "subtableName": "NYC large packages" }
                ]
              },
              {
                "cells": [
                  { "flatRate": { "value": "7", "currency": "USD" } },
                  { "flatRate": { "value": "7", "currency": "USD" } }
                ]
              }
            ]
          },
          "subtables": [
            {
              "name": "NYC large packages",
              "rowHeaders": {
                "prices": [
                  {"value": "100", "currency": "USD"},
                  {"value": "infinity", "currency": "USD"}]
              },
              "rows": [
                {
                  "cells": [
                    { "flatRate": { "value": "3", "currency": "USD" } }
                  ]
                },
                {
                  "cells": [
                    { "flatRate": { "value": "5", "currency": "USD" } }
                  ]
                }
              ]
            }
          ]
        }
      ],
      "active": true,
      "currency": "USD",
      "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 }
    }
  ],
  "postalCodeGroups": [
    {
      "name": "NYC",  // Approximation of NYC using postal codes
      "country": "US",
      "postalCodeRanges": [
        { "postalCodeRangeBegin": "10000", postalCodeRangeEnd: "11999" }
      ]
    }
  ]
}

Karmaşık kargo kuralları: Kargo etiketlerini hizmetlere bölme

Kargo ayarlarında, her kargo hizmeti en fazla 20 kargo ücreti grubu içerebilir. Kargo ücreti grupları, kargo etiketleri aracılığıyla kargo ücretlerini ayırt etmek için kullanıldığından bu durum, kargo etiketleri aracılığıyla yalnızca 20 benzersiz kargo ücretinin uygulanabileceğini gösteriyor gibi görünebilir. Ancak ülke başına en fazla 20 kargo hizmeti kullanabilirsiniz. Aynı ülke için birden fazla hizmette kargo etiketleriyle ayırt edilen ücretleri bölerek, kargo etiketleri aracılığıyla 400'e kadar benzersiz kargo ücretini ayırt edebilirsiniz.

Not: Birden fazla hizmetiniz varsa belirli bir ülkedeki her ürün, olası kargo ücretlerini hesaplamak için o ülkedeki tüm kargo hizmetlerine göre kontrol edilir. Aynı ürün için birden fazla hizmet farklı ücretler döndürürse en düşük ücret kullanılır.

Aşağıdaki örnekte, benzersiz ücretler kullanan 40 kargo etiketi iki farklı hizmet arasında bölünmektedir. Bu örnekte, kargo kaynağının diğer ayrıntıları (ör. gerçek ücretler) üç nokta ile gizlenir.

PUT /content/v2.1/<merchant_id>/shippingsettings/<account_id>
{
  "accountId": <account_id>,
  "services": [
    {
      "name": "labels_0_19",
      "deliveryCountry": "US",
      "active": true,
      "currency": "USD",
      "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 }
      "rateGroups": [
        { "applicableShippingLabels": ["shipping_label_0"], ... }
        { "applicableShippingLabels": ["shipping_label_1"], ... }
        { "applicableShippingLabels": ["shipping_label_2"], ... }
        { "applicableShippingLabels": ["shipping_label_3"], ... }
        { "applicableShippingLabels": ["shipping_label_4"], ... }
        { "applicableShippingLabels": ["shipping_label_5"], ... }
        { "applicableShippingLabels": ["shipping_label_6"], ... }
        { "applicableShippingLabels": ["shipping_label_7"], ... }
        { "applicableShippingLabels": ["shipping_label_8"], ... }
        { "applicableShippingLabels": ["shipping_label_9"], ... }
        { "applicableShippingLabels": ["shipping_label_10"], ... }
        { "applicableShippingLabels": ["shipping_label_11"], ... }
        { "applicableShippingLabels": ["shipping_label_12"], ... }
        { "applicableShippingLabels": ["shipping_label_13"], ... }
        { "applicableShippingLabels": ["shipping_label_14"], ... }
        { "applicableShippingLabels": ["shipping_label_15"], ... }
        { "applicableShippingLabels": ["shipping_label_16"], ... }
        { "applicableShippingLabels": ["shipping_label_17"], ... }
        { "applicableShippingLabels": ["shipping_label_18"], ... }
        { "applicableShippingLabels": ["shipping_label_19"], ... }
      ]
    },
    {
      "name": "labels_20_39",
      "deliveryCountry": "US",
      "active": true,
      "currency": "USD",
      "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 }
      "rateGroups": [
        { "applicableShippingLabels": ["shipping_label_20"], ... }
        { "applicableShippingLabels": ["shipping_label_21"], ... }
        { "applicableShippingLabels": ["shipping_label_22"], ... }
        { "applicableShippingLabels": ["shipping_label_23"], ... }
        { "applicableShippingLabels": ["shipping_label_24"], ... }
        { "applicableShippingLabels": ["shipping_label_25"], ... }
        { "applicableShippingLabels": ["shipping_label_26"], ... }
        { "applicableShippingLabels": ["shipping_label_27"], ... }
        { "applicableShippingLabels": ["shipping_label_28"], ... }
        { "applicableShippingLabels": ["shipping_label_29"], ... }
        { "applicableShippingLabels": ["shipping_label_30"], ... }
        { "applicableShippingLabels": ["shipping_label_31"], ... }
        { "applicableShippingLabels": ["shipping_label_32"], ... }
        { "applicableShippingLabels": ["shipping_label_33"], ... }
        { "applicableShippingLabels": ["shipping_label_34"], ... }
        { "applicableShippingLabels": ["shipping_label_35"], ... }
        { "applicableShippingLabels": ["shipping_label_36"], ... }
        { "applicableShippingLabels": ["shipping_label_37"], ... }
        { "applicableShippingLabels": ["shipping_label_38"], ... }
        { "applicableShippingLabels": ["shipping_label_39"], ... }
      ]
    }
  ],
  "postalCodeGroups": [ ... ]
}

Kargo etiketleri aynı kargo ücretini paylaşıyor olsa bile ücret grupları arasında kargo etiketlerinin bu şekilde bölünmesi gerekebilir. Bunun nedeni, her ücret grubunun applicableShippingLabels alanında yalnızca 30 kargo etiketi içerebilmesidir. Bu nedenle, uç bir örnek olarak, tüm kargo etiketleri aynı ücret yapısını paylaşıyorsa shippingsettings tek bir ülke için 12.000 kargo etiketini işleyebilir: ücret grubu başına 30 kargo etiketi, kargo hizmeti başına 20 ücret grubu ve ülke başına 20 kargo hizmeti.

Daha fazla bilgi için accounttax ve shippingsettings ile ilgili referans belgelerine bakın.