Cara Integrasi API Midtrans & Raja Ongkir di Laravel

Kamu lagi bikin proyek buat skripsi atau untuk kerjaan yang harus pakai Cloudflare dengan payment gateway Midtrans dan cek ongkir pakai Raja Ongkir? Santai, bro! Artikel ini bakal ngasih tutorial lengkapnya biar kamu bisa langsung terapkan di proyek Laravel kamu.

Di artikel ini, kita bakal bahas dua hal penting yang sering banget dipakai di aplikasi e-commerce, yaitu cara mengintegrasi Midtrans buat pembayaran dan Raja Ongkir buat cek ongkir. Jadi, kalau kamu pengen tahu gimana cara menghubungkan kedua API ini ke aplikasi Laravel, yuk, langsung simak langkah-langkahnya!

1. Persiapan Awal

Sebelum masuk ke intinya, pastikan kamu sudah punya akun di Midtrans dan Raja Ongkir.

  • Midtrans: Daftar di Midtrans untuk dapetin API key yang bakal kita pakai untuk transaksi.

  • Raja Ongkir: Daftar di Raja Ongkir buat dapetin API key untuk cek ongkir.

Setelah kamu dapat API key dari kedua layanan tersebut, kita bisa mulai integrasi!

2. Mengintegrasikan API Midtrans di Laravel

a. Install Package Midtrans

Langkah pertama, kita install package Midtrans biar bisa langsung digunakan di Laravel. Buka terminal, lalu ketik:

b. Konfigurasi Midtrans

Setelah package terinstal, kita perlu konfigurasi Midtrans. Buka file .env di Laravel dan tambahkan konfigurasi berikut:

c. Membuat Midtrans Service

Sekarang kita buat service yang akan menangani integrasi Midtrans. Di dalam folder app/Services/, buat file baru dengan nama MidtransService.php:

d. Menggunakan Midtrans di Controller

Sekarang, buka controller dan panggil service untuk membuat transaksi dengan Midtrans. Contohnya seperti ini:

Dengan cara ini, kamu udah berhasil integrasi Midtrans untuk pembayaran di aplikasi Laravel kamu.

3. Mengintegrasikan API Raja Ongkir di Laravel

a. Install Package Raja Ongkir

Sekarang kita lanjut ke Raja Ongkir buat cek ongkir. Kamu bisa pakai package yang ada di Laravel buat integrasi dengan Raja Ongkir. Install dulu menggunakan Composer:

bash
composer require rajaongkir/rajaongkir

b. Konfigurasi Raja Ongkir

Buka file .env lagi dan tambahkan konfigurasi API key Raja Ongkir:

env
RAJA_ONGKIR_API_KEY=your-rajaongkir-api-key

Ganti your-rajaongkir-api-key dengan API key yang kamu dapat dari Raja Ongkir.

c. Membuat Raja Ongkir Service

Sekarang, kita buat service untuk mendapatkan data ongkir dari Raja Ongkir. Buat file baru di app/Services/RajaOngkirService.php:

php
namespace App\Services;

use Illuminate\Support\Facades\Http;

class RajaOngkirService
{
protected $apiKey;

public function __construct()
{
$this->apiKey = env('RAJA_ONGKIR_API_KEY');
}

public function getCities($province_id)
{
$response = Http::withHeaders([
'key' => $this->apiKey,
])->get("https://api.rajaongkir.com/starter/city?province=$province_id");

return $response->json();
}

public function getCost($origin, $destination, $weight, $courier)
{
$response = Http::withHeaders([
'key' => $this->apiKey,
])->post("https://api.rajaongkir.com/starter/cost", [
'origin' => $origin,
'destination' => $destination,
'weight' => $weight,
'courier' => $courier,
]);

return $response->json();
}
}

d. Menggunakan Raja Ongkir di Controller

Buka controller dan panggil service untuk cek ongkir:

php
use App\Services\RajaOngkirService;

class ShippingController extends Controller
{
protected $rajaOngkir;

public function __construct(RajaOngkirService $rajaOngkir)
{
$this->rajaOngkir = $rajaOngkir;
}

public function getCost(Request $request)
{
$origin = $request->input('origin');
$destination = $request->input('destination');
$weight = $request->input('weight');
$courier = $request->input('courier');

$cost = $this->rajaOngkir->getCost($origin, $destination, $weight, $courier);

return response()->json($cost);
}
}

Sekarang kamu bisa cek ongkos kirim dengan menggunakan API Raja Ongkir!

4. Menampilkan Data di Frontend

Setelah kedua API terintegrasi, kamu bisa menampilkan data transaksi dan ongkir di frontend aplikasi Laravel kamu. Misalnya, setelah pengguna memilih produk, kamu bisa menampilkan estimasi ongkos kirim dan memungkinkan mereka untuk melakukan pembayaran menggunakan Midtrans.

5. Kesimpulan

Nah, itu dia cara mengintegrasikan API Midtrans dan Raja Ongkir di Laravel. Dengan mengikuti tutorial ini, kamu bisa menambahkan dua fitur yang penting banget buat aplikasi e-commerce, yaitu pembayaran dan cek ongkir.

Kalau ada yang bingung atau masih ada pertanyaan, langsung aja tulis di kolom komentar ya! Semoga artikel ini bermanfaat dan membantu kamu buat ngembangin aplikasi yang keren!

Scroll to Top