Bagian 1

Environment dan autentikasi

Base URL, header wajib, scope API key, penyimpanan dan rotasi key.

Environment

Base path seluruh endpoint adalah /api/v1. Host production yang direncanakan adalah https://api.antarapay.com. Gunakan base URL yang diberikan AntaraPay saat aktivasi; alamat sandbox belum ditetapkan dalam kontrak ini.

Jangan menambahkan /api/v1 dua kali pada URL. Jika ANTARAPAY_BASE_URL sudah berisi /api/v1, jangan menambahkannya lagi di path.
HeaderAturan
AuthorizationBearer <api_key>; wajib pada seluruh endpoint dalam panduan ini kecuali webhook masuk ke server Anda.
Content-Typeapplication/json untuk request dengan JSON body.
Idempotency-KeyWajib pada seluruh POST. Gunakan nilai unik per operasi bisnis dan simpan untuk retry.
Acceptapplication/json; gunakan image/png untuk GET QR image.
Contoh request
curl "$ANTARAPAY_BASE_URL/api/v1/balances" \
  -H "Authorization: Bearer $ANTARAPAY_API_KEY" \
  -H "Accept: application/json"

Scope API key

ScopeOperasi
payins:write / payins:readMembuat payin / membaca daftar, detail, dan QR.
payouts:write / payouts:readMembuat atau membatalkan payout / membaca payout.
balances:read / journals:readMembaca saldo / jurnal.
settlements:read / channels:readMembaca settlement / kanal.
reports:write / reports:readMengajukan export / membaca status export.

Penyimpanan dan rotasi key

API key hanya digunakan server-to-server. Jangan menaruh key di JavaScript frontend, aplikasi mobile, source control, URL, atau log. Gunakan secret manager atau environment backend. Sandbox dan production memakai kredensial berbeda. Cabut key yang bocor dan lakukan rotasi melalui dashboard integrasi.

Setiap key terikat ke satu merchant. Tidak perlu mengirim merchant_id pada body. Resource merchant lain tidak dapat diakses walaupun ID diketahui. Scope yang tidak cukup menghasilkan 403; key salah atau dicabut menghasilkan 401.

Dashboard merchant

Dashboard digunakan untuk memantau transaksi, saldo, jurnal, laporan, dan konfigurasi integrasi. Pembuatan payin/payout v1 dilakukan melalui API. API client tidak memberikan akses approval admin atau eksekusi transfer manual.