Paramètres de retour pour Acheter sur Google

Vous devez définir des valeurs pour returnaddress et returnpolicy pour chaque produit que vous vendez sur Acheter sur Google.

Vous devez spécifier les attributs suivants pour chaque ensemble de conditions de retour :

Période de retour
Définissez-la dans la section policy (les conditions générales).
Motifs de retours payants
Vous pouvez utiliser des motifs de retours payants pour facturer aux clients des frais de retour pour les achats auxquels ne s'appliquent pas vos conditions de retours gratuits, par exemple, betterPriceFound, changedMind, doesNotFit, noLongerNeeded ou orderedWrongItem.
Exceptions saisonnières
Les exceptions saisonnières modifient les conditions de retour à certaines périodes de l'année. Par exemple, vous pouvez définir des conditions spécifiques pour la période des fêtes de fin d'année afin d'accorder un délai de retour plus long que d'habitude à vos clients. Vous pouvez spécifier plusieurs exceptions saisonnières dans vos conditions de retour.

Adresses de retour

Une adresse de retour doit être indiquée pour tous les produits pouvant être retournés. Vous pouvez utiliser l'attribut label pour nommer une adresse de retour et l'appliquer à plusieurs produits. L'adresse de retour par défaut pour vos produits correspond à l'adresse indiquée dans votre compte Merchant Center.

La structure de returnaddress est la suivante :

{
  "returnAddressId": string,
  "label": string,
  "country": string,
  "address": {
    "recipientName": string,
    "streetAddress": [
      string
    ],
    "locality": string,
    "region": string,
    "postalCode": string,
    "country": string
  }
  "phoneNumber": string,
  "kind": string
}

Vous pouvez utiliser les méthodes suivantes pour créer, afficher, mettre à jour ou supprimer une returnaddress.

list

Vous pouvez utiliser returnaddress.list pour lister vos adresses de retour existantes.

GET https://shoppingcontent.googleapis.com/content/v2.1/merchantId/returnaddress

Voici un exemple de réponse :

{
  "kind": "content#returnaddressListResponse",
  "resources": [
    {
      "kind": "content#returnAddress",
      "country": "US",
      "returnAddressId": "US:default",
      "label": "default",
      "phoneNumber": "+1 123-456-7890",
      "address": {
        "locality": "Sacramento",
        "country": "",
        "region": "ca",
        "streetAddress": [
          "2500 Arden Way",
          ""
        ],
        "postalCode": "95825-2414",
        "recipientName": "Ariel Cruz"
      }
    },
    {
      "kind": "content#returnAddress",
      "country": "US",
      "returnAddressId": "US:test",
      "label": "test",
      "phoneNumber": "+1 222-333-4444",
      "address": {
        "locality": "MOUNTAIN VIEW",
        "country": "US",
        "region": "CA",
        "streetAddress": [
          "1600 AMPHITHEATRE PKWY"
        ],
        "postalCode": "94043-1351",
        "recipientName": "Yuri Lee"
      }
    }
  ]
}

returnAddressId fait référence à une adresse de retour existante. returnAddressId est généré par Google au format country:label. Vous pouvez retrouver returnAddressId dans la réponse d'un appel insert ou list. Vous avez besoin de la valeur de returnAddressId pour appeler les méthodes delete et get.

insert

Vous pouvez utiliser returnaddress.insert pour ajouter ou modifier une adresse. Les appels à insert modifient toutes les adresses existantes en fonction de l'étiquette que vous indiquez dans la requête. Si l'étiquette que vous fournissez n'existe pas encore, elle est ajoutée lors de l'appel. insert valide l'adresse et renvoie un code 400 si elle n'est pas valide. Sinon, insert renvoie l'adresse de retour mise à jour.

POST https://shoppingcontent.googleapis.com/content/v2.1/merchantId/returnaddress

Voici un exemple de requête :

{
  "label": "test",
  "country": "US",
  "address": {
    "locality": "MOUNTAIN VIEW",
    "postalCode": "94043-1351",
    "recipientName": "Yuri Lee",
    "region": "CA",
    "streetAddress": [
      "1600 AMPHITHEATRE PKWY"
    ],
    "country": "US"
  },
  "phoneNumber": "+1 222-333-4444"
}

