dzaki236/rajaongkir

This package is abandoned and no longer maintained. No replacement package was suggested.

Klien API PHP untuk RajaOngkir.

1.0.1 2022-08-19 08:07 UTC

This package is auto-updated.

Last update: 2022-11-19 08:41:56 UTC


README

Paket pustaka PHP untuk mengakses API RajaOngkir dengan mudah.

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

  • Fitur di tipe akun Basic dan Pro.
  • Pencarian fuzzy (menggunakan Fuse).

Persyaratan Sistem

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

Instalasi

Gunakan Composer untuk menginstal pustaka ini.

$ composer require Dzaki236/rajaongkir:^1.1

Anda juga bisa menambahkan dependensi ke composer.json.

{
    "require": {
        "Dzaki236/rajaongkir": "^1.1"
    }
}

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 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

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

$rajaOngkir = new RajaOngkir('isi_API_key_Anda_disini');

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="Dzaki236\RajaOngkir\Providers\LaravelServiceProvider"

Penggunaan

Provinsi

Daftar provinsi

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

// Native PHP
use Dzaki236\RajaOngkir\RajaOngkir;

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

// Laravel
use Dzaki236\RajaOngkir\Facades\RajaOngkir;

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

Ambil provinsi berdasarkan ID

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

// Native PHP
use Dzaki236\RajaOngkir\RajaOngkir;

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

// Laravel
use Dzaki236\RajaOngkir\Facades\RajaOngkir;

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

Pencarian provinsi berdasarkan nama

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

// Native PHP
use Dzaki236\RajaOngkir\RajaOngkir;

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

// Laravel
use Dzaki236\RajaOngkir\Facades\RajaOngkir;

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

Kota/Kabupaten

Daftar kota/kabupaten

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

// Native PHP
use Dzaki236\RajaOngkir\RajaOngkir;

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

// Laravel
use Dzaki236\RajaOngkir\Facades\RajaOngkir;

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

Ambil kota/kabupaten berdasarkan ID

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

// Native PHP
use Dzaki236\RajaOngkir\RajaOngkir;

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

// Laravel
use Dzaki236\RajaOngkir\Facades\RajaOngkir;

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

Daftar kota/kabupaten berdasarkan ID provinsinya

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

// Native PHP
use Dzaki236\RajaOngkir\RajaOngkir;

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

// Laravel
use Dzaki236\RajaOngkir\Facades\RajaOngkir;

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

Pencarian kota/kabupaten berdasarkan nama

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

// Native PHP
use Dzaki236\RajaOngkir\RajaOngkir;

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

// Laravel
use Dzaki236\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 Dzaki236\RajaOngkir\RajaOngkir;

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

// Laravel
use Dzaki236\RajaOngkir\Facades\RajaOngkir;

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

Pencarian biaya pengiriman

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

// Native PHP
use Dzaki236\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 Dzaki236\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

Jalankan pengujian dengan perintah berikut.

$ vendor/bin/phpunit

Lisensi

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