DOCS

Valider un ID de Déclaration

Étiquettes d'expédition | Valider un ID de Déclaration

Récupérer le statut d'un ID de Déclaration et préremplir la documentation douanière

Si vous créez des étiquettes postales, vous pouvez appeler Zonos pour récupérer les détails complets de la déclaration douanière lorsqu'un utilisateur fournit un ID de Déclaration. Cela élimine le besoin pour les utilisateurs de remplir manuellement la documentation douanière, créant une expérience d'expédition fluide où les droits sont prépayés et les formulaires douaniers sont automatiquement remplis.

Préremplir les déclarations douanières 

Suivez les étapes ci-dessous pour activer le remplissage automatique des déclarations douanières en utilisant les ID de Déclaration de votre plateforme.

1. Activer le champ ID de Déclaration dans le flux de création d'étiquettes

Ajoutez un champ ID de Déclaration à votre interface de création d'étiquettes postales. Lorsque les utilisateurs saisissent un ID de Déclaration valide, votre plateforme peut préremplir la déclaration douanière, éliminant ainsi la saisie manuelle des données.

2. Interroger le statut de l'ID de Déclaration et les détails de la déclaration douanière

Utilisez la requête suivante pour récupérer les données complètes de la déclaration douanière en utilisant l'ID de Déclaration. Cela renvoie le statut de validation ainsi que les détails des articles, les valeurs, les codes SH et les informations sur le destinataire lorsque disponibles.

Requête

GraphQL

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
query DeclarationQuery($id: ID!) {
  declaration(id: $id) {
    id
    status
    paymentStatus
    landedCost {
      id
      method
      landedCostGuaranteeCode
      amountSubtotals {
        duties
        taxes
        fees
        landedCostTotal
      }
    }
    items {
      id
      sku
      productId
      amount
      currencyCode
      name
      hsCode
      description
      hsCodeSource
      countryOfOrigin
      quantity
      measurements {
        type
        value
        unitOfMeasure
      }
    }
    parties {
      id
      type
      person {
        firstName
        lastName
        email
        phone
      }
      location {
        id
        line1
        line2
        countryCode
        postalCode
      }
    }
  }
}

Variables

GraphQL

1
2
  "id": "0mm1993s0mdcn"
}

3. Gérer la réponse et auto-remplir la déclaration en douane

La réponse de l'API inclut le statut de validation et les données douanières. Utilisez les informations de status pour déterminer si l'ID de déclaration est valide, puis auto-remplissez les données douanières disponibles ou demandez une saisie manuelle.

Exemples de réponses

ID de déclaration valide avec des données douanières complètes :

Réponse

JSON

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
{
  "data": {
    "declaration": {
      "id": "0mm1993s0mdcn",
      "status": "OPEN",
      "paymentStatus": "OPEN",
      "landedCost": {
        "id": "landed_cost_eabb13ab-df23-45df-9ce8-96dd29d396d1",
        "method": "DAP",
        "landedCostGuaranteeCode": "NOT_APPLICABLE",
        "amountSubtotals": {
          "duties": 0.0,
          "taxes": 0.0,
          "fees": 2.62,
          "landedCostTotal": 2.62
        }
      },
      "items": [
        {
          "id": "item_0mm199388v57g",
          "sku": "item_1",
          "productId": "item_1",
          "amount": 70.0,
          "currencyCode": "USD",
          "name": "Item 1",
          "hsCode": "9504.90.4000",
          "description": "This is the description for Item 1",
          "hsCodeSource": "TARIFF_COMPLETED",
          "countryOfOrigin": "CN",
          "quantity": 2,
          "measurements": [
            {
              "type": "WEIGHT",
              "value": 1,
              "unitOfMeasure": "POUND"
            }
          ]
        }
      ],
      "parties": [
        {
          "id": "party_0kesb32rw5hfa",
          "type": "DESTINATION",
          "person": {
            "firstName": "test",
            "lastName": "origin",
            "email": null,
            "phone": "1234567890"
          },
          "location": {
            "id": "location_c7882546-652e-49cb-81a4-98962a54c49f",
            "line1": "123 Test Street",
            "line2": "",
            "countryCode": "US",
            "postalCode": "84790"
          }
        },
        {
          "id": "party_0mjfz59bgg175",
          "type": "ORIGIN",
          "person": {
            "firstName": "test",
            "lastName": "destination",
            "email": null,
            "phone": "1234567890"
          },
          "location": {
            "id": "location_0mdzb9vk8bp7c",
            "line1": "998 Ridgehaven",
            "line2": null,
            "countryCode": "CA",
            "postalCode": "N0N 0N0"
          }
        }
      ]
    }
  }
}

4. Créer l'expédition

Traitez la création de l'étiquette en utilisant soit des données auto-remplies à partir d'un ID de déclaration, soit des informations de déclaration saisies manuellement.

5. Lier le numéro de suivi à l'ID de déclaration

Après la création de l'étiquette, utilisez la mutation declarationShipmentCreate pour lier le numéro de suivi à l'ID de déclaration, garantissant ainsi une validation appropriée du paiement des droits et le suivi de l'expédition.

Créer l'expédition

GraphQL

1
2
3
mutation DeclarationShipmentCreate($input: DeclarationShipmentCreateInput!) {
  declarationShipmentCreate(input: $input)
}

Vous pouvez créer un envoi lié à un ID de déclaration en passant un tableau de trackingNumbers et l'declarationID utilisé pour l'envoi.

Variables sans détails de carton

GraphQL

1
2
3
4
5
6
{
  "input": {
    "declarationId": "0mm32wfyrn5es",
    "trackingNumbers": ["test_tracking_1", "test_tracking_2"]
  }
}

Vous pouvez créer un envoi en passant le declarationID utilisé pour l'envoi. Si vous avez des détails sur les cartons et les articles à l'intérieur des cartons, vous pouvez les passer dans le shipmentCarton avec le trackingNumber pour ce carton.

Variables avec les détails du carton

GraphQL

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
{
  "input": {
    "declarationId": "0mm32wfyrn5es",
    "shipmentCartons": [
      {
        "dimensionalUnit": "INCH",
        "length": 8,
        "width": 4,
        "height": 2,
        "trackingNumber": "1234567890",
        "weight": 5,
        "weightUnit": "POUND",
        "items": [
          {
            "itemReference": "item_1",
            "quantity": 3,
            "hsCode": "1234.56.7890"
          }
        ]
      }
    ]
  }
}

Cette page a-t-elle été utile?