Voici un exemple de réponse :

{
  "kind": "content#returnAddress",
  "country": "US",
  "returnAddressId": "US:test",
  "label": "test",
  "phoneNumber": "+1 222-333-4444",
  "address": {
    "locality": "MOUNTAIN VIEW",
    "country": "US",
    "region": "CA",
    "streetAddress": [
      "1600 AMPHITHEATRE PKWY"
    ],
    "postalCode": "94043-1351",
    "recipientName": "Yuri Lee"
  }
}

get

Vous pouvez utiliser returnaddress.get pour récupérer une adresse de retour spécifique en fonction de son returnAddressId.

GET https://shoppingcontent.googleapis.com/content/v2.1/merchantId/returnaddress/returnAddressId

Voici un exemple de réponse :

{
  "kind": "content#returnAddress",
  "country": "US",
  "returnAddressId": "US:test",
  "label": "test",
  "phoneNumber": "+1 222-333-4444",
  "address": {
    "locality": "MOUNTAIN VIEW",
    "country": "US",
    "region": "CA",
    "streetAddress": [
      "1600 AMPHITHEATRE PKWY"
    ],
    "postalCode": "94043-1351",
    "recipientName": "Yuri Lee"
  }
}

delete

Vous pouvez utiliser returnaddress.delete pour supprimer une adresse de retour existante en fonction de son returnAddressId. Une fois l'adresse de retour supprimée, cette méthode renvoie un code 204 No Content.

DELETE https://shoppingcontent.googleapis.com/content/v2.1/merchantId/returnaddress/returnAddressId

Conditions de retour

Les conditions de retour vous aident à automatiser les retours en stockant des informations telles que les périodes de retour, les motifs de retours payants et les exceptions saisonnières. Votre compte Merchant Center est automatiquement associé à des conditions de retour par défaut, et vous pouvez utiliser cette ressource pour gérer des conditions de retour supplémentaires.

La structure de returnpolicy est la suivante :

{
  "returnPolicyId": string,
  "label": string,
  "country": string,
  "name": string,
  "policy": {
    "type": string,
    "numberOfDays": string,
    "lastReturnDate": string
  },
  "seasonalOverrides": [
    {
      "name": string,
      "startDate": string,
      "endDate": string,
      "policy": {
        "type": string,
        "numberOfDays": string,
        "lastReturnDate": string
      },
    }
  ],
  "nonFreeReturnReasons": [
    string
  ],
  "kind": string,
  "returnShippingFee": {
    "value": string,
    "currency": string
  }
}

Les valeurs acceptées pour type sont lifetimeReturns, noReturns et numberOfDaysAfterDelivery. Si la valeur est numberOfDaysAfterDelivery, alors la valeur de numberOfDays doit correspondre à 14, 15, 21, 28, 30, 45, 60, 90, 100, 180, 270 ou 365. La valeur des conditions par défaut ne doit pas être inférieure à 30 jours. Selon le type de produit, d'autres restrictions peuvent s'appliquer.

Vous pouvez utiliser les méthodes suivantes pour modifier des conditions de retour returnpolicy.

list

Vous pouvez utiliser returnpolicy.list pour lister toutes les conditions de retour existantes.

GET https://shoppingcontent.googleapis.com/content/v2.1/merchantId/returnpolicy

Voici un exemple de requête :

{
  "kind": "content#returnpolicyListResponse",
  "resources": [
    {
      "nonFreeReturnReasons": [
        "betterPriceFound"
      ],
      "kind": "content#returnPolicy",
      "name": "",
      "country": "US",
      "seasonalOverrides": [
        {
          "policy": {
            "type": "lifetimeReturns"
          },
          "startDate": "2019-11-01",
          "endDate": "2020-01-01",
          "name": "Holiday"
        }
      ],
      "label": "default",
      "policy": {
        "numberOfDays": "30",
        "type": "numberOfDaysAfterDelivery"
      },
      "returnPolicyId": "transactions:US:default"
    }
  ]
}

