Cara Integrasi Cek Ongkir ke Website via API Ongkir

Ditulis oleh Rendy Andriyanto·29 Juli 2026·Diperbarui 10 September 2026·Operasional Toko Online
Bagikan:

Kamu bisa menampilkan ongkos kirim banyak ekspedisi sekaligus di website atau aplikasi hanya dengan satu panggilan API cek ongkir ke api.co.id. Artikel ini menunjukkan cara integrasinya langsung pada endpoint yang asli: dari menyiapkan API key, menyusun request GET ke /expedition/shipping-cost, membaca hasil banyak kurir dari satu respons, sampai menampilkannya di halaman checkout. Semua contoh di sini memakai endpoint, header autentikasi, dan bentuk respons yang benar-benar dipakai produk, bukan pseudo-code. Artikel ini fokus di sisi developer, dari API key sampai kode integrasinya. Kalau kamu cuma pemilik toko atau pengguna yang ingin tahu cara cek ongkir semua ekspedisi tanpa perlu coding, baca dulu panduannya di sana.

Apa yang kamu butuhkan sebelum integrasi

Persiapannya ringkas:

  • Akun api.co.id dan API key yang bisa kamu ambil sendiri dari dashboard.
  • Website atau aplikasi yang bisa melakukan HTTP GET.
  • Kode wilayah tingkat kelurahan untuk titik asal dan tujuan pengiriman.

Kode wilayah tingkat kelurahan itu penting, karena granularitas inilah yang membuat perhitungan ongkir akurat sampai antar-kelurahan. Struktur dan standar kode wilayah administrasi Indonesia mengikuti data resmi pemerintah; kamu bisa merujuk ke Kode Administrasi Wilayah di portal Satu Data Indonesia. Kalau kamu perlu memetakan alamat ke kode wilayah, lihat tutorial API wilayah Indonesia.

Endpoint cek ongkir api.co.id (yang asli)

Endpoint yang kamu pakai untuk cek ongkir adalah:

GET /expedition/shipping-cost

Dua detail berikut adalah yang paling sering bikin developer tersandung, jadi perhatikan baik-baik.

Autentikasi lewat header x-api-co-id (bukan Bearer)

API key dikirim lewat header x-api-co-id, bukan Authorization: Bearer. Kalau kamu mengasumsikan Bearer seperti kebanyakan API lain, kamu akan mendapat error autentikasi. Sebut header ini persis: x-api-co-id.

Parameter wajib: origin_village_code, destination_village_code, weight

  • origin_village_code: kode wilayah kelurahan titik asal (granularitas antar-kelurahan).
  • destination_village_code: kode wilayah kelurahan titik tujuan.
  • weight: berat kiriman dalam kilogram (kg).

Langkah integrasi cek ongkir ke website atau aplikasi

Langkah 1 – siapkan API key dan header x-api-co-id

Ambil API key dari dashboard, lalu simpan di sisi server (jangan di kode front-end). Setiap request menyertakan key itu di header x-api-co-id.

Langkah 2 – susun request GET dengan 3 parameter

Kirim GET ke /expedition/shipping-cost dengan tiga parameter di query dan API key di header. Contoh request minimal yang benar:

GET /expedition/shipping-cost?origin_village_code=3204282001&destination_village_code=3204402005&weight=1
Host: (base URL API cek ongkir api.co.id)
x-api-co-id: API_KEY_KAMU

Langkah 3 – baca hasilnya dari data.couriers[]

Respons mengembalikan daftar kurir yang didukung di dalam array data.couriers[]. Setiap elemen berisi kode kurir, nama, harga, berat, dan estimasi. Contoh bentuk respons asli (array kurir dipotong beberapa entri untuk ringkas):

{
  "is_success": true,
  "message": "Success",
  "data": {
    "origin_village_code": "3204282001",
    "destination_village_code": "3204402005",
    "weight": 1,
    "couriers": [
      { "courier_code": "JNE", "courier_name": "JNE Express", "price": 8000, "weight": 1, "estimation": "2 - 3 days" },
      { "courier_code": "JNECargo", "courier_name": "JNE Cargo", "price": 55000, "weight": 1, "estimation": "2 - 3 days" },
      { "courier_code": "SAP", "courier_name": "SAP Express", "price": 12000, "weight": 1, "estimation": "3 - 5 days" },
      { "courier_code": "JT", "courier_name": "J&T Express", "price": 13000, "weight": 1, "estimation": null }
    ]
  }
}

Perhatikan bahwa field estimation bisa bernilai null untuk sebagian kurir. Tangani kemungkinan itu di kodemu, misalnya tampilkan “estimasi menyusul” ketika nilainya kosong, jangan mengarang angka estimasi sendiri.

Langkah 4 – tampilkan pilihan ongkir di halaman checkout

Iterasi data.couriers[] lalu render tiap kurir sebagai opsi: nama kurir, harga, dan estimasi (kalau ada). Pembeli memilih satu, dan harga itu masuk ke total pesanan. Karena semua opsi datang dari satu panggilan, checkout-mu tidak perlu memanggil banyak API kurir terpisah.

Kelebihan pakai satu API untuk banyak ekspedisi

Dengan satu request, kamu mendapat banyak kurir sekaligus di dalam data.couriers[]. Cakupannya sampai tingkat antar-kelurahan, jadi perhitungan lebih presisi daripada sekadar antar-kota. Daftar ekspedisi yang didukung saat artikel ini ditulis: JNE Express, JNE Cargo, SiCepat Express, SiCepat Kargo, SAP Express, SAP Lite, SAP Cargo, iDexpress, iDlite, J&T Express, Lion Parcel, iDexpress Cargo, AnterAja, dan Ninja Express. Daftar ini bisa bertambah seiring bergabungnya mitra kurir baru.

Kesalahan umum saat integrasi (dan cara menghindarinya)

  • Salah header. Memakai Authorization: Bearer alih-alih x-api-co-id membuat request ditolak. Pastikan nama headernya persis.
  • Kode wilayah salah atau kurang lengkap. Kalau kode kelurahan asal atau tujuan keliru, hasilnya tidak akurat. Petakan alamat ke kode kelurahan yang benar lebih dulu.
  • Salah satuan berat. Parameter weight memakai kilogram (kg). Mengirim angka dalam gram akan menggelembungkan hasil ongkir.

Coba sekarang

Kalau kamu sudah siap memasang cek ongkir multi-ekspedisi di checkout, mulai dari satu endpoint ini. Tersedia 50 request gratis per bulan untuk kamu coba lebih dulu tanpa biaya. Ambil API key dan lihat dokumentasi lengkapnya di halaman API Cek Ongkir api.co.id. Platform api.co.id sudah dipakai 5000+ pengguna dan memproses jutaan panggilan API.
Kalau kamu belum butuh coding dan cuma ingin membandingkan tarif dari sisi pengguna, baca juga cara cek ongkir semua ekspedisi sekaligus tanpa integrasi API.

Ditulis oleh

Rendy Andriyanto

Seorang praktisi di berbagai bidang teknologi dan IT yang juga hobi menulis untuk berbagi dan mendokumentasikan hal penting supaya bisa bermanfaat bagi orang lain dan diri sendiri.

Lihat semua artikel →
Scroll to Top