DOCS

Reverse inclusive pricing

Reverse inclusive pricing

Retirez les droits, taxes et frais de votre prix tout compris via API.

BETA

La Zonos de inclusive pricing vous permet d’envoyer un prix tout compris — incluant déjà droits, taxes et/ou frais — et de recevoir en retour le prix de base pour la documentation douanière. Cela vous permet d’afficher un prix tout compris aux acheteurs tout en déclarant un prix de base clair, non inclusif, pour la facture commerciale. Cette solution est idéale pour les marchés où la inclusive pricing est attendue ou requise, vous aidant à soutenir des stratégies de tarification globales tout en maintenant la précision et la conformité douanières.

Comment cela fonctionne-t-il ? 

Pour retirer les droits, taxes ou frais d’un prix tout compris, vous utiliserez la configuration reverseAmountDetails dans votre requête API. Cet objet indique à Zonos quels composants sont inclus dans votre prix d’entrée et doivent être retirés pour calculer le vrai prix de base pour les douanes.

Lorsque vous envoyez un prix tout compris avec la configuration reverseAmountDetails correspondante, Zonos va :

  1. Analyser le prix tout compris et les paramètres spécifiés.
  2. Déterminer quels composants (droits, taxes, frais) doivent être retirés.
  3. Calculer le prix de base en retirant ces composants.
  4. Retourner à la fois le prix de base ajusté et une ventilation des montants retirés.

Guide API 

Pour intégrer la inclusive pricing dans votre flux de travail, incluez l’objet reverseAmountDetail dans la requête itemCreateWorkflow.

Configuration de la requête

Passer reverseAmountDetail indique à Zonos de retirer les droits, taxes et/ou frais. Si cette configuration n’est pas passée, le calcul standard du landed cost sera effectué.

itemReverseAmountType

Définit quels composants sont inclus dans le prix. Vous pouvez choisir parmi :

  • TAX : Seule la taxe est incluse.
  • DUTY : Seul le droit est inclus.
  • DUTY_TAX : Droits et taxes sont inclus.
  • TAX_FEE : Taxes et frais sont inclus.
  • DUTY_FEE : Droits et frais sont inclus.
  • DUTY_TAX_FEE : Droits, taxes et frais sont tous inclus.
taxRateCountry

Indique le pays dont le rate de taxe est inclus dans le prix. Ceci est optionnel.

  • Si non spécifié, le système utilise par défaut le rate de taxe du pays de destination.
  • La valeur doit être un code pays ISO valide.
dutyRateCountry

Indique le pays dont le rate de droit est inclus dans le prix. Ceci est optionnel.

  • Si non spécifié, le système utilise par défaut le rate de taxe du pays de destination.
  • La valeur doit être un code pays ISO valide.
serviceLevelCodes

Requis uniquement si itemReverseAmountType inclut FEE.

  • Spécifie quels frais de niveau de service d’expédition sont inclus dans le prix.
  • La valeur doit être un tableau de codes de niveau de service.
status (réponse uniquement)

Indique le résultat du calcul inverse. Ce champ est retourné dans la réponse :

  • APPLIED : Le calcul inverse a été appliqué avec succès.
  • NOT_APPLIED_UNDER_DE_MINIMIS : Aucun calcul appliqué car la valeur est inférieure au seuil de minimis.
  • NOT_APPLIED_NEGATIVE_VALUE : Calcul ignoré pour éviter une valeur négative.

Exemple API

Une fois que vous avez préparé les données d’entrée requises, envoyez la mutation GraphQL à l’API en utilisant votre client ou outil préféré.

Mutation

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
mutation {
  partyCreateWorkflow(
    input: [
      { type: ORIGIN, location: { countryCode: US } }
      {
        type: DESTINATION
        location: { countryCode: CA, administrativeAreaCode: "AB" }
      }
    ]
  ) {
    id
  }
  itemCreateWorkflow(
    input: [
      {
        productId: "product-1"
        hsCode: "9503.00.9079"
        countryOfOrigin: US
        amount: 100
        quantity: 1
        currencyCode: USD
        reverseAmountDetail: { type: DUTY_TAX, taxRateCountry: CA }
      }
    ]
  ) {
    id
    amount
    currencyCode
    quantity
    hsCode
    countryOfOrigin
    reverseAmountDetail {
      originalAmount
      amount
      status
      type
      dutyRateCountry
      taxRateCountry
      taxRate
      dutyRate
      feeAmount
    }
  }
  cartonsCreateWorkflow(
    input: {
      length: 8
      width: 4
      height: 2
      dimensionalUnit: INCH
      weight: 1
      weightUnit: POUND
    }
  ) {
    id
  }
  shipmentRatingCreateWorkflow(
    input: {
      amount: "30.00"
      currencyCode: USD
      serviceLevelCode: "ups.worldwide_expedited"
    }
  ) {
    id
  }
  landedCostCalculateWorkflow(input: { calculationMethod: DDP_PREFERRED }) {
    id
    amountSubtotals {
      items
      shipping
      duties
      taxes
      fees
    }
    duties {
      amount
      currency
      note
    }
    fees {
      amount
      currency
      type
      note
    }
    taxes {
      amount
      currency
    }
    method
  }
}

Réponse

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
{
  "data": {
    "partyCreateWorkflow": [
      { "id": "party_cc85f44d-567a-4cb0-984f-17a0e2d97f78" },
      { "id": "party_0kcf5m0x404q6" }
    ],
    "itemCreateWorkflow": [
      {
        "id": "item_0kcf5rsa420zy",
        "amount": 95.0,
        "currencyCode": "USD",
        "quantity": 1,
        "hsCode": "9503.00.9079",
        "countryOfOrigin": "US",
        "reverseAmountDetail": [
          {
            "originalAmount": 100,
            "amount": 95.0,
            "status": "APPLIED",
            "type": "DUTY_TAX",
            "dutyRateCountry": "CA",
            "taxRateCountry": "CA",
            "taxRate": 0.05,
            "dutyRate": null,
            "feeAmount": null
          }
        ]
      }
    ],
    "cartonsCreateWorkflow": [{ "id": "carton_0kcf5rth4057g" }],
    "shipmentRatingCreateWorkflow": {
      "id": "shipment_rating_0kcf5rtpc057t"
    },
    "landedCostCalculateWorkflow": [
      {
        "id": "lc-6bfd94d67d2e43e5b5cf1143d56ca01e",
        "amountSubtotals": {
          "items": 95.0,
          "shipping": 30.0,
          "duties": 0.0,
          "taxes": 5.2,
          "fees": 9.5
        },
        "duties": [],
        "fees": [
          {
            "amount": 7.16,
            "currency": "USD",
            "feeType": "ADVANCEMENT",
            "type": "ADVANCEMENT",
            "note": null
          },
          {
            "amount": 1.77,
            "currency": "USD",
            "feeType": "BROKERAGE_FEE",
            "type": "BROKERAGE_FEE",
            "note": null
          },
          {
            "amount": 0.57,
            "currency": "USD",
            "feeType": "CURRENCY_CONVERSION_FEE",
            "type": "CURRENCY_CONVERSION_FEE",
            "note": null
          }
        ],
        "taxes": [
          { "amount": 4.75, "currency": "USD" },
          { "amount": 0.36, "currency": "USD" },
          { "amount": 0.09, "currency": "USD" }
        ],
        "method": "DDP"
      }
    ]
  }
}

Cette page a-t-elle été utile?