returnPolicyId fait référence à des conditions de retour existantes. returnPolicyId est une chaîne composée des attributs d'étiquette et de pays au format transactions:country:label. Vous pouvez retrouver returnPolicyId dans la réponse d'un appel insert ou list. Vous avez besoin de la valeur de returnAddressId pour appeler les méthodes delete et get.

insert

returnpolicy.insert vous permet de créer ou de modifier des conditions de retour. Les champs label, country, name et policy sont obligatoires. Si nonFreeReturnReasons est spécifié, returnShippingFee est également requis.

POST https://shoppingcontent.googleapis.com/content/v2.1/merchantId/returnpolicy

Voici un exemple de requête :

{
  "name": "30days",
  "label": "30days",
  "country": "US",
  "policy": {
    "type": "numberOfDaysAfterDelivery",
    "numberOfDays": "30"
  },
  "nonFreeReturnReasons": [
    "betterPriceFound"
  ],
  "returnShippingFee": {
    "currency": "USD",
    "value": "5.00"
  },
  "seasonalOverrides": [
    {
      "name": "holiday",
      "policy": {
        "type": "lastReturnDate",
        "lastReturnDate": "2022-02-15"
      },
      "startDate": "2021-11-01",
      "endDate": "2022-01-15"
    }
  ]
}

Voici un exemple de réponse :

{
  "kind": "content#returnPolicy",
  "returnPolicyId": "transactions:US:30days",
  "label": "30days",
  "country": "US",
  "name": "30days",
  "policy": {
    "type": "numberOfDaysAfterDelivery",
    "numberOfDays": "30"
  },
  "seasonalOverrides": [
    {
      "name": "holiday",
      "startDate": "2021-11-01",
      "endDate": "2022-01-15",
      "policy": {
        "type": "lastReturnDate",
        "lastReturnDate": "2022-02-15"
      }
    }
  ],
  "nonFreeReturnReasons": [
    "betterPriceFound"
  ],
  "returnShippingFee": {
    "value": "5.00",
    "currency": "USD"
  }
}

get

Vous pouvez utiliser returnpolicy.get pour récupérer des conditions de retour spécifiques en fonction de leur returnPolicyId.

GET https://shoppingcontent.googleapis.com/content/v2.1/merchantId/returnpolicy/returnPolicyId

Voici un exemple de réponse :

{
  "nonFreeReturnReasons": [
    "betterPriceFound"
  ],
  "kind": "content#returnPolicy",
  "name": "",
  "country": "US",
  "seasonalOverrides": [
    {
      "policy": {
        "type": "lifetimeReturns"
      },
      "startDate": "2019-11-01",
      "endDate": "2020-01-01",
      "name": "Holiday"
    }
  ],
  "label": "default",
  "policy": {
    "numberOfDays": "30",
    "type": "numberOfDaysAfterDelivery"
  },
  "returnPolicyId": "transactions:US:default"
}

delete

Vous pouvez utiliser returnpolicy.delete pour supprimer des conditions de retour en fonction de leur returnPolicyId. Une fois les conditions de retour supprimées, cette méthode renvoie un code 204 No Content.

DELETE https://shoppingcontent.googleapis.com/content/v2.1/merchantId/returnpolicy/returnPolicyId

custombatch

Vous pouvez utiliser returnpolicy.custombatch pour combiner plusieurs appels liés aux conditions de retour en une seule requête en spécifiant la méthode get, insert ou delete, par exemple. Le corps de la requête contient une instance ReturnpolicyCustomBatchRequest.

GET https://shoppingcontent.googleapis.com/content/v2.1/merchantId/returnpolicy/batch

Voici un exemple de requête :

{
  "entries": [
    {
      "batchId": "1",
      "method": "get",
      "returnPolicyId": "9876543",
      "merchantId": "1234567"
    }
  ]
}

Voici un exemple de réponse :

{
  "kind": "content#returnpolicyCustomBatchResponse",
  "entries": [
    {
      "kind": "content#returnpolicyCustomBatchResponseEntry",
      "batchId": "1",
      "errors": {
        "errors": [
          {
            "domain": "global",
            "reason": "invalid",
            "message": "[item id] Invalid item id: 2883698234"
          }
        ],
        "code": "400",
        "message": "[item id] Invalid item id: 2883698234"
      }
    }
  ]
}