Mutasyon girişini hazırlayın
Bir landed cost'u GraphQL API'si aracılığıyla hesaplamak, birden fazla adımı içerir; bu adımları iş akışlarına organize ettik. Sonunda, nakliye varış noktasına, sepetinizdeki öğelere ve nakliyeye dayalı bir landed cost almanızı sağlayacak her şeye sahip olacaksınız.
Her iş akışı belirli giriş verilerine ihtiyaç duyar. GraphQL, gerekenlerden daha 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 işlevsellik için gereken 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 varış noktası içinlocation
veperson
bilgileri.ORIGIN
: Nakliye kaynağı içinlocation
bilgileri. Nakliye kaynağıyla ilişkilendirilenperson
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
), sevkiyat derecelendirmesi alırken öğelerinizi kartonlara yerleştirmek istiyorsanız yalnızca gereklidir.
cartonsCreateWorkflowInput
cartonsCreateWorkflowInput
yalnızca girişi gerektirir. Geçilebilecek tüm değerleri görmek için GraphQL API referansımızdaki tam şemaya bakın. Zonos, nakliye maliyetini hesaplarken kartonun boyutlarını ve ağırlığını geçirmek önemlidir.
shipmentRatingCreateWorkflowInput
Bu iş akışı, zaten nakliye hizmetini ve maliyetini bildiğinizde kullanılır; eğer Zonos'un bu maliyetleri hesaplamasını istiyorsanız ve 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
: Sevkiyat derecelendirmesinde kullanılan nakliye hizmet seviyesini gösteren 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öndermeyi planladığınızı belirten bir değer: Önceden ödenmiş gümrük vergileri ve vergileri (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 kullandığınızda, 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 yerineDAP
kullanmak, genellikle teslimatta ödenen gümrük vergileri ve vergileri sonucunda, landed maliyetlerin artık garanti altında olmamasına neden olabilir.
- landed cost garantimizi kullandığınızda, bu değer her zaman
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 kullandığınızda, bu her zamanZONOS_PREFERRED
olmalıdır.
Hesaplanmış nakliye ekleyin: Zonos'un nakliye maliyetini hesaplamasını istiyorsanız,
shipmentRatingCreateWorkflow
'ushipmentRatingCalculateWorkflow
ile değiştirin. Zonos'un, nakliye maliyetini bulmadan önce öğelerinizi kartonlara sıralamasını istiyorsanız,cartonizeWorkflow
'u ekleyin (boyutsal ağırlık 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.
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 sağladığınız kod yerine yeni, geçerli 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 nasıl sınıflandırma talep edeceğinizi öğrenin.
Eğer Zonos'a 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 hesaplamanızı desteklemek için landed cost çağrısı yapacağız. Bu, itemCreateWorkflow
ürün detay alanları olan description
, category
ve material
temelinde bir sınıflandırma oluşturacaktı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 atanan 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.
Zonos'un 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ütfenserviceLevel
'ın etkin olduğundan ve seçtiğinizmethod
tarafından desteklendiğinden emin olun.
Nakliye maliyetini bulmadan önce Zonos'un ürünlerinizi kutulara ayırmasını istiyorsanız, cartonizeWorkflow
'u (girdi gerektirmeyen) ekleyin (bu, boyutsal ağırlık için kullanılır).
Eğer bir gönderi için serviceLevel
ve amount
'ı biliyorsanız, bunları isteğin shipmentRatingCreateWorkflow
kısmında geçebilirsiniz. Bu değerleri, ilgili taşıyıcı ücretlerini hesaplamak için kullanacağı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 yapılandırmanın bazı örnekleri.
Zonos'un Landed Cost isteği kapsamında nakliye maliyetini hesapladığı durumlarda bu isteği kullanın. O zaman, varış ülkesinin değerlendirdiği takdirde nakliye üzerinden gümrük vergileri ve vergileri hesaplayacağız.
Mutasyon
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
{
"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"
}
]
}
]
}
}
Bir landed cost hesapla
Görevler, vergiler ve ücretleri GraphQL ile hesaplayın.GraphQL
Zonos, gümrük, aracılar veya nakliye taşıyıcıları tarafından alınabilecek 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.