Satu contract
getRates, trackShipment, parseWebhook, createShipment — API yang sama untuk semua provider.
Multi-provider · Bring-your-own-key · Unofficial
Bungkus API Biteship, RajaOngkir (Komerce), dan Shipper di balik satu contract — ganti provider tanpa mengubah kode consumer.
ongkir-sdk adalah TypeScript SDK multi-provider untuk cek ongkir dan tracking pengiriman di Indonesia. Semua provider diakses lewat satu interface (ShippingProvider) — response ternormalisasi dan error dinormalisasi ke ShippingSDKError, apa pun bentuk asli API provider.
Satu contract
getRates, trackShipment, parseWebhook, createShipment — API yang sama untuk semua provider.
Error ternormalisasi
ShippingSDKError dengan kode konsisten lintas provider plus flag retryable.
Bring-your-own-key
Murni client-side. SDK tidak menyimpan atau mem-proxy API key kamu.
Runtime-agnostic
Node ≥18, Bun, Deno, dan Cloudflare Workers — murni Web-standard API.
| Package | Deskripsi |
|---|---|
@ongkir-sdk/core | Types, contract, error normalization, region resolver, contract test suite |
@ongkir-sdk/biteship | Adapter Biteship — rates, tracking, webhook, shipment |
@ongkir-sdk/komerce | Adapter Komerce (RajaOngkir API V2) — rates, tracking |
@ongkir-sdk/shipper | Adapter Shipper (logistics v3) — rates, tracking, webhook, shipment |
@ongkir-sdk/cache-memory | Wrapper caching in-memory untuk hasil getRates() |
@ongkir-sdk/hono | Middleware Hono — expose provider sebagai REST endpoint |
@ongkir-sdk/core + adapter pilihanmu.getRates() — hasil sudah ternormalisasi ke RateResult[].