Lewati ke konten utama

Authentication

Semua request ke Paymenku API memerlukan autentikasi menggunakan Bearer Token melalui HTTP header.


Headers Wajib

Setiap request harus menyertakan header berikut:

Authorization: Bearer sk_live_xxxxxxx
Content-Type: application/json
Accept: application/json

API Key

API Key adalah kredensial rahasia yang mengidentifikasi merchant Anda. Paymenku menyediakan dua jenis key:

TipePrefixKegunaan
Productionsk_live_Transaksi nyata, dana masuk ke saldo
Sandboxsk_test_Testing, tidak ada dana yang berpindah

Mendapatkan API Key

  1. Login ke Dashboard Merchant
  2. Navigasi ke SettingsAPI Keys
  3. Copy API Key yang tersedia

Keamanan

:::danger Penting

  • Jangan pernah expose API Key di client-side (frontend, mobile app, atau repository publik)
  • Simpan API Key di environment variable atau secret manager
  • Gunakan HTTPS untuk semua komunikasi
  • Rotasi API Key secara berkala jika dicurigai bocor :::

Best Practices

# Simpan di environment variable
export PAYMENKU_API_KEY="sk_live_xxxxxxx"
// PHP - baca dari environment
$apiKey = getenv('PAYMENKU_API_KEY');
// Node.js - baca dari environment
const apiKey = process.env.PAYMENKU_API_KEY;

Contoh Request

curl -X GET https://paymenku.com/api/v1/payment-channels \
-H "Authorization: Bearer sk_live_xxxxxxx" \
-H "Content-Type: application/json" \
-H "Accept: application/json"

Error Autentikasi

Jika API Key tidak valid, expired, atau tidak disertakan:

Response 401 Unauthorized:

{
"status": "error",
"message": "Unauthorized"
}

Penyebab umum:

  • API Key salah atau typo
  • Menggunakan key sandbox di mode live (atau sebaliknya)
  • API Key sudah di-revoke dari dashboard
  • Header Authorization tidak disertakan

Rate Limiting

API Paymenku menerapkan rate limiting untuk menjaga stabilitas:

TierLimit
Default60 requests/menit
High VolumeHubungi support untuk peningkatan

Jika melebihi limit, Anda akan menerima response 429 Too Many Requests.