PHPackages                             xtwoend/rajaongkir - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. xtwoend/rajaongkir

ActiveLibrary[API Development](/categories/api)

xtwoend/rajaongkir
==================

Klien API PHP untuk RajaOngkir

v1.1.0(6y ago)09MITPHPPHP ^7.0

Since Oct 7Pushed 4y agoCompare

[ Source](https://github.com/xtwoend/rajaongkir)[ Packagist](https://packagist.org/packages/xtwoend/rajaongkir)[ Docs](https://github.com/kavist/rajaongkir)[ RSS](/packages/xtwoend-rajaongkir/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependencies (6)Versions (6)Used By (0)

[![Klien API RajaOngkir untuk PHP](https://camo.githubusercontent.com/7f4073bf30d9f422d3d40b02c2f41c0f4054db13a1c8637e583b23d050d7b72d/68747470733a2f2f72617763646e2e6769746861636b2e636f6d2f6b61766973742f72616a616f6e676b69722f333862616534356238386339386539346563623230613436303430336537343834633663326262342f636f7665722e706e67)](https://camo.githubusercontent.com/7f4073bf30d9f422d3d40b02c2f41c0f4054db13a1c8637e583b23d050d7b72d/68747470733a2f2f72617763646e2e6769746861636b2e636f6d2f6b61766973742f72616a616f6e676b69722f333862616534356238386339386539346563623230613436303430336537343834633663326262342f636f7665722e706e67)

Klien API RajaOngkir untuk PHP
==============================

[](#klien-api-rajaongkir-untuk-php)

[![Latest Version](https://camo.githubusercontent.com/d5253ee9e7c631612c6cfe4d6dd552607b979076a144a241c917f08a5a73db8d/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f6b61766973742f72616a616f6e676b69723f6c6162656c3d52656c6561736526736f72743d73656d766572267374796c653d666c61742d737175617265)](https://github.com/kavist/rajaongkir/releases)[![Packagist Version](https://camo.githubusercontent.com/beb625f28402b9dc45590a6dbd6ba77f67e44bcaec504fc271bb4c06d16547d9/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6b61766973742f72616a616f6e676b69723f6c6162656c3d5061636b6167697374267374796c653d666c61742d737175617265)](https://packagist.org/packages/kavist/rajaongkir)[![PHP Version Required](https://camo.githubusercontent.com/f1a5d0936a9264326cbe95ce59c12c8fe3883cf1fb8319dd32014326b473b674/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f6b61766973742f72616a616f6e676b69723f6c6162656c3d50485025323056657273696f6e267374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/f1a5d0936a9264326cbe95ce59c12c8fe3883cf1fb8319dd32014326b473b674/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f6b61766973742f72616a616f6e676b69723f6c6162656c3d50485025323056657273696f6e267374796c653d666c61742d737175617265)[![MIT Licensed](https://camo.githubusercontent.com/8f7e876fccb6af68b6cb821cae5082687c77745c97dd0b9d6bc1b2e0f0474d5b/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f6b61766973742f72616a616f6e676b69723f6c6162656c3d4c6963656e7365267374796c653d666c61742d737175617265)](LICENSE)[![Build Status](https://camo.githubusercontent.com/4c58e7a92b696fbcd5e153e0f93633352c9145e4916cd670edf6271b46e106a6/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f6b61766973742f72616a616f6e676b69723f6c6162656c3d54726176697325323043492532306275696c64267374796c653d666c61742d737175617265)](https://travis-ci.org/kavist/rajaongkir)[![StyleCI](https://camo.githubusercontent.com/2441cee367c02d4e9c115d1b52f3beb8e2b8311f549b676ab6017e6c9694c1c8/68747470733a2f2f7374796c6563692e696f2f7265706f732f3231323736373935392f736869656c64)](https://styleci.io/repos/212767959)

Paket pustaka PHP untuk mengakses API RajaOngkir dengan mudah.

### Fitur

[](#fitur)

- Daftar semua provinsi.
- Ambil provinsi berdasarkan ID.
- Pencarian provinsi berdasarkan nama.
- Daftar semua kota/kabupaten.
- Daftar kota/kabupaten berdasarkan ID provinsinya.
- Ambil kota/kabupaten berdasarkan ID.
- Pencarian kota/kabupaten berdasarkan nama.
- Ambil biaya pengiriman (ongkos kirim/ongkir).

#### *To Do*

[](#to-do)

- Fitur di tipe akun Basic dan Pro.
- Pencarian *fuzzy* (menggunakan [Fuse](https://github.com/loilo/Fuse)).

Persyaratan Sistem
------------------

[](#persyaratan-sistem)

- PHP 7.0 (direkomendasikan untuk menggunakan PHP 7.1 atau lebih tinggi).

Instalasi
---------

[](#instalasi)

Gunakan [Composer](https://getcomposer.org) untuk menginstal pustaka ini.

```
$ composer require kavist/rajaongkir:^1.1
```

Anda juga bisa menambahkan dependensi ke `composer.json`.

```
{
    "require": {
        "kavist/rajaongkir": "^1.1"
    }
}
```

### Integrasi ke Laravel

[](#integrasi-ke-laravel)

Bagi pengguna Laravel 5.5 atau lebih tinggi, paket ini akan tersedia secara otomatis berkat fitur *auto-discovery*. Anda bisa langsung lanjut ke bagian [konfigurasi untuk Laravel](#konfigurasi-untuk-laravel) di bawah.

Bagi pengguna Laravel sebelum versi 5.5, **kode dalam proyek ini tidak dites di versi Laravel dibawah 5.5.**Jadi, dimohon pengertiannya jika pustaka ini tidak dapat berjalan dengan semestinya.

Konfigurasi
-----------

[](#konfigurasi)

Untuk pengguna PHP *native*, deklarasikan kunci API sebagai parameter ketika Anda menginstansiasi *class* `Kavist\RajaOngkir\RajaOngkir`.

```
$rajaOngkir = new RajaOngkir('isi_API_key_Anda_disini');
```

### Konfigurasi untuk Laravel

[](#konfigurasi-untuk-laravel)

Anda cukup mengatur nilai `RAJAONGKIR_API_KEY` yang berisi kunci API ke *environment variable*.

```
RAJAONGKIR_API_KEY=isi_API_key_Anda_disini
```

Anda juga bisa menerbitkan berkas konfigurasi paket ini untuk konfigirasi lebih jauh.

```
$ php artisan vendor:publish --provider="Kavist\RajaOngkir\Providers\LaravelServiceProvider"
```

Penggunaan
----------

[](#penggunaan)

### Provinsi

[](#provinsi)

#### Daftar provinsi

[](#daftar-provinsi)

Untuk mendapatkan daftar provinsi, gunakan metode `provinsi()->all()`.

```
// Native PHP
use Kavist\RajaOngkir\RajaOngkir;

$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->provinsi()->all();

// Laravel
use Kavist\RajaOngkir\Facades\RajaOngkir;

$daftarProvinsi = RajaOngkir::provinsi()->all();
```

#### Ambil provinsi berdasarkan ID

[](#ambil-provinsi-berdasarkan-id)

Untuk mendapatkan provinsi berdasarkan ID, gunakan metode `provinsi()->find(int|string $id)`.

```
// Native PHP
use Kavist\RajaOngkir\RajaOngkir;

$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->provinsi()->find(11);

// Laravel
use Kavist\RajaOngkir\Facades\RajaOngkir;

$daftarProvinsi = RajaOngkir::provinsi()->find(11);
```

#### Pencarian provinsi berdasarkan nama

[](#pencarian-provinsi-berdasarkan-nama)

Untuk mencari provinsi berdasarkan nama, gunakan metode `provinsi()->search(string $searchTerm)->get()`.

```
// Native PHP
use Kavist\RajaOngkir\RajaOngkir;

$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->provinsi()->search('ja')->get();

// Laravel
use Kavist\RajaOngkir\Facades\RajaOngkir;

$daftarProvinsi = RajaOngkir::provinsi()->search('ja')->get();
```

### Kota/Kabupaten

[](#kotakabupaten)

#### Daftar kota/kabupaten

[](#daftar-kotakabupaten)

Untuk mendapatkan daftar kota/kabupaten, gunakan metode `kota()->all()`.

```
// Native PHP
use Kavist\RajaOngkir\RajaOngkir;

$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->kota()->all();

// Laravel
use Kavist\RajaOngkir\Facades\RajaOngkir;

$daftarProvinsi = RajaOngkir::kota()->all();
```

#### Ambil kota/kabupaten berdasarkan ID

[](#ambil-kotakabupaten-berdasarkan-id)

Untuk mendapatkan kota/kabupaten berdasarkan ID, gunakan metode `kota()->find(int|string $id)`.

```
// Native PHP
use Kavist\RajaOngkir\RajaOngkir;

$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->kota()->find(80);

// Laravel
use Kavist\RajaOngkir\Facades\RajaOngkir;

$daftarProvinsi = RajaOngkir::kota()->find(80);
```

#### Daftar kota/kabupaten berdasarkan ID provinsinya

[](#daftar-kotakabupaten-berdasarkan-id-provinsinya)

Untuk mendapatkan kota/kabupaten berdasarkan ID provinsinya, gunakan metode `kota()->dariProvinsi(int|string $provinceId)->get()`.

```
// Native PHP
use Kavist\RajaOngkir\RajaOngkir;

$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->kota()->dariProvinsi(11)->find(80);

// Laravel
use Kavist\RajaOngkir\Facades\RajaOngkir;

$daftarProvinsi = RajaOngkir::kota()->dariProvinsi(11)->find(80);
```

#### Pencarian kota/kabupaten berdasarkan nama

[](#pencarian-kotakabupaten-berdasarkan-nama)

Untuk mencari kota/kabupaten berdasarkan nama, gunakan metode `kota()->search(string $searchTerm)->get()`.

```
// Native PHP
use Kavist\RajaOngkir\RajaOngkir;

$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->kota()->search('su')->get();

// Laravel
use Kavist\RajaOngkir\Facades\RajaOngkir;

$daftarProvinsi = RajaOngkir::kota()->search('su')->get();
```

Anda juga bisa mencari kota/kabupaten dari provinsi tertentu dengan memanggil metode `dariProvinsi()` sebelum memanggil metode `search()`.

```
// Native PHP
use Kavist\RajaOngkir\RajaOngkir;

$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->kota()->dariProvinsi(11)->search('su')->get();

// Laravel
use Kavist\RajaOngkir\Facades\RajaOngkir;

$daftarProvinsi = RajaOngkir::kota()->dariProvinsi(11)->search('su')->get();
```

Pencarian biaya pengiriman
--------------------------

[](#pencarian-biaya-pengiriman)

Untuk mengambil biaya pengiriman, gunakan metode `ongkosKirim(array $payload)`.

```
// Native PHP
use Kavist\RajaOngkir\RajaOngkir;

$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->ongkosKirim([
    'origin'        => 155,     // ID kota/kabupaten asal
    'destination'   => 80,      // ID kota/kabupaten tujuan
    'weight'        => 1300,    // berat barang dalam gram
    'courier'       => 'jne'    // kode kurir pengiriman: ['jne', 'tiki', 'pos'] untuk starter
]);

// Laravel
use Kavist\RajaOngkir\Facades\RajaOngkir;

$daftarProvinsi = RajaOngkir::ongkosKirim([
    'origin'        => 155,     // ID kota/kabupaten asal
    'destination'   => 80,      // ID kota/kabupaten tujuan
    'weight'        => 1300,    // berat barang dalam gram
    'courier'       => 'jne'    // kode kurir pengiriman: ['jne', 'tiki', 'pos'] untuk starter
]);
```

Selain metode `ongkosKirim()`, juga tersedia metode `ongkir()` dan `biaya()` sebagai alias dari metode `ongkosKirim()`.

Pengujian
---------

[](#pengujian)

Jalankan pengujian dengan perintah berikut.

```
$ vendor/bin/phpunit
```

Log Perubahan
-------------

[](#log-perubahan)

Silakan membaca [log perubahan](CHANGELOG.md) untuk informasi lengkap.

Ingin berkontribusi?
--------------------

[](#ingin-berkontribusi)

Silakan membaca [tata cara berkontribusi](CONTRIBUTING.md) untuk informasi lengkap.

Kontributor
-----------

[](#kontributor)

- [Ian Mustafa](https://github.com/ianmustafa)
- [Seluruh Kontributor](https://github.com/kavist/rajaongkir/contributors)

Lisensi
-------

[](#lisensi)

The MIT License (MIT). Silakan membaca [berkas lisensi](LICENSE) untuk informasi lengkap.

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity56

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 76% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~1 days

Total

5

Last Release

2404d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/707e862eb8fddef4791639520cae4efdc10855859dcf3aa74c1bafa46c5bb575?d=identicon)[xtwoend](/maintainers/xtwoend)

---

Top Contributors

[![ianmustafa](https://avatars.githubusercontent.com/u/5209746?v=4)](https://github.com/ianmustafa "ianmustafa (19 commits)")[![Mudarismal](https://avatars.githubusercontent.com/u/18151923?v=4)](https://github.com/Mudarismal "Mudarismal (2 commits)")[![xtwoend](https://avatars.githubusercontent.com/u/1768785?v=4)](https://github.com/xtwoend "xtwoend (2 commits)")[![andriawan](https://avatars.githubusercontent.com/u/13099373?v=4)](https://github.com/andriawan "andriawan (1 commits)")[![nafiesl](https://avatars.githubusercontent.com/u/8721551?v=4)](https://github.com/nafiesl "nafiesl (1 commits)")

---

Tags

laravelrajaongkir

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/xtwoend-rajaongkir/health.svg)

```
[![Health](https://phpackages.com/badges/xtwoend-rajaongkir/health.svg)](https://phpackages.com/packages/xtwoend-rajaongkir)
```

###  Alternatives

[kavist/rajaongkir

Klien API PHP untuk RajaOngkir

13520.4k](/packages/kavist-rajaongkir)[rizalafani/rajaongkirlaravel

Raja Ongkir API Laravel 5

237.2k](/packages/rizalafani-rajaongkirlaravel)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
