Comment ça fonctionne ?
Pour inverser les droits, taxes ou frais d'un prix inclusif, 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 véritable prix de base pour les douanes.
Lorsque vous envoyez un prix inclusif avec la configuration reverseAmountDetails
respective, Zonos va :
- Analyser le prix inclusif et les paramètres spécifiés.
- Déterminer quels composants (droits, taxes, frais) inverser.
- Calculer le prix de base en retirant ces composants.
- Retourner à la fois le prix de base ajusté et un détail des montants inversés.
Guide de l'API
Pour intégrer le reverse 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 d'inverser 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
: Le droit et la taxe sont inclus.TAX_FEE
: La taxe et les frais sont inclus.DUTY_FEE
: Le droit et les frais sont inclus.DUTY_TAX_FEE
: Le droit, la taxe et les 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
Ceci est 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
: Le calcul a été ignoré pour éviter une valeur négative.
Exemple d'API
Une fois que vous avez préparé l'entrée requise, envoyez la mutation GraphQL à l'API en utilisant votre client ou outil préféré.
Mutation
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
feeType
type
note
}
taxes {
amount
currency
}
method
}
}
Réponse
{
"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"
}
]
}
}
Reverse inclusive pricing
Inversez les droits, taxes et frais de votre prix inclusif via l'API.
À VENIR
La fonction Reverse Zonos de Inclusive Pricing vous permet d'envoyer un prix inclusif—qui inclut déjà les droits, taxes et/ou frais—et de recevoir le prix de base en retour pour la documentation douanière. Cela vous permet d'afficher un prix tout compris aux acheteurs tout en déclarant un prix de base propre et non inclusif pour la facture commerciale. Cette solution est idéale pour les marchés où le inclusive pricing est attendu ou requis, vous aidant à soutenir des stratégies de tarification mondiale et à maintenir l'exactitude et la conformité douanières.