DOCS

Calcular Landed Cost - GraphQL

Calcular un Landed Cost

Calcule aranceles, impuestos y tasas con GraphQL.

GraphQL

Zonos calcula el Landed Cost total para envíos internacionales, incluidos aranceles, impuestos y cualquier tasa adicional cobrada por aduanas, agentes o transportistas. En la mayoría de los casos, garantizamos estos cálculos pagando la factura final nosotros mismos y cobrándole exactamente lo que calculamos. En algunos casos, puede utilizar nuestro Landed Cost sin garantía, lo que significa que asume la responsabilidad de cualquier diferencia entre nuestro cálculo y los cargos reales.

Preparar la solicitud 

Calcular un Landed Cost mediante API requiere varias entradas, que hemos organizado en flujos de trabajo. Una vez completado, podrá realizar una sola solicitud para devolver un Landed Cost según el destino de envío, los artículos del carrito y los detalles de envío.

Cada flujo de trabajo tiene sus propias entradas requeridas. GraphQL le permite pasar más datos de los necesarios, pero solo ciertos campos son obligatorios para devolver un Landed Cost. Están claramente marcados en nuestra referencia de API para ver todos los campos posibles.

Tenga en cuenta que algunos campos son condicionalmente obligatorios si desea que su cálculo esté garantizado.

A continuación, hemos descrito todos los campos necesarios para calcular un Landed Cost garantizado. Asegúrese de incluir esta información antes de realizar su solicitud.

partyCreateWorkflowInput

El partyCreateWorkflowInput identifica las partes involucradas y sus ubicaciones. Vea el esquema completo en la referencia de nuestra API GraphQL. Los campos requeridos son:

  • location
    • administrativeAreaCode: El código de estado o provincia, en dos letras. Solo requerido para CA y BR.
    • countryCode: El código ISO de dos letras del país.
    • line1: La primera línea de la dirección.
    • postalCode: El código postal de la dirección.
  • person
    • email: La dirección de correo electrónico de la persona.
    • firstName: El nombre de la persona.
    • lastName: El apellido de la persona.
    • phone: El número de teléfono de la persona.
  • type
    • DESTINATION: La información de location y person para el destino de envío.
    • ORIGIN: La información de location para el origen de envío. No se requiere la person asociada con el origen de envío.
itemCreateWorkflowInput

El itemCreateWorkflowInput enumera los artículos del carrito. Hay muchos campos opcionales (vea todas las posibilidades en nuestra referencia de API), pero los campos a continuación son obligatorios.

  • amount: El valor de una sola unidad del producto que se envía, antes de multiplicarse por la cantidad. Tenga en cuenta que esto difiere de la definición postal de un artículo postal. Si la quantity del artículo es 1, este es el costo total del artículo. Si la quantity del artículo es >1, la API multiplicará el amount del artículo por la quantity del artículo para obtener el total de la línea. No coloque el precio total de todas las unidades del artículo en amount.
  • currencyCode: El código de moneda del monto del artículo.
  • quantity: La cantidad del artículo. La API multiplicará el amount del artículo por la quantity del artículo para obtener el total de la línea.
  • countryOfOrigin: El país donde se fabricó el artículo.
  • Uno de los siguientes (el que esté configurado como su preferencia de clave de artículo. Su clave de artículo conecta la información almacenada en Catalog con el artículo del carrito y se utiliza durante la creación de etiquetas.)
    • productId: El ID de producto del artículo.
    • sku: El SKU del artículo.
cartonsCreateWorkflowInput

El cartonsCreateWorkflowInput solo requiere la entrada en sí. Vea el esquema completo en la referencia de nuestra API GraphQL para ver todos los valores que se pueden pasar. Es importante pasar las dimensiones y el peso del cartón si Zonos está calculando el costo de envío.

shipmentRatingCreateWorkflowInput

Este flujo de trabajo se utiliza cuando ya conoce el servicio y el costo de envío; si desea que Zonos calcule estos costos para los servicios que ha habilitado, reemplace este flujo de trabajo y use shipmentRatingCalculateWorkflow en su lugar.

El shipmentRatingCreateWorkflowInput comunica el costo de envío. Vea el esquema completo en la referencia de nuestra API GraphQL. Los campos requeridos son:

  • amount: El costo de envío.
  • currencyCode: El código de moneda del costo de envío.
  • serviceLevelCode: El código que indica el nivel de servicio de envío utilizado en la tarifa de envío.
landedCostWorkFlowInput

El landedCostWorkFlowInput dicta las preferencias para el cálculo de Landed Cost. Vea el esquema completo en la referencia de nuestra API GraphQL. Los campos requeridos son:

  • calculationMethod: Indica su preferencia sobre cómo planea enviar: DDP (aranceles e impuestos prepagados) o DAP (los aranceles e impuestos se pagan en la entrega, o si aplica un esquema de remisión, se remiten mediante un ID fiscal).
    • Si utiliza nuestra garantía de Landed Cost, este valor siempre debe ser DDP_PREFERRED, que proporcionará una cotización DDP cuando sea posible y una cotización DAP cuando no se permita una DDP. Usar DAP en su lugar puede hacer que los Landed Cost ya no estén garantizados, ya que esto normalmente resulta en aranceles e impuestos pagados en la entrega.
  • endUse: Indica si las mercancías se venden a otro negocio (FOR_RESALE) o para uso final con un consumidor (NOT_FOR_RESALE).
  • tariffRate: Indica el método que Zonos debe usar para calcular las tasas arancelarias de esta cotización, en caso de que haya un rango de tasas arancelarias que puedan aplicarse. *Al utilizar nuestra garantía de Landed Cost, esto siempre debe ser ZONOS_PREFERRED.

Agregar envío calculado: Si desea que Zonos calcule el costo de envío por usted, reemplace shipmentRatingCreateWorkflow con shipmentRatingCalculateWorkflow. Agregue cartonizeWorkflow si desea que Zonos ordene sus artículos en cartones antes de encontrar el costo de envío (utilizado para peso dimensional).

GraphQL le brinda la flexibilidad de personalizar la solicitud según su preferencia. Hay un par de opciones sobre cómo incluir códigos HS y costos de envío en la solicitud.

Códigos HS 

Los códigos HS afectan las tasas arancelarias y por lo tanto son obligatorios. Puede pasar el código HS de cada artículo o dejar que Classify los genere.

Pasar códigos HS para cada artículo

Zonos recomienda encarecidamente usar códigos HS específicos del producto, ya que conduce a una cotización de Landed Cost más precisa. Si conoce sus códigos HS, pase el hsCode de cada item durante itemCreateWorkflow.

Si pasa un código HS, Zonos lo validará al vuelo al obtener una cotización de Landed Cost. Si el código HS que proporcionó no es válido (es decir, no existe), Zonos reclasificará su artículo al vuelo y usará el nuevo código HS válido en lugar del que proporcionó.

Si necesita ayuda para generar códigos HS para sus productos, conozca Zonos Classify y cómo solicitar una clasificación.

Generar códigos HS con Classify

Si no pasa a Zonos un hsCode, primero verificaremos Zonos Catalog para ver si tiene un código HS almacenado para su artículo. Si no, llamaremos a Classify para generar una clasificación que respalde su cálculo de Landed Cost según los siguientes campos de detalle del producto de itemCreateWorkflow: description, category y material. Si los campos de detalle de su producto no son lo suficientemente detallados para generar una clasificación según la puntuación de confianza de Classify, se utilizará el código HS predeterminado asignado a su tienda.

Costo de envío 

Tanto el nivel de servicio de envío como su costo afectan los aranceles, impuestos y tasas, y por lo tanto son obligatorios. Zonos puede calcular el envío o puede pasárnoslo.

Calcular envío

Para que Zonos calcule los costos de envío, use shipmentRatingCalculateWorkflow. Las opciones de envío devueltas en la respuesta de envío calculado se correlacionarán con los serviceLevels que haya asignado a los perfiles de envío en Dashboard.

Pasar costos de envío

Si conoce el serviceLevel y el amount de un envío, puede pasarlos en la porción shipmentRatingCreateWorkflow de la solicitud. Usaremos esos valores para calcular las tasas de transportista asociadas y devolverlas en la respuesta.

Solicitar un Landed Cost mediante API 

Una vez que tenga los datos de entrada requeridos, envíe la mutación GraphQL al endpoint de API utilizando su biblioteca o herramienta de cliente elegida. Aquí hay algunos ejemplos de cómo puede estructurar la mutación.

Use esta solicitud cuando Zonos calcule el costo de envío como parte de la solicitud de Landed Cost. Luego calcularemos aranceles e impuestos sobre el envío si son evaluados por el país de destino.

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}

Siguiente paso: Crear un pedido

Después de calcular un Landed Cost y recibir el landedCostId de la respuesta de API, debe crear un pedido para finalizar la transacción en el sistema de Zonos. Use la mutación orderCreate y pase el landedCostId de su cotización. Obtenga más información sobre crear pedidos.


Solicitar un Landed Cost en Dashboard 

También puede calcular Landed Cost directamente en Zonos Dashboard sin usar la API. Esto es útil para probar cálculos, capacitar a su equipo u obtener cotizaciones rápidas para consultas de clientes.

Dashboard utiliza los mismos endpoints de API descritos anteriormente, por lo que los resultados coincidirán con lo que obtendría de llamadas directas a la API. Esto lo convierte en una excelente forma de validar su integración de API o explorar cómo diferentes entradas afectan los cálculos.

Usar la calculadora de Dashboard

Con la calculadora de Landed Cost en Dashboard, puede obtener cotizaciones con tarifas de envío calculadas, crear cotizaciones con costos de envío conocidos o procesar múltiples cotizaciones en lote.

Use este flujo cuando conoce el nivel de servicio y el costo de envío de su envío.

  1. Vaya a DashboardOrdersQuotes
  2. Haga clic en New quote
  3. Opcional — Modifique la ubicación de su dirección de envío de origen
  4. Seleccione un Destination country del menú desplegable
  5. Ingrese el monto de envío
    • El nivel de servicio es opcional; agregarlo nos permite calcular las tasas de transportista aplicables
  6. Agregue los detalles del artículo para el envío
    • Cuando ingresa una descripción, clasificamos automáticamente el producto y generamos un código HS
    • Puede sobrescribir el código HS generado si es necesario
    • Para varios artículos, haga clic en Save and add another. De lo contrario, haga clic en Save
  7. Opcional — Haga clic en More options para cambiar:
    • Sale type a For resale
    • Delivery mode a Delivery duties unpaid
  8. Haga clic en Get quote
    • Para hacer cambios, haga clic en Edit form y modifique cualquier detalle
    • Haga clic en Get quote nuevamente para actualizar

Una cotización de Landed Cost aparecerá a la derecha, incluidos los costos de producto, envío e importación. Expanda la cotización para ver desgloses detallados de artículos, envío, aranceles, impuestos y tasas. Todas las cotizaciones se guardan en la página de cotizaciones para referencia futura.

Editar cotizaciones existentes: Haga clic en Quote again en la parte superior derecha para modificar una cotización existente en lugar de comenzar desde cero.

Beneficios de usar Dashboard

  • Sin necesidad de programar — Genere cotizaciones a través de una interfaz fácil de usar
  • Capacitación del equipo — Ayude a los miembros del equipo no técnicos a comprender los componentes de Landed Cost
  • Validación de API — Verifique que su integración de API produzca los resultados esperados
  • Atención al cliente — Genere cotizaciones rápidamente para consultas de clientes
  • Procesamiento en lote — Gestione múltiples cálculos de forma eficiente (próximamente)

Las cotizaciones de Dashboard incluyen los mismos desgloses detallados disponibles a través de la API, lo que la convierte en un excelente complemento para su integración automatizada.

¿Fue útil esta página?