DOCS

Beräkna landed cost - GraphQL

Beräkna en landed cost

Beräkna tullar, skatter och avgifter med GraphQL.

GraphQL

Zonos beräknar den totala landed cost för internationella sändningar—inklusive tullar, skatter och eventuella ytterligare avgifter som tas ut av tull, mäklare eller transportörer. I de flesta fall garanterar vi dessa beräkningar genom att själva betala den slutliga fakturan och debitera er exakt det vi beräknade. I vissa fall kan ni använda vår landed cost utan garanti, vilket innebär att ni tar ansvar för eventuella skillnader mellan vår beräkning och de faktiska avgifterna.

Förbered begäran 

Att beräkna en landed cost via API kräver flera indata, som vi har organiserat i arbetsflöden. När ni är klara kan ni göra en enda begäran för att returnera en landed cost baserad på fraktdestination, artiklar i varukorgen och fraktuppgifter.

Varje arbetsflöde har sina egna obligatoriska indata. GraphQL låter er skicka mer data än nödvändigt, men endast vissa fält krävs för att returnera en landed cost. Dessa är tydligt markerade i vår API-referens där ni kan se alla möjliga fält.

Observera att vissa fält är villkorligt obligatoriska om ni vill att er beräkning ska vara garanterad.

Nedan har vi listat alla fält som krävs för att beräkna en garanterad landed cost. Se till att denna information ingår innan ni gör er begäran.

partyCreateWorkflowInput

partyCreateWorkflowInput identifierar de involverade parterna och deras platser. Se hela schemat i vår GraphQL API-referens. Obligatoriska fält är:

  • location
    • administrativeAreaCode: Delstats- eller provinskoden, med två bokstäver. Krävs endast för CA och BR.
    • countryCode: Landets tvåbokstavs-ISO-kod.
    • line1: Adressens första rad.
    • postalCode: Adressens postnummer.
  • person
    • email: Personens e-postadress.
    • firstName: Personens förnamn.
    • lastName: Personens efternamn.
    • phone: Personens telefonnummer.
  • type
    • DESTINATION: location- och person-information för fraktdestinationen.
    • ORIGIN: location-information för fraktursprunget. person kopplad till fraktursprunget krävs inte.
itemCreateWorkflowInput

itemCreateWorkflowInput listar artiklarna i varukorgen. Det finns många valfria fält (se alla möjligheter i vår API-referens), men fälten nedan är obligatoriska.

  • amount: Värdet av en enskild enhet av produkten som skickas, innan multiplikation med kvantitet. Observera att detta skiljer sig från den postala definitionen av en postal artikel. Om artikelns quantity är 1 är detta den totala kostnaden för artikeln. Om artikelns quantity är >1 multiplicerar API:et artikelns amount med artikelns quantity för att få totalen för radartikeln. Lägg inte in totalpriset för alla enheter av artikeln i amount.
  • currencyCode: Valutakoden för artikelbeloppet.
  • quantity: Kvantiteten av artikeln. API:et multiplicerar artikelns amount med artikelns quantity för att få totalen för radartikeln.
  • countryOfOrigin: Landet där artikeln tillverkades.
  • Ett av följande (beroende på vad som är inställt som er artikelnyckelpreferens. Er artikelnyckel kopplar information lagrad i Catalog till artikeln i varukorgen och används vid skapande av etiketter.)
    • productId: Artikelns produkt-ID.
    • sku: Artikelns SKU.

measurements (WEIGHT, LENGTH, WIDTH, HEIGHT) krävs endast om ni vill kartongisera era artiklar när ni hämtar en fraktvärdering.

cartonsCreateWorkflowInput

cartonsCreateWorkflowInput kräver endast själva indatan. Se hela schemat i vår GraphQL API-referens för alla värden som kan skickas. Det är viktigt att skicka kartongens mått och vikt om Zonos beräknar fraktkostnaden.

shipmentRatingCreateWorkflowInput

Detta arbetsflöde används när ni redan känner till frakttjänsten och kostnaden; om ni vill att Zonos ska beräkna dessa kostnader för tjänster ni har aktiverat, byt ut detta arbetsflöde och använd shipmentRatingCalculateWorkflow i stället.

shipmentRatingCreateWorkflowInput kommunicerar fraktkostnaden. Se hela schemat i vår GraphQL API-referens. Obligatoriska fält är:

  • amount: Fraktkostnaden.
  • currencyCode: Valutakoden för fraktkostnaden.
  • serviceLevelCode: Koden som anger den fraktservicenivå som används i fraktvärderingen.
landedCostWorkFlowInput

landedCostWorkFlowInput styr preferenser för landed cost-beräkningen. Se hela schemat i vår GraphQL API-referens. Obligatoriska fält är:

  • calculationMethod: Anger er preferens för hur ni planerar att skicka: DDP (förbetalda tullar och skatter) eller DAP (antingen betalas tullar och skatter vid leverans, eller om en remitteringsordning gäller, remitteras de via ett skatte-ID).
    • Om ni använder vår landed cost-garanti ska detta värde alltid vara DDP_PREFERRED, vilket ger en DDP-offert när det är möjligt och en DAP-offert om en DDP-offert inte är tillåten. Att använda DAP i stället kan leda till att landed costs inte längre garanteras, eftersom detta vanligtvis innebär att tullar och skatter betalas vid leverans.
  • endUse: Anger om varorna säljs till ett annat företag (FOR_RESALE) eller för slutlig användning hos en konsument (NOT_FOR_RESALE).
  • tariffRate: Anger den metod som Zonos ska använda för att beräkna tullsatserna för denna offert, om det finns ett intervall av tullsatser som kan tillämpas. *När ni använder vår landed cost-garanti ska detta alltid vara ZONOS_PREFERRED.

Lägg till beräknad frakt: Om ni vill att Zonos ska beräkna fraktkostnaden åt er, ersätt shipmentRatingCreateWorkflow med shipmentRatingCalculateWorkflow. Lägg till cartonizeWorkflow om ni vill att Zonos ska sortera era artiklar i kartonger innan fraktkostnaden hittas (används för dimensionell vikt).

GraphQL ger er flexibiliteten att anpassa begäran efter er preferens. Det finns några alternativ för hur ni inkluderar HS-koder och fraktkostnader i begäran.

HS-koder 

HS-koder påverkar tullsatser och är därför obligatoriska. Ni kan skicka HS-koden för varje artikel eller låta Classify generera dem.

Skicka HS-koder för varje artikel

Zonos rekommenderar starkt att använda produktspecifika HS-koder eftersom det leder till en mer korrekt landed cost-offert. Om ni känner till era HS-koder, skicka hsCode för varje item under itemCreateWorkflow.

Om ni skickar en HS-kod validerar Zonos den i realtid när ni hämtar en landed cost-offert. Om den HS-kod ni angav är ogiltig (det vill säga den finns inte) kommer Zonos att omklassificera er artikel i realtid och använda den nya, giltiga HS-koden i stället för den ni angav.

Om ni behöver hjälp att generera HS-koder för era produkter, lär er mer om Zonos Classify och hur ni begär en klassificering.

Generera HS-koder med Classify

Om ni inte skickar en hsCode till Zonos kontrollerar vi först Zonos Catalog för att se om ni har en HS-kod lagrad för er artikel. Om ni inte har det anropar vi Classify för att generera en klassificering som driver er landed cost-beräkning baserat på följande produktinformationsfält i itemCreateWorkflow: description, category och material. Om era produktinformationsfält inte är tillräckligt detaljerade för att generera en klassificering baserat på Classifys konfidenspoäng används den standard-HS-kod som tilldelats er butik.

Fraktkostnad 

Både fraktservicenivån och dess kostnad påverkar tullar, skatter och avgifter och är därför obligatoriska. Zonos kan beräkna frakt eller ni kan skicka detta till oss.

Beräkna frakt

För att låta Zonos beräkna fraktkostnader, använd shipmentRatingCalculateWorkflow. Fraktalternativen som returneras i det beräknade fraktsvaret korrelerar med de serviceLevels ni har tilldelat fraktprofiler i Dashboard.

Felsökning: Om ni förväntar er en serviceLevel i svaret men den inte visas, se till att serviceLevel är aktiverad och stöds av den method ni valde.

Lägg till cartonizeWorkflow (som inte har några indata) om ni vill att Zonos ska sortera era artiklar i kartonger innan fraktkostnaden hittas (används för dimensionell vikt.

Skicka fraktkostnader

Om ni känner till serviceLevel och amount för en sändning kan ni skicka dem i shipmentRatingCreateWorkflow-delen av begäran. Vi använder dessa värden för att beräkna eventuella tillhörande transportörsavgifter och returnerar dem i svaret.

Begär en landed cost via API 

När ni har den obligatoriska indatan, skicka GraphQL-mutationen till API-endpointen med er valda klientbibliotek eller verktyg. Här är några exempel på hur ni kan strukturera mutationen.

Använd denna begäran när Zonos beräknar fraktkostnaden som en del av Landed Cost-begäran. Vi beräknar sedan tullar och skatter på frakt om de bedöms av destinationslandet.

1mutation CalculateLandedCost(
2$parties: [PartyCreateWorkflowInput!]!
3$items: [ItemCreateWorkflowInput!]!
4$landedCostConfig: LandedCostWorkFlowInput!
5) {
6 partyCreateWorkflow(input: $parties) {
7 type
8 id
9 organization
10 }
11 itemCreateWorkflow(input: $items) {
12 id
13 amount
14 productId
15 }
16 cartonizeWorkflow {
17 id
18 type
19 items {
20 item {
21 id
22 }
23 }
24 }
25 shipmentRatingCalculateWorkflow {
26 id
27 amount
28 }
29 landedCostCalculateWorkflow(input: $landedCostConfig) {
30 id
31 duties {
32 amount
33 currency
34 note
35 }
36 taxes {
37 amount
38 currency
39 note
40 }
41 fees {
42 amount
43 currency
44 note
45 }
46 }
47}

Nästa steg: Skapa en order

Efter att ni har beräknat en landed cost och fått landedCostId från API-svaret bör ni skapa en order för att slutföra transaktionen i Zonos-systemet. Använd mutationen orderCreate och skicka in landedCostId från er offert. Läs mer om att skapa ordrar.


Begär en landed cost i Dashboard 

Ni kan också beräkna landed costs direkt i Zonos Dashboard utan att använda API:et. Detta är användbart för att testa beräkningar, utbilda ert team eller få snabba offerter för kundförfrågningar.

Dashboard använder samma API-endpoints som beskrivs ovan, så resultaten matchar det ni skulle få från direkta API-anrop. Detta gör det till ett utmärkt sätt att validera er API-integration eller utforska hur olika indata påverkar beräkningarna.

Använda Dashboard-kalkylatorn

Med landed cost-kalkylatorn i Dashboard kan ni hämta offerter med beräknade fraktpriser, skapa offerter med kända fraktkostnader eller bearbeta flera offerter i bulk.

Använd detta flöde när ni känner till fraktservicenivån och kostnaden för er sändning.

  1. Gå till DashboardOrdersQuotes
  2. Klicka på New quote
  3. Valfritt — Ändra platsen för er avsändaradress
  4. Välj ett Destination country från rullgardinsmenyn
  5. Ange fraktbeloppet
    • Servicenivån är valfri; om ni lägger till den kan vi beräkna tillämpliga transportörsavgifter
  6. Lägg till artikeluppgifterna för sändningen
    • När ni anger en beskrivning klassificerar vi automatiskt produkten och genererar en HS-kod
    • Ni kan skriva över den genererade HS-koden vid behov
    • För flera artiklar, klicka på Save and add another. Annars klicka på Save
  7. Valfritt — Klicka på More options för att ändra:
    • Försäljningstyp till For resale
    • Leveransläge till Delivery duties unpaid
  8. Klicka på Get quote
    • För att göra ändringar, klicka på Edit form och ändra eventuella uppgifter
    • Klicka på Get quote igen för att uppdatera

En landed cost-offert visas till höger, inklusive produkt-, frakt- och importkostnader. Expandera offerten för att se detaljerade uppdelningar av artiklar, frakt, tullar, skatter och avgifter. Alla offerter sparas på offertsidan för framtida referens.

Redigera befintliga offerter: Klicka på Quote again uppe till höger för att ändra en befintlig offert i stället för att börja om från början.

Fördelar med att använda Dashboard

  • Ingen kodning krävs — Generera offerter via ett användarvänligt gränssnitt
  • Teamutbildning — Hjälp icke-tekniska teammedlemmar att förstå landed cost-komponenter
  • API-validering — Verifiera att er API-integration ger förväntade resultat
  • Kundsupport — Generera snabbt offerter för kundförfrågningar
  • Bulkhantering — Hantera flera beräkningar effektivt (kommer snart)

Dashboard-offerter inkluderar samma detaljerade uppdelningar som finns tillgängliga via API:et, vilket gör det till ett utmärkt komplement till er automatiserade integration.

Boka en demo

Var den här sidan till hjälp?