Hesap düzeyinde vergi ve gönderim bedeli

Content API, shippingsettings ve accounttax hizmetleri aracılığıyla bir hesaptaki tüm ürünlere uygulanacak vergi ve gönderim bedelini belirtmenizi sağlar. Daha net olmak istiyorsanız vergi ve gönderim bedelini ürünler hizmeti üzerinden öğe düzeyinde belirtebilirsiniz.

Google politikaları ve vergi ile gönderim seçeneklerini belirleme seçeneklerinin tamamı için aşağıdaki Yardım Merkezi makalelerine bakın:

tax özelliğinin ve dolayısıyla hesap vergisi 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 gönderim ücretleri için ve ABD'de kargo ücretine göre (her bir gönderim 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 operatör adlarını ve hizmetlerini almak için getsupportedcarriers yöntemini kullanın.

Karmaşık örnek

New York çevresindeki eyaletlerde ücretsiz gönderim promosyonu oluşturmak için (gönderim bedeli ödemeden) ABD'nin geri kalanı için UPS'i kullanın ve ABD eyaletlerinin her birine farklı bir vergi uygulamak için Content API'nin accounttax ve shippingsettings hizmetlerine yönelik istekleri aşağıdaki gibi kullanın. İlk olarak gönderim 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 kimlikleri, bağlı olduğu alanları temsil etmek için kullanılabilir.

Bir sonraki adımda 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 sunulur. Yer grupları şu anda ABD ve Avustralya'da desteklenmektedir.

Karmaşık gönderim kuralları: iki boyutlu tablolar ve alt tablolar

ABD'de 7 ABD doları, NYC'de 10 kilodan fazla ağırlığa sahip siparişler için siparişin fiyatına bağlı olarak ve ağırlığın altında ücretsiz gönderim aşağıdakileri belirtmek üzere 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 gönderim kuralları: Gönderi etiketlerini hizmetlere bölme

Gönderim ayarlarında, her gönderim hizmeti en fazla 20 gönderim ücreti grubu içerebilir. Gönderi ücreti gruplarını kullanarak gönderi ücretlerini ayırt etmek için kullanıldığından, gönderi etiketleri aracılığıyla yalnızca 20 benzersiz gönderim ücretinin uygulanabileceği anlaşılıyor. Bununla birlikte, ülke başına 20 adede kadar gönderim hizmetiniz olabilir. Gönderi etiketleri tarafından aynı ülke için birden fazla hizmet üzerinden ayrılan ücretleri bölerek gönderi etiketleri aracılığıyla 400'e kadar benzersiz gönderim ücretini ayırt edebilirsiniz.

Not: Birden fazla hizmetiniz varsa belirli bir ülkedeki her ürün, söz konusu ülkedeki tüm gönderim hizmetleriyle karşılaştırılarak olası gönderim ücretleri hesaplanır. Birden fazla hizmet aynı ürün için farklı ücretler verirse en düşük ücret kullanılır.

Aşağıdaki örnekte iki farklı hizmette 40 gönderi etiketi benzersiz ücretler kullanılarak ayrılmıştır. Bu örnekte gönderim kaynağıyla ilgili olarak üç noktanın arkasındaki gerçek ücretler gibi diğer ayrıntılar 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": [ ... ]
}

Her bir ücret grubu applicableShippingLabels alanında yalnızca 30 gönderi etiketine sahip olabileceğinden, gönderi etiketleri aynı gönderim ücretini paylaşsa bile ücret grupları arasında bu gönderi bölünmesi gerekebilir. Ekstrem bir örnek olarak, tüm gönderim etiketleri aynı ücret yapısını paylaşıyorsa shippingsettings tek bir ülke için en fazla 12.000 gönderi etiketi işleyebilir: ücret grubu başına 30 gönderi etiketi, gönderim hizmeti başına 20 ücret grubu ve ülke başına 20 gönderim hizmeti.

Daha fazla bilgi için accounttax ve shippingsettings referans belgelerini inceleyin.