Generasi Kunci RSA
Panduan Generasi Kunci RSA
Permintaan API Smilepayz ditandatangani dengan private key RSA merchant Anda. Public key yang sesuai diunggah di backend merchant agar Smilepayz dapat memverifikasi X-SIGNATURE. Panduan ini menjelaskan cara membuat dan menyimpan kunci di sandbox dan produksi.
Ikhtisar
| Kunci | Pemegang | Tujuan |
|---|---|---|
| Private key merchant | Anda (jangan unggah) | Menandatangani permintaan API Pay-in, Pay-out, Inquiry |
| Public key merchant | Diunggah ke Smilepayz | Smilepayz memverifikasi X-SIGNATURE Anda |
| Platform public key | Disalin dari Configuration Info | Anda memverifikasi tanda tangan callback |
Gunakan pasangan kunci terpisah
Buat pasangan kunci RSA berbeda untuk sandbox dan produksi. Jangan gunakan ulang private key sandbox di produksi.
Persyaratan kunci
Backend merchant mewajibkan kunci RSA 2048-bit (penandatanganan SHA256withRSA). Kolom teks menyimpan public key sebagai Base64 tanpa header PEM.
- Private key — simpan file unduhan dengan aman; hanya di server Anda
- Public key — isi di Merchant Public Key, lalu Save
Cara tanda tangan memakai private key: Otorisasi Tanda Tangan.
Sandbox: buat dan simpan kunci
Langkah 1: Buka API Setting
- Masuk ke backend merchant.
- Alihkan toggle atas ke Sandbox.
- Buka Configuration di sidebar kiri.
- Pilih tab API Setting.
- Gulir ke Merchant Public Key.
Langkah 2: Generate pasangan kunci
- Klik Generate RSA Keys.
- Browser mengunduh file pasangan kunci (nama file biasanya memuat
Sandboxdan timestamp). - Public key terisi otomatis di kotak teks.
Langkah 3: Simpan public key
- Periksa public key di kotak teks.
- Klik Save di bagian bawah area ini.
- Simpan file unduhan dengan aman — berisi private key Anda.

Produksi: buat dan simpan kunci
Produksi memakai Settings → Configuration, bukan menu Configuration sandbox.
Langkah 1: Buka API Setting
- Masuk ke backend merchant.
- Pastikan toggle atas Production.
- Buka Settings → Configuration.
- Buka tab API Setting.
- Gulir ke Merchant Public Key.
Langkah 2: Generate dan simpan
- Klik Generate (label produksi; fungsi sama dengan sandbox).
- Simpan file private key yang diunduh dengan aman.
- Tinjau public key di kotak teks.
- Klik Save API configuration di bagian bawah halaman.
Perbedaan API Setting produksi
Di produksi, entri API IP Whitelist hanya tampilan (dikelola platform). Field callback: Payin dan Payout. Tombol simpan: Save API configuration.

File unduhan
File unduhan biasanya berisi blok PEM untuk kedua kunci:
-----BEGIN PRIVATE KEY-----
[Konten private key Base64]
-----END PRIVATE KEY-----
-----BEGIN PUBLIC KEY-----
[Konten public key Base64]
-----END PUBLIC KEY-----
Gunakan private key (PKCS#8, Base64) di kode integrasi atau SDK. Nilai di kotak backend sama dengan isi public key tanpa baris -----BEGIN/END-----.
Setelah konfigurasi
- Lengkapi Informasi Integrasi (IP whitelist, URL callback) jika belum.
- Uji penandatanganan di tab Signature Test sandbox atau panggilan API sandbox.
- Saat go-live, ulangi di produksi dengan pasangan kunci baru.
Pemecahan masalah
| Masalah | Tindakan |
|---|---|
| Tanda tangan API ditolak | Pastikan sudah klik Save setelah generate; private key harus cocok dengan public key yang diunggah |
| Lingkungan salah | Kunci sandbox dan produksi terpisah — periksa toggle dan prefiks Merchant ID |
| Private key hilang | Generate pasangan baru, unggah public key baru, perbarui server |
| Kotak public key kosong setelah Generate | Coba Generate lagi; periksa izin unduhan browser |
