Paket pustaka PHP untuk mengakses API RajaOngkir dengan mudah.
- 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).
- Fitur di tipe akun Basic dan Pro.
- Pencarian fuzzy (menggunakan Fuse).
- PHP 7.0 (direkomendasikan untuk menggunakan PHP 7.1 atau lebih tinggi).
Gunakan Composer untuk menginstal pustaka ini.
$ composer require kavist/rajaongkir:^1.1
Anda juga bisa menambahkan dependensi ke composer.json
.
{
"require": {
"kavist/rajaongkir": "^1.1"
}
}
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 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.
Untuk pengguna PHP native, deklarasikan kunci API sebagai parameter ketika Anda
menginstansiasi class Soffandluffy\RajaOngkir\RajaOngkir
.
$rajaOngkir = new RajaOngkir('isi_API_key_Anda_disini');
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="Soffandluffy\RajaOngkir\Providers\LaravelServiceProvider"
Untuk mendapatkan daftar provinsi, gunakan metode provinsi()->all()
.
// Native PHP
use Soffandluffy\RajaOngkir\RajaOngkir;
$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->provinsi()->all();
// Laravel
use Soffandluffy\RajaOngkir\Facades\RajaOngkir;
$daftarProvinsi = RajaOngkir::provinsi()->all();
Untuk mendapatkan provinsi berdasarkan ID, gunakan metode provinsi()->find(int|string $id)
.
// Native PHP
use Soffandluffy\RajaOngkir\RajaOngkir;
$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->provinsi()->find(11);
// Laravel
use Soffandluffy\RajaOngkir\Facades\RajaOngkir;
$daftarProvinsi = RajaOngkir::provinsi()->find(11);
Untuk mencari provinsi berdasarkan nama, gunakan metode provinsi()->search(string $searchTerm)->get()
.
// Native PHP
use Soffandluffy\RajaOngkir\RajaOngkir;
$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->provinsi()->search('ja')->get();
// Laravel
use Soffandluffy\RajaOngkir\Facades\RajaOngkir;
$daftarProvinsi = RajaOngkir::provinsi()->search('ja')->get();
Untuk mendapatkan daftar kota/kabupaten, gunakan metode kota()->all()
.
// Native PHP
use Soffandluffy\RajaOngkir\RajaOngkir;
$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->kota()->all();
// Laravel
use Soffandluffy\RajaOngkir\Facades\RajaOngkir;
$daftarProvinsi = RajaOngkir::kota()->all();
Untuk mendapatkan kota/kabupaten berdasarkan ID, gunakan metode kota()->find(int|string $id)
.
// Native PHP
use Soffandluffy\RajaOngkir\RajaOngkir;
$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->kota()->find(80);
// Laravel
use Soffandluffy\RajaOngkir\Facades\RajaOngkir;
$daftarProvinsi = RajaOngkir::kota()->find(80);
Untuk mendapatkan kota/kabupaten berdasarkan ID provinsinya, gunakan metode kota()->dariProvinsi(int|string $provinceId)->get()
.
// Native PHP
use Soffandluffy\RajaOngkir\RajaOngkir;
$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->kota()->dariProvinsi(11)->find(80);
// Laravel
use Soffandluffy\RajaOngkir\Facades\RajaOngkir;
$daftarProvinsi = RajaOngkir::kota()->dariProvinsi(11)->find(80);
Untuk mencari kota/kabupaten berdasarkan nama, gunakan metode kota()->search(string $searchTerm)->get()
.
// Native PHP
use Soffandluffy\RajaOngkir\RajaOngkir;
$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->kota()->search('su')->get();
// Laravel
use Soffandluffy\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 Soffandluffy\RajaOngkir\RajaOngkir;
$rajaOngkir = new RajaOngkir($apiKey);
$daftarProvinsi = $rajaOngkir->kota()->dariProvinsi(11)->search('su')->get();
// Laravel
use Soffandluffy\RajaOngkir\Facades\RajaOngkir;
$daftarProvinsi = RajaOngkir::kota()->dariProvinsi(11)->search('su')->get();
Untuk mengambil biaya pengiriman, gunakan metode ongkosKirim(array $payload)
.
// Native PHP
use Soffandluffy\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 Soffandluffy\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()
.
Jalankan pengujian dengan perintah berikut.
$ vendor/bin/phpunit
Silakan membaca log perubahan untuk informasi lengkap.
Silakan membaca tata cara berkontribusi untuk informasi lengkap.
The MIT License (MIT). Silakan membaca berkas lisensi untuk informasi lengkap.