Satu API untuk seluruh ekosistem pengiriman Indonesia
Integrasikan JNE, J&T, SiCepat, Lion Parcel, dan AnterAja dalam hitungan hari. Cek ongkir, buat resi, lacak paket, dan otomasi operasional logistik bisnis Anda.
Sandbox Tersedia
Uji integrasi tanpa biaya pengiriman nyata
Integrasi Cepat
Rata-rata go-live dalam 3-5 hari kerja
Siap Produksi
Dipercaya merchant & corporate di seluruh Indonesia
Getting Started
eralog API menghubungkan bisnis Anda ke jaringan kurir nasional melalui satu endpoint terpadu. Dibangun di atas Laravel dengan autentikasi Sanctum - ideal untuk marketplace, ERP, dan aplikasi e-commerce Indonesia.
Multi-Kurir
JNE, J&T, SiCepat, Lion Parcel, AnterAja dalam satu integrasi
Bandingkan Ongkir
Cek tarif real-time antar layanan dan pilih yang terbaik
Tracking Real-time
Lacak AWB dari semua kurir dengan timeline terpadu
Webhooks
Notifikasi otomatis saat status pengiriman berubah
Base URL - Sandbox
https://sandbox.eralog.id/apiBase URL - Production
https://api.eralog.id/apiRate Limits
60 request/menit per token. Publik checktariff: 30/menit per IP.
Versioning
Prefix /api. Breaking changes diumumkan 90 hari sebelumnya.
Authentication
Bearer token via Laravel Sanctum. Login customer hanya melalui POST /loginCust.
curl -X POST https://sandbox.eralog.id/api/loginCust \
-H "Content-Type: application/json" \
-d '{"email":"merchant@tokoanda.co.id","password":"secret"}'
Authorization: Bearer 1|your-sanctum-token...
Keamanan
- Jangan expose token di frontend publik
- IP whitelist tersedia untuk akun enterprise
- HTTPS wajib di semua environment
API Reference
Error Codes & Handling
| Code | Arti | Saran Penanganan |
|---|---|---|
| 200 | Sukses | Proses response dari field data |
| 401 | Unauthorized | Token invalid/expired - login ulang via /loginCust |
| 404 | Not Found / Fail | AWB tidak ditemukan, service tidak tersedia, validasi gagal |
| 422 | Validation Error | Periksa field wajib pada request body |
| 429 | Rate Limited | Implementasi exponential backoff |
| 500 | Server Error | Retry dengan idempotency key; hubungi support jika persisten |
{
"success": false,
"message": "Fail",
"data": { "error": "AWB Tidak ditemukan" }
}
Webhooks
Terima notifikasi real-time saat status pengiriman berubah. Konfigurasi URL webhook dilakukan melalui dashboard merchant atau tim support.
Event yang Didukung
shipment.created- Resi berhasil dibuatshipment.status.updated- Status berubah (picked up, in transit)shipment.delivered- Paket diterima penerimashipment.returned- Return to shipper / gagal kirim
Verifikasi Signature
$payload = file_get_contents('php://input');
$signature = $request->header('X-EraLog-Signature');
$expected = hash_hmac('sha256', $payload, $webhookSecret);
if (!hash_equals($expected, $signature)) {
abort(401, 'Invalid signature');
}
{
"event": "shipment.delivered",
"awb": "JNE1234567890",
"courier": "jne",
"status": "finish",
"timestamp": "2026-07-03T14:22:00+07:00"
}
SDKs & Code Examples
# Login
curl -X POST $BASE_URL/loginCust -H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"email":"merchant@tokoanda.co.id","password":"secret"}'
# Cek ongkir (authenticated)
curl -X POST $BASE_URL/getTarif -H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"city_pengirim":1023,"city_penerima":2109,"product_weight":1500,"product_value":8000}'
# Buat order Jakarta ke Surabaya via JNE REG
curl -X POST $BASE_URL/createShippingOrder -H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" -d @order.json
Support & Next Steps
Tim integrasi kami siap membantu go-live. Rata-rata onboarding selesai dalam 3-5 hari kerja.