DOCS

Integrasikan API pengiriman

Buat pengiriman Zonos dari platform Anda

Beri pelanggan kemampuan untuk membuat pengiriman dan label Zonos dari platform Anda.

Jika Anda adalah platform pengiriman yang mendukung pelanggan Zonos yang mengirim secara internasional, menghubungkan ke Zonos untuk pembuatan pengiriman harus menjadi pertimbangan utama. Ini akan memungkinkan Anda untuk menawarkan pengalaman yang paling mulus bagi pedagang dan pelanggan mereka dengan memanfaatkan fitur-fitur yang ada di platform Anda sambil membiarkan Zonos mengelola pembuatan pengiriman, label, dan dokumentasi bea cukai yang mendukung.

Keuntungan menggunakan Zonos untuk membuat pengiriman meliputi:

  • Penagihan pihak ketiga untuk bea dan pajak - Kami akan memastikan bahwa nomor akun pengangkut Anda atau pedagang Anda digunakan untuk biaya pengiriman sementara tagihan untuk bea dan pajak datang ke Zonos.
  • Fleksibilitas - Alih-alih melakukan pekerjaan pengembangan untuk memastikan bahwa Anda dapat menghasilkan label yang sesuai dengan peraturan dengan platform Anda, integrasikan dengan API kami dan biarkan kepatuhan lintas batas yang selalu berubah menjadi tanggung jawab kami.
  • Dokumentasi bea cukai yang akurat - Ketika Anda menggunakan Zonos untuk menghasilkan label, kami memastikan bahwa detail yang tepat disampaikan kepada pengangkut untuk memastikan bahwa paket melewati bea cukai dengan cepat.

Panduan ini akan memandu Anda melalui langkah-langkah untuk menerapkan integrasi lengkap dari awal hingga akhir yang akan memungkinkan Anda untuk memanggil Zonos untuk pengiriman dari platform Anda.

Aktifkan pelanggan untuk mencetak label Zonos dari platform Anda 

Ikuti langkah-langkah di bawah ini untuk memungkinkan pelanggan Anda mengambil label Zonos dari platform Anda.

1

Izinkan pelanggan untuk memasukkan kredensial API Zonos

Zonos API dapat diakses dengan credentialToken. Platform Anda perlu memberikan kemampuan kepada pelanggan untuk memasukkan credentialToken mereka dari Zonos Dashboard ke dalam platform Anda. Dari sini, Anda akan dapat melakukan permintaan ke Zonos atas nama mereka.

2

Buat pengiriman

Untuk mengambil label, Anda diharuskan untuk membuat shipment yang akan dikaitkan dengan label. Zonos mengelola proses ini dengan alur kerja yang membuat shipments dan labels dalam permintaan yang sama. Saat melakukan mutasi ini, Anda tidak perlu mengirimkan serviceLevel karena kami akan menggunakan serviceLevel yang digunakan dari landedCost yang terkait dengan order. Untuk orderId, Anda dapat menggunakan ID pesanan Zonos atau accountOrderNumber yang kemungkinan sudah ada di sistem Anda. Ketika pengiriman dan label berhasil dibuat, kami akan mengembalikan label sebagai labelImage yang merupakan BASE64_ENCODED_IMAGE, atau sebagai url di mana label dapat diambil.

