Bereiten Sie die Eingabedaten für die Mutation vor
Die Berechnung einer landed cost über die GraphQL API umfasst mehrere Schritte; wir haben diese Schritte in Workflows organisiert. Am Ende haben Sie alles, was Sie benötigen, um einen Anruf zu tätigen, um eine landed cost basierend auf dem Versandziel, den Artikeln im Warenkorb und dem Versand zu erhalten.
Jeder Workflow benötigt spezifische Eingabedaten. GraphQL ermöglicht es Ihnen, mehr Informationen als erforderlich einzuschließen; bitte beziehen Sie sich auf unser vollständiges API-Referenzdokument, um alle möglichen Felder zu sehen. Erforderliche Felder sind in unserem API-Referenzdokument als solche gekennzeichnet, aber dieses Zeichen gilt nur für Felder, die für die Funktionalität erforderlich sind. Einige zusätzliche Felder sind erforderlich, wenn Sie unsere Garantie nutzen.
Im Folgenden haben wir alle erforderlichen Felder für die Berechnung einer garantierten landed cost aufgelistet. Stellen Sie sicher, dass Sie diese Informationen bereit haben.
Erforderliche Eingaben für garantierte Berechnungen
partyCreateWorkflowInput
Der partyCreateWorkflowInput
identifiziert die beteiligten Parteien und deren Standorte. Sehen Sie das vollständige Schema in unserer GraphQL API Referenz. Erforderliche Felder sind:
location
administrativeAreaCode
: Der Bundesstaat oder Provinzcode, in zwei Buchstaben. Nur erforderlich für CA und BR.countryCode
: Der zweibuchstabige ISO-Code des Landes.line1
: Die erste Zeile der Adresse.postalCode
: Die Postleitzahl oder ZIP-Code der Adresse.
person
email
: Die E-Mail-Adresse der Person.firstName
: Der Vorname der Person.lastName
: Der Nachname der Person.phone
: Die Telefonnummer der Person.
type
DESTINATION
: Dielocation
&person
Informationen für das Versandziel.ORIGIN
: Dielocation
Informationen für den Versandursprung. Dieperson
, die mit dem Versandursprung verbunden ist, ist nicht erforderlich.
itemCreateWorkflowInput
Der itemCreateWorkflowInput
listet die Artikel im Warenkorb auf. Es gibt viele optionale Felder (sehen Sie alle Möglichkeiten in unserer API-Referenz), aber die folgenden Felder sind erforderlich.
amount
: Der Preis des Artikels.currencyCode
: Der Währungs-Code für den Artikelbetrag.quantity
: Die Menge des Artikels.- Eines der folgenden (je nachdem, was als Ihre Artikel-Schlüssel-Präferenz festgelegt ist. Ihr Artikel-Schlüssel verbindet Informationen, die im Katalog gespeichert sind, mit dem Artikel im Warenkorb und wird während der Etikettenerstellung verwendet.)
productId
: Die Produkt-ID des Artikels.sku
: Die SKU des Artikels.
Die measurements
(WEIGHT
, LENGTH
, WIDTH
, HEIGHT
) sind nur erforderlich, wenn Sie Ihre Artikel beim Erhalten einer Versandbewertung kartonisieren möchten.
shipmentRatingCreateWorkflowInput
Dieser Workflow wird verwendet, wenn Sie bereits den Versanddienst und die Kosten kennen; wenn Sie möchten, dass Zonos diese Kosten für die von Ihnen aktivierten Dienste berechnet, ersetzen Sie diesen Workflow durch den shipmentRatingCalculateWorkflow
.
Der shipmentRatingCreateWorkflowInput
kommuniziert die Versandkosten. Sehen Sie das vollständige Schema in unserer GraphQL API Referenz. Erforderliche Felder sind:
amount
: Die Versandkosten.currencyCode
: Der Währungs-Code der Versandkosten.serviceLevelCode
: Der Code, der das verwendete Versanddienstleistungsniveau in der Versandbewertung angibt.
landedCostWorkflowInput
Der landedCostWorkflowInput
diktiert die Präferenzen für die Berechnung der landed cost. Sehen Sie das vollständige Schema in unserer GraphQL API Referenz. Erforderliche Felder sind:
calculationMethod
: Gibt Ihre Präferenz an, wie Sie versenden möchten: DDP (vorausbezahlte Zölle und Steuern) oder DAP (entweder Zölle und Steuern werden bei der Lieferung bezahlt, oder wenn ein Rückerstattungsschema gilt, werden sie über eine Steuer-ID erstattet).- Wenn Sie unsere landed cost-Garantie nutzen, sollte dieser Wert immer
DDP_PREFERRED
sein, was ein DDP-Angebot bereitstellt, wenn möglich, und ein DAP-Angebot, wenn ein DDP-Angebot nicht zulässig ist. Die Verwendung vonDAP
anstelle dessen kann dazu führen, dass die Landed Costs nicht mehr garantiert werden, da dies typischerweise bedeutet, dass Zölle und Steuern bei der Lieferung bezahlt werden.
- Wenn Sie unsere landed cost-Garantie nutzen, sollte dieser Wert immer
endUse
: Gibt an, ob die Waren an ein anderes Unternehmen verkauft werden (FOR_RESALE
) oder für den Endverbrauch mit einem Verbraucher (NOT_FOR_RESALE
) bestimmt sind.tariffRate
: Gibt die Methode an, die Zonos zur Berechnung der Zolltarife für dieses Angebot verwenden sollte, falls eine Reihe von Zolltarifen angewendet werden könnte. *Bei Verwendung unserer landed cost-Garantie sollte dies immerZONOS_PREFERRED
sein.
Berechnen Sie die Versandkosten: Wenn Sie möchten, dass Zonos die Versandkosten für Sie berechnet, ersetzen Sie den
shipmentRatingCreateWorkflow
durch denshipmentRatingCalculateWorkflow
. Fügen Sie dencartonizeWorkflow
hinzu, wenn Sie möchten, dass Zonos Ihre Artikel in Kartons sortiert bevor die Versandkosten ermittelt werden (verwendet für dimensionales Gewicht).
Optionen bei der Berechnung einer landed cost
GraphQL gibt Ihnen die Flexibilität, die Anfrage nach Ihren Wünschen anzupassen. Es gibt ein paar Optionen, wie Sie HS-Codes und Versandkosten in die Anfrage einbeziehen können.
HS-Codes
HS-Codes beeinflussen die Zolltarife und sind daher erforderlich. Sie können den HS-Code für jeden Artikel übermitteln oder Classify sie generieren lassen.
Zonos empfiehlt dringend, produktspezifische HS-Codes zu verwenden, da dies zu einem genaueren landed cost-Angebot führt. Wenn Sie Ihre HS-Codes kennen, übermitteln Sie den hsCode
für jeden item
während des itemCreateWorkflow
.
Wenn Sie einen HS-Code übermitteln, wird Zonos ihn bei der Erstellung eines landed cost-Angebots sofort validieren. Wenn der von Ihnen angegebene HS-Code ungültig ist (d.h. er existiert nicht), wird Zonos Ihren Artikel sofort neu-classify und den neuen, gültigen HS-Code anstelle des von Ihnen angegebenen verwenden.
Wenn Sie Hilfe bei der Generierung von HS-Codes für Ihre Produkte benötigen, erfahren Sie mehr über Zonos Classify und wie Sie eine Klassifizierung anfordern können.
Wenn Sie Zonos keinen hsCode
übermitteln, überprüfen wir zunächst den Zonos Katalog, um zu sehen, ob Sie einen HS-Code für Ihren Artikel gespeichert haben. Wenn nicht, rufen wir Classify auf, um eine Klassifizierung zu erstellen, die Ihre landed cost-Berechnung basierend auf den folgenden itemCreateWorkflow
-Produktdetailfeldern unterstützt: description
, category
und material
. Wenn Ihre Produktdetailfelder nicht detailliert genug sind, um eine Klassifizierung basierend auf Classify's Vertrauensbewertung zu generieren, wird der Standard-HS-Code verwendet, der Ihrem Geschäft zugewiesen ist.
Standardmäßig wird der von Classify generierte hsCode
nicht in der Antwort zurückgegeben, wenn Sie keinen hsCode
angeben und wir Classify aufrufen, da er nur intern zur Generierung Ihrer landed cost verwendet wird. Wenn Sie jedoch ein Classify-Abonnement haben, geben wir den HS-Code von Classify's in Ihrer landed cost-Antwort zurück.
Versandkosten
Sowohl das Versanddienstleistungsniveau als auch die Kosten beeinflussen die Zölle, Steuern und Gebühren und sind daher erforderlich. Zonos kann die Versandkosten berechnen oder Sie können diese an uns übermitteln.
Um Zonos die Versandkosten berechnen zu lassen, verwenden Sie das shipmentRatingCalculateWorkflow
. Die in der berechneten Versandantwort zurückgegebenen Versandoptionen korrelieren mit den serviceLevels
, die Sie den Versandprofilen im Dashboard zugewiesen haben.
Fehlerbehebung: Wenn Sie ein
serviceLevel
in der Antwort erwarten, es aber nicht angezeigt wird, stellen Sie bitte sicher, dass dasserviceLevel
aktiviert ist und von der von Ihnen ausgewähltenmethod
unterstützt wird.
Fügen Sie das cartonizeWorkflow
(das keine Eingaben erfordert) hinzu, wenn Sie möchten, dass Zonos Ihre Artikel sortiert in Kartons, bevor die Versandkosten ermittelt werden (verwendet für dimensionales Gewicht.
Wenn Sie das serviceLevel
und den amount
für eine Sendung kennen, können Sie diese im shipmentRatingCreateWorkflow
-Teil der Anfrage übermitteln. Wir verwenden diese Werte, um alle damit verbundenen Trägergebühren zu berechnen und diese in der Antwort zurückzugeben.
Mutation senden
Sobald Sie die erforderlichen Eingabedaten haben, senden Sie die GraphQL-Mutation an den API-Endpunkt mit Ihrer gewählten Client-Bibliothek oder Ihrem Tool. Hier sind einige Beispiele, wie Sie die Mutation strukturieren können.
Mutation
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
}
}
}
Antwort
{
"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"
}
]
}
]
}
}
Berechnen Sie eine landed cost
Berechnen Sie Zölle, Steuern und Gebühren mit GraphQL.GraphQL
Zonos berechnet die gesamte landed cost für Sendungen, die Zölle, Steuern und alle zusätzlichen Gebühren umfassen, die von Zollbehörden, Maklern oder Versanddienstleistern erhoben werden können. Wir garantieren diese Berechnungen oft, indem wir die Zoll-, Steuer- und Gebührenrechnung selbst bezahlen, während wir Ihnen genau das berechnen, was wir kalkulieren. In seltenen Fällen können unsere Berechnungen ohne unsere Garantie verwendet werden, wobei Sie die Differenz zwischen unserer Berechnung und der Zoll- und Steuerrechnung übernehmen.