DOCS

Calculate landed cost graphql

/

Bir landed cost hesapla

Görevler, vergiler ve ücretleri GraphQL ile hesaplayın.

GraphQL

Zonos, gümrük, aracılar veya taşıma şirketlerinin talep edebileceği vergiler, harçlar ve ek ücretleri içeren gönderiler için toplam landed cost hesaplar. Bu hesaplamaları genellikle garanti altına alarak yaparız, yani gümrük, vergi ve ücret faturasını kendimiz öderken sizi tam olarak hesapladığımız tutarı ödemeye zorlarız. Nadir durumlarda, hesaplamalarımız garanti olmadan da kullanılabilir, burada hesapladığımız tutar ile gümrük vergi faturası arasındaki farkı siz üstlenirsiniz.

Mutasyon girişini hazırlayın 

GraphQL API aracılığıyla bir landed cost hesaplamak için birden fazla adım gereklidir; bu adımları iş akışlarına organize ettik. Sonunda, gönderim hedefine, sepetinizdeki öğelere ve nakliyeye dayalı bir landed cost almak için tek bir çağrı yapmanız gereken her şeye sahip olacaksınız.

Her iş akışı belirli giriş verilerine ihtiyaç duyar. GraphQL, gerekliden fazla bilgi eklemenize olanak tanır; lütfen tüm olası alanları görmek için tam API referansımıza başvurun. Gerekli alanlar, işlevsellik için gereken alanlar olarak işaretlenir, ancak bu işaret yalnızca garanti gerektiren alanlar için geçerlidir. Garantimizi kullandığınızda birkaç ek alan gereklidir.

Aşağıda, garantili bir landed cost hesaplamak için gereken tüm alanları listeledik. Bu bilgilere hazır olduğunuzdan emin olun.

Garantili hesaplamalar için gerekli girişler

partyCreateWorkflowInput

partyCreateWorkflowInput, ilgili tarafları ve konumlarını tanımlar. Tam şemayı GraphQL API referansımızda görüntüleyin. Gerekli alanlar şunlardır:

  • location
    • administrativeAreaCode: İki harfli bir eyalet veya il kodu. Yalnızca CA ve BR için gereklidir.
    • countryCode: Ülkenin iki harfli ISO kodu.
    • line1: Adresin ilk satırı.
    • postalCode: Adresin posta kodu veya posta kodu.
  • person
    • email: Kişinin e-posta adresi.
    • firstName: Kişinin adı.
    • lastName: Kişinin soyadı.
    • phone: Kişinin telefon numarası.
  • type
    • DESTINATION: Nakliye hedefi için location ve person bilgileri.
    • ORIGIN: Nakliye kaynağı için location bilgileri. Nakliye kaynağıyla ilişkilendirilen person gerekli değildir.
itemCreateWorkflowInput

itemCreateWorkflowInput, sepetteki öğeleri listeler. Birçok isteğe bağlı alan vardır (tüm olasılıkları API referansımızda görün), ancak aşağıdaki alanlar gereklidir.

  • amount: Öğenin fiyatı.
  • currencyCode: Öğe miktarı için para birimi kodu.
  • quantity: Öğenin miktarı.
  • Aşağıdakilerden biri (hangisi öğe anahtar tercihiniz olarak ayarlanmışsa). Öğe anahtarınız, Katalog'da saklanan bilgileri sepetinizdeki öğeyle bağlar ve etiket oluşturulurken kullanılır.)
    • productId: Öğenin ürün kimliği.
    • sku: Öğenin SKU'su.

measurements (WEIGHT, LENGTH, WIDTH, HEIGHT), gönderi puanı alırken öğelerinizi kartonize etmek istiyorsanız yalnızca gereklidir.

shipmentRatingCreateWorkflowInput

Bu iş akışı, zaten nakliye hizmetini ve maliyetini bildiğinizde kullanılır; Zonos'un etkinleştirdiğiniz hizmetler için bu maliyetleri hesaplamasını istiyorsanız, bu iş akışını değiştirin ve bunun yerine shipmentRatingCalculateWorkflow'u kullanın.

shipmentRatingCreateWorkflowInput, nakliye maliyetini iletişim kurar. Tam şemayı GraphQL API referansımızda görüntüleyin. Gerekli alanlar şunlardır:

  • amount: Nakliye maliyeti.
  • currencyCode: Nakliye maliyetinin para birimi kodu.
  • serviceLevelCode: Gönderi puanında kullanılan nakliye hizmet seviyesini belirten kod.
landedCostWorkflowInput

landedCostWorkflowInput, landed cost hesaplaması için tercihleri belirler. Tam şemayı GraphQL API referansımızda görüntüleyin. Gerekli alanlar şunlardır:

  • calculationMethod: Nasıl gönderim yapmayı planladığınızı belirten bir değer: Önceden ödenmiş gümrük vergileri ve vergiler (DDP) veya teslimatta ödenen gümrük vergileri ve vergiler (DAP) veya bir ödeme planı uygulanıyorsa, bunlar bir vergi kimliği aracılığıyla iletilebilir.
    • landed cost garantimizi kullanıyorsanız, bu değer her zaman DDP_PREFERRED olmalıdır, böylece mümkün olduğunda bir DDP teklifi sağlar ve bir DDP teklifi izin verilmiyorsa bir DAP teklifi sağlar. Bunun yerine DAP kullanmak, genellikle teslimatta ödenen gümrük vergileri ve vergileri sonucu garanti altına alınan maliyetlerin artık garanti altında olmamasına neden olabilir.
  • endUse: Malların başka bir işletmeye (FOR_RESALE) mi yoksa bir tüketiciye (NOT_FOR_RESALE) mi satıldığını belirtir.
  • tariffRate: Bu teklif için uygulanabilecek bir dizi tarife oranını hesaplamak için Zonos'un hangi yöntemi kullanması gerektiğini belirtir. *landed cost garantimizi kullanırken, bu her zaman ZONOS_PREFERRED olmalıdır.

Hesaplanmış nakliye ekleyin: Zonos'un nakliye maliyetini hesaplamasını istiyorsanız, shipmentRatingCreateWorkflow'u shipmentRatingCalculateWorkflow ile değiştirin. Zonos'un öğelerinizi kartonlara ayırmasını istiyorsanız, nakliye maliyetini bulmadan önce öğelerinizi kartonlara yerleştirmek için cartonizeWorkflow'u ekleyin (boyut ağırlığı için kullanılır).

Bir landed cost hesaplarken seçenekler

GraphQL, isteğinizi tercihlerinize göre özelleştirme esnekliği sunar. İsteğe HS kodları ve nakliye maliyetlerini dahil etmenin birkaç seçeneği vardır.

HS kodları

HS kodları, gümrük vergisi oranlarını etkiler ve bu nedenle gereklidir. Her bir ürün için HS kodunu geçirebilir veya Classify'nın bunları oluşturmasına izin verebilirsiniz.

Her bir ürün için HS kodlarını geçirin

Zonos ürün spesifik HS kodlarını kullanmanızı şiddetle önerir, çünkü bu daha doğru bir landed cost teklifi sağlar. HS kodlarınızı biliyorsanız, itemCreateWorkflow sırasında her item için hsCode'u geçirin.

Bir HS kodu geçerseniz, Zonos bunu landed cost teklifi alırken anında doğrulayacaktır. Geçtiğiniz HS kodu geçersizse (yani mevcut değilse), Zonos ürününüzü anında yeniden-classify sınıflandıracak ve geçerli yeni HS kodunu kullanacaktır.

Ürünleriniz için HS kodları oluşturma konusunda yardıma ihtiyacınız varsa, Zonos Classify hakkında bilgi edinin ve sınıflandırma talep etme sürecini öğrenin.

Classify ile HS kodları oluşturun

Eğer Zonos'ya bir hsCode geçmezseniz, önce Zonos Kataloğu üzerinden ürününüz için bir HS kodu saklayıp saklamadığınızı kontrol edeceğiz. Eğer yoksa, Classify'yı çağırarak landed cost hesaplamanızı desteklemek için bir sınıflandırma oluşturacağız. Bu, itemCreateWorkflow ürün detay alanları olan description, category ve material temelinde yapılacaktır. Eğer ürün detay alanlarınız, Classify's'nın güven skoru temelinde bir sınıflandırma oluşturmak için yeterince detaylı değilse, mağazanıza atanmış varsayılan HS kodu kullanılacaktır.

Varsayılan olarak, eğer bir hsCode sağlamazsanız ve Classify'yı çağırırsak, Classify tarafından oluşturulan hsCode yanıt içinde döndürülmeyecek, yalnızca landed cost'unuzu oluşturmak için dahili olarak kullanılacaktır. Ancak, bir Classify aboneliğiniz varsa, Classify's'nın HS kodunu landed cost yanıtınızda döndüreceğiz.

Nakliye maliyeti

Nakliye hizmet seviyesi ve maliyeti, gümrük vergileri, vergiler ve ücretler üzerinde etki yapar ve bu nedenle gereklidir. Zonos nakliye hesaplayabilir veya bunu bize geçebilirsiniz.

Nakliyeyi hesaplayın

Zonos'nun nakliye maliyetlerini hesaplaması için shipmentRatingCalculateWorkflow'u kullanın. Hesaplanan nakliye yanıtında döndürülen nakliye seçenekleri, Dashboard üzerinde nakliye profillerine atadığınız serviceLevels ile ilişkilendirilecektir.

Sorun Giderme: Yanıt içinde bir serviceLevel bekliyorsanız ancak görünmüyorsa, lütfen serviceLevel'ın etkin olduğundan ve seçtiğiniz method tarafından desteklendiğinden emin olun.

Nakliye maliyetini bulmadan önce Zonos'nun ürünlerinizi kutulara ayırmasını istiyorsanız, cartonizeWorkflow'u ekleyin (girdi gerektirmeyen).

Nakliye maliyetlerini geçin

Eğer bir gönderim için serviceLevel ve amount'ı biliyorsanız, bunları isteğin shipmentRatingCreateWorkflow kısmında geçebilirsiniz. Bu değerleri kullanarak ilgili taşıyıcı ücretlerini hesaplayacağız ve yanıt içinde döndüreceğiz.

Mutasyonu gönderin 

Gerekli giriş verilerine sahip olduğunuzda, GraphQL mutasyonunu seçtiğiniz istemci kütüphanesi veya aracı kullanarak API uç noktasına gönderin. İşte mutasyonu nasıl yapılandırabileceğinize dair bazı örnekler.

Hesaplanan nakliye
Manuel gönderim

Mutasyon

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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
mutation {
  partyCreateWorkflow(
    input: [
      {
        location: {
          administrativeArea: "Utah"
          administrativeAreaCode: "UT"
          countryCode: US
          line1: "345 N 2450 E"
          line2: "#151"
          locality: "St George"
          postalCode: "84790"
        }
        type: ORIGIN
      }
      {
        location: {
          administrativeArea: "BC"
          administrativeAreaCode: "BC"
          countryCode: CA
          line1: "27 Sussex Dr."
          locality: "Victoria"
          postalCode: "V8T 2V9"
        }
        person: {
          email: "test@gmail.com"
          firstName: "firstName"
          lastName: "lastName"
          phone: "5022303021"
          companyName: "goProTest"
          metadata: { key: "key", value: "value" }
        }
        type: DESTINATION
      }
      {
        type: PAYOR
        location: {
          administrativeArea: "ON"
          administrativeAreaCode: "ON"
          countryCode: CA
          latitude: 1.2
          line1: "asdf"
          line2: "asdf"
          locality: "locality"
          longitude: 3423.2
          postalCode: "M4C 1A1"
        }
        person: {
          email: "test@gmail.com"
          firstName: "firstName"
          lastName: "lastName"
          phone: "5022303021"
          companyName: "goProTest"
          metadata: { key: "key", value: "value" }
        }
      }
    ]
  ) {
    type
    id
    organization
  }

  itemCreateWorkflow(
    input: [
      {
        amount: 69
        currencyCode: USD
        countryOfOrigin: US
        quantity: 1
        productId: "productId"
        hsCode: "1006.30"
        description: "description"
        measurements: [
          { type: WIDTH, value: 2, unitOfMeasure: CENTIMETER }
          { type: WEIGHT, value: 2, unitOfMeasure: POUND }
        ]
      }
      {
        amount: 62
        currencyCode: CAD
        countryOfOrigin: US
        hsCode: "1006.30"
        quantity: 1
        productId: "productId2"
        description: "description2"
        measurements: [
          { type: WIDTH, value: 2, unitOfMeasure: CENTIMETER }
          { type: WEIGHT, value: 2, unitOfMeasure: POUND }
        ]
      }
    ]
  ) {
    id
    amount
  }
  cartonizeWorkflow {
    id
    type
    items {
      item {
        id
      }
    }
  }
  shipmentRatingCalculateWorkflow {
    id
    amount
  }
  landedCostCalculateWorkflow(
    input: { endUse: FOR_RESALE, method: DAP, tariffRate: ZONOS_PREFERRED }
  ) {
    id
    duties {
      amount
      currency
    }
    taxes {
      amount
      currency
    }
    fees {
      amount
      currency
    }
  }
}

Yanıt

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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
{
  "data": {
    "partyCreateWorkflow": [
      {
        "type": "ORIGIN",
        "id": "party_749959ae-b9ff-4de4-b4ac-59cc990c53ba",
        "organization": "organization_dbb64939-12d7-4f12-98ea-7ae5b21acfd0"
      },
      {
        "type": "DESTINATION",
        "id": "party_cd7ff245-76b6-464f-a7bf-151ebe1f8833",
        "organization": "organization_dbb64939-12d7-4f12-98ea-7ae5b21acfd0"
      },
      {
        "type": "PAYOR",
        "id": "party_00e63a9e-9735-44d9-b129-3b3e76c5df25",
        "organization": "organization_dbb64939-12d7-4f12-98ea-7ae5b21acfd0"
      }
    ],
    "itemCreateWorkflow": [
      {
        "id": "item_eb27f071-de8b-4578-9db9-ae69aaf9be3e",
        "amount": 69
      },
      {
        "id": "item_fffa8ba8-cc8d-4e13-bed6-55044a71c115",
        "amount": 62
      }
    ],
    "cartonizeWorkflow": [
      {
        "id": "carton_b34b29c1-ce27-464b-b91b-df8e4a696312",
        "type": "PACKAGE",
        "items": [
          {
            "item": {
              "id": "item_eb27f071-de8b-4578-9db9-ae69aaf9be3e"
            }
          },
          {
            "item": {
              "id": "item_fffa8ba8-cc8d-4e13-bed6-55044a71c115"
            }
          }
        ]
      }
    ],
    "shipmentRatingCalculateWorkflow": [
      {
        "id": "shipment_rating_96787309-9510-43cc-b4fa-c341ff80f4cc",
        "amount": 173.2
      },
      {
        "id": "shipment_rating_b0ccb109-7794-4c7c-b5cc-e2cfbbc5c8ac",
        "amount": 190.1
      }
    ],
    "landedCostCalculateWorkflow": [
      {
        "id": "landed_cost_74d3ce11-bff2-4326-9e6f-368e03ac88b4",
        "duties": [
          {
            "amount": 0.0,
            "currency": "USD"
          },
          {
            "amount": 0.0,
            "currency": "USD"
          }
        ],
        "taxes": [
          {
            "amount": 3.45,
            "currency": "USD"
          },
          {
            "amount": 3.1,
            "currency": "USD"
          },
          {
            "amount": 0.0,
            "currency": "USD"
          },
          {
            "amount": 0.0,
            "currency": "USD"
          }
        ],
        "fees": [
          {
            "amount": 0.13,
            "currency": "USD"
          },
          {
            "amount": 1.44,
            "currency": "USD"
          }
        ]
      },
      {
        "id": "landed_cost_7bbfd354-028c-457f-8c8e-c81bb8fa09a0",
        "duties": [
          {
            "amount": 0.0,
            "currency": "USD"
          },
          {
            "amount": 0.0,
            "currency": "USD"
          }
        ],
        "taxes": [
          {
            "amount": 3.45,
            "currency": "USD"
          },
          {
            "amount": 3.1,
            "currency": "USD"
          },
          {
            "amount": 0.0,
            "currency": "USD"
          },
          {
            "amount": 0.0,
            "currency": "USD"
          }
        ],
        "fees": [
          {
            "amount": 0.13,
            "currency": "USD"
          },
          {
            "amount": 1.44,
            "currency": "USD"
          }
        ]
      }
    ]
  }
}

Bu sayfa yardımcı oldu mu?