Mutasi

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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
mutation {
  partyCreateWorkflow(
    input: [
      {
        location: {
          administrativeArea: "Utah"
          administrativeAreaCode: "UT"
          countryCode: US
          line1: "123 Test Street"
          locality: "St George"
          postalCode: "84770"
        }
        person: {
          companyName: "test Corp"
          phone: "8018565714"
          firstName: "Tom"
        }
        type: ORIGIN
      }
      {
        location: {
          administrativeArea: "Quebec"
          administrativeAreaCode: "QC"
          countryCode: CA
          line1: "2147 Pitfield Blvd"
          locality: "Pierrefonds"
          postalCode: "H9H 3C7"
        }
        person: {
          email: "test@gmail.com"
          firstName: "firstName"
          lastName: "lastName"
          phone: "5022303021"
          companyName: "goProTest"
        }
        type: DESTINATION
      }
    ]
  ) {
    type
    id
    organization
  }
  itemCreateWorkflow(
    input: [
      {
        amount: 50
        currencyCode: USD
        countryOfOrigin: US
        quantity: 1
        metadata: { key: "tags", value: "accessory" }
        sku: "ow-accessory-gtr"
        productId: "1892949164056"
      }
    ]
  ) {
    amount
    id
    quantity
    sku
    productId
  }
  cartonsCreateWorkflow(
    input: {
      dimensionalUnit: INCH
      height: "5"
      length: "5"
      weight: "5"
      weightUnit: POUND
      width: "10"
    }
  ) {
    items {
      item {
        amount
        id
        quantity
        sku
      }
    }
    length
    width
    weight
    weightUnit
    height
    id
  }
  shipmentCreateWorkflow(
    input: { orderId: "order_f648793c-2585-4684-afa0-da1fdb0d4f94" }
  ) {
    id
    serviceLevel {
      id
      name
      carrier {
        id
        name
      }
    }

    shipmentCartons {
      id
      tracking {
        number
      }
      label {
        labelImage
        labelFileType
      }
      carton {
        id
        width
        length
        height
        weight
        items {
          item {
            id
            amount
            description
          }
        }
      }
    }
    customsDocuments {
      id
      fileType
      fileUrl
    }
  }
}

Respon

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
{
  "data": {
    "shipmentCreateWorkflow": {
      "id": "shipment_90f3c62a-c50e-466c-a317-70ececb26dc4",
      "serviceLevel": {
        "id": "service_level_a7129244-7334-4e8b-8b10-6494b0e49a7d",
        "name": "UPS Worldwide Express",
        "carrier": {
          "id": "carrier_26bf7275-cac2-47b5-979a-4325fa2efa82",
          "name": "UPS"
        }
      },
      "shipmentCartons": [
        {
          "id": "shipment_carton_d254a6df-9dcd-47fc-926b-48eaeaea232c",
          "tracking": {
            "number": "1Z2030216698896462"
          },
          "label": {
            "labelImage": "{{BASE64_ENCODED_IMAGE}}",
            "labelFileType": "PDF",
            "labelAmounts": [
              {
                "amount": 41.88,
                "amountType": "QUOTE"
              }
            ]
          },
          "carton": {
            "id": "carton_0jhg9mxk431q7",
            "width": 10.0,
            "length": 5.0,
            "height": 5.0,
            "weight": 5.0,
            "items": [
              {
                "item": {
                  "id": "item_0jhg9mxdwm77w",
                  "amount": 50,
                  "description": null
                }
              }
            ]
          }
        }
      ],
      "customsDocuments": [
        {
          "id": "customs_doc_d8bedf7a-2de0-4729-8bdd-ebd901b67127",
          "fileType": "PDF",
          "fileUrl": "https://prod-zonos-shipping-label.s3.us-east-2.amazonaws.com/organization_a61090a2-d18b-415c-9870-03b9087cbf2d/shipment_90f3c62a-c50e-466c-a317-70ececb26dc4/customs/International_Forms.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20250117T231615Z&X-Amz-SignedHeaders=host&X-Amz-Credential=AKIAR3GS2GP6V4LZE3OI%2F20250117%2Fus-east-2%2Fs3%2Faws4_request&X-Amz-Expires=14400&X-Amz-Signature=6c17e358a038c3cd7d61391302909ee503344249405974e490d9b46051c79dba"
        }
      ]
    }
  }
}
3

Batalkan pengiriman

Jika seorang pelanggan ingin membatalkan pengiriman, Anda dapat menggunakan mutasi berikut yang akan membatalkan semua label yang terkait dengan pengiriman.

Permintaan

1
2
3
4
5
6
7
8
9
10
11
12
mutation {
  shipmentStatusUpdate(
    input: {
      shipment: "shipment_f1fe4dbd-e471-49fa-94e7-84e369083223"
      status: VOIDED
      note: "Voiding shipment"
    }
  ) {
    id
    status
  }
}

Apakah halaman ini membantu?