Imposte e spedizione a livello di account

L'API Content ti consente di specificare le imposte e la spedizione che verranno applicate a tutti i prodotti all'interno di un account tramite i servizi shippingsettings e accounttax. Per essere più precisi, puoi specificare tasse e spedizione a livello di articolo tramite il servizio products.

Per informazioni sulle norme di Google e sulla gamma completa di opzioni per specificare IVA e spedizione, leggi i seguenti articoli del Centro assistenza:

Tieni presente che l'attributo tax, e quindi l'utilizzo del servizio fiscale account, è applicabile solo ai prodotti destinati agli Stati Uniti.

I servizi dell'API Contenttax e le impostazioni di spedizione dell'account rispecchiano le funzionalità dell'interfaccia utente di Merchant Center.

Esempio semplice

Per spese di spedizione di 8 euro in Francia e in base alle tariffe dei corrieri negli Stati Uniti, per la quale ogni servizio di spedizione richiede 3-7 giorni:

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 },
    }
  ]
}

Per recuperare i nomi e i servizi degli operatori disponibili, utilizza il metodo getsupportedcarriers.

Esempio complesso

Per creare una promozione con spedizione gratuita negli stati di New York (senza addebitare costi di spedizione), utilizza UPS per il resto degli Stati Uniti e, per applicare un'imposta diversa per ciascuno degli stati degli Stati Uniti, utilizza le richieste ai servizi accounttax e shippingsettings dell'API Content come segue. Innanzitutto, configura le impostazioni di spedizione:

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*" }
      ]
    }
  ]
}

Tieni presente che gli ID località possono essere utilizzati per rappresentare aree amministrative.

Configurazione successiva degli addebiti fiscali:

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"
    }
    // ...
  ]
}

Nota: le tariffe del corriere sono disponibili solo negli Stati Uniti, in Germania e in Australia. I gruppi di località sono attualmente supportati negli Stati Uniti e in Australia.

Regole di spedizione complesse: tabelle bidimensionali e sottotabelle

Per definire una promozione di spedizione di 7 $negli Stati Uniti, 3 $ o 5 $per ordini di peso superiore a 4,5 kg a New York, a seconda del prezzo dell'ordine, e senza costi al di sotto di tale peso, utilizza quanto segue:

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" }
      ]
    }
  ]
}

Regole di spedizione complesse: suddivisione delle etichette di spedizione per i servizi

In shippingsettings, ogni servizio di spedizione può contenere al massimo 20 gruppi di tariffe di spedizione. Poiché i gruppi di tariffe di spedizione sono utilizzati per distinguere tariffe di spedizione tramite le etichette di spedizione, ciò può suggerire che solo 20 è possibile applicare tariffe di spedizione uniche tramite le etichette di spedizione. Tuttavia, puoi possono offrire fino a 20 servizi di spedizione per paese. Suddividi le tariffe distinti per etichette di spedizione su più servizi per lo stesso paese, puoi distinguere fino a 400 tariffe di spedizione uniche tramite le etichette di spedizione.

Nota: se disponi di più servizi, ogni il prodotto per un determinato paese viene confrontato con tutti i servizi di spedizione pertinenti per calcolare le possibili tariffe di spedizione. Se tornano più servizi tariffe diverse per lo stesso prodotto, verrà utilizzata la tariffa più bassa.

L'esempio seguente suddivide 40 etichette di spedizione utilizzando tariffe uniche tra due diversi servizi. Questo esempio nasconde gli altri dettagli della spedizione come le tariffe effettive, dietro i puntini di sospensione.

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": [ ... ]
}

Potrebbe essere necessaria anche questa suddivisione delle etichette di spedizione tra i gruppi di tariffe anche se le etichette di spedizione condividono la stessa tariffa di spedizione, il gruppo può avere solo 30 etichette di spedizione all'interno del campo applicableShippingLabels. Quindi, come esempio estremo, se tutte le etichette di spedizione condividono la stessa struttura tariffaria, shippingsettings può gestire fino a 12.000 etichette di spedizione per un singolo paese: 30 etichette di spedizione per tariffa gruppo di tariffe, 20 gruppi di tariffe per servizio di spedizione e 20 servizi di spedizione al paese.

Per saperne di più, consulta la documentazione di riferimento per accounttax e shippingsettings.