Balance Information
Ringkasan
Layanan ini digunakan untuk mengelola dan menampilkan saldo Paydia Bisnis dan Paydia app melalui pedagang. Informasi detail akan dijelaskan pada bagian selanjutnya.
Spesifikasi API Paydia akan mencakup 1 titik utama, yaitu:
No | Nama API | Deskripsi |
---|
1 | Penyelidikan Saldo | API ini digunakan untuk menanyakan saldo Paydia Bisnis dan Paydia app melalui pedagang |
Pembuatan Signature dan Validasi
Berikut akan dijelaskan tentang pembuatan signature dan validasi.
Simetris dengan B2B Access Token (HMAC_SHA512)
Langkah-langkah berikut akan menjelaskan tentang Simetris dengan B2B Access Token (HMAC_SHA512).
Pembuatan Signature Digital
Terapkan Signature Token B2B
- Gabungkan string yang akan ditandatangani:
X-CLIENT-KEY + "|" + X-TIMESTAMP |
- String Signature dihasilkan dari string yang akan ditandatangani di atas dengan menerapkan SHA-256 dengan enkripsi RSA-2048 menggunakan kunci pribadi pkcs8, dan kemudian mengkodekan hasilnya ke base64.
- Letakkan string Signature ke dalam header HTTP “X-SIGNATURE“ saat memanggil API untuk menerapkan token akses B2B.
Signature Transaksi
- Gabungkan string yang akan ditandatangani:
HTTP METHOD + ":" + RELATIVE PATH URL + ":" + B2B ACCESS TOKEN + ":" + LowerCase(HexEncode(SHA-256(Minify(HTTP BODY)))) + ":" + X-TIMESTAMP |
- String Signature dihasilkan dari string yang akan ditandatangani di atas dengan menerapkan pencocokan HMAC_SHA512 menggunakan kunci rahasia yang diberikan oleh Paydia, dan kemudian mengkodekan hasilnya ke base64.
- Letakkan string Signature ke dalam header HTTP “X-SIGNATURE“ saat memanggil API Paydia.
Validasi Signature Digital
Terapkan Signature Token B2B
Berikut adalah langkah-langkah Pembuatan Signature digital:
- Ambil Signature dari header HTTP “X-SIGNATURE“.
- Deskripsi Signature menggunakan kunci publik yang sesuai dengan kunci pribadi yang digunakan untuk menghasilkan Signature.
- Verifikasi kebenaran Signature berdasarkan enkripsi Signature dengan pencocokan SHA-256 menggunakan enkripsi RSA-2048 terhadap string yang akan ditandatangani.
- Jika verifikasi benar, maka konsumsilah pesan tersebut.
Signature Transaksi
- Gabungkan string yang akan ditandatangani:
HTTP METHOD + ":" + RELATIVE PATH URL + ":" + B2B ACCESS TOKEN + ":" + LowerCase(HexEncode(SHA-256(Minify(HTTP BODY)))) + ":" + X-TIMESTAMP |
- Hasilkan Signature dari string yang akan ditandatangani di atas dengan menerapkan pencocokan HMAC_SHA512 menggunakan kunci rahasia yang diberikan oleh Paydia, dan kemudian mengkodekan hasilnya ke base64.
- Ambil Signature dari header HTTP “X-SIGNATURE“.
- Bandikan nilai antara X-SIGNATURE dan Signature yang dihasilkan, jika nilai tersebut sama, maka konsumsilah pesan tersebut.
Asimetris tanpa Token Akses (SHA256withRSA)
Langkah-langkah berikut akan menjelaskan tentang Asimetris tanpa Token Akses (SHA256withRSA).
Pembuatan Kunci Asimetris
Berikut akan dijelaskan tentang Pembuatan kunci asimetris:
- Buat Kunci Pribadi
openssl genrsa -out rsa_private_key.pem 2048 |
- Ekspor Kunci Publik
openssl rsa -in rsa_private_key.pem -out rsa_public_key.pem -pubout |
- Konversi Kunci Pribadi ke PKCS#8
openssl pkcs8 -topk8 -in rsa_private_key.pem -out pkcs8_rsa_private_key.pem -nocrypt |
Mitra harus menghasilkan Signature dengan menggunakan pkcs8_rsa_private_key.pem, dan Paydia akan menggunakan rsa_public_key.pem untuk memvalidasi Signature dan sebaliknya.
Pembuatan Signature DigitalBerikut adalah langkah-langkah Pembuatan Signature digital:
- Gabungkan string yang akan ditandatangani:
- Terapkan token:
X-CLIENT-KEY + "|" + X-TIMESTAMP |
- Transaksional:
HTTP METHOD + ":" + RELATIVE PATH URL + ":" + LowerCase(HexEncode(SHA-256(Minify(HTTP BODY))) + ":" + X-TIMESTAMP |
- String Signature dihasilkan dari string yang akan ditandatangani di atas dengan menerapkan enkripsi SHA-256 dengan enkripsi RSA-2048 menggunakan kunci pribadi pkcs8, dan kemudian mengkodekan hasilnya ke base64.
- Letakkan string Signature ke dalam header HTTP “X-SIGNATURE“.
Contoh:
X-SIGNATURE: k0DJhMxlfb6ILcDVXvaDr1i00RK4oH5OdPtBFaCpe86CcWaI85rUi6iFOEHXDT2/Gg5QALLOPzqgOnw8XaH8ZXzC0mSRz0D9SkMi0CEAeDFVVHwPuDX9/s35NGgbQJQ0uAPDKKgBC1IAJ1pE7P4+E4jyPbEH8tC1Hm7IhTf+klDgDOmBEM1VCCGhf1MWb8O6MF09osImYkiR+NWvaZu6AnQ26wOf7BtvnICcCGhrbVLm4RfPNgFhWpVqpZMlWo4p/EvsW5xGBuXZvEnNzsFKOBa+88uqXjizl7BfDLLh7DWuqOwXjgtBdGFQ2C1R4b9YcymRoudb1O9L0ZQEbJbNNQ== |
Validasi Signature Digital
Berikut adalah langkah-langkah validasi Signature digital:
- Ambil Signature dari header HTTP “X-SIGNATURE“.
- Deskripsi Signature menggunakan kunci publik yang sesuai dengan kunci pribadi yang digunakan untuk menghasilkan Signature.
- Verifikasi kebenaran Signature berdasarkan enkripsi Signature dengan enkripsi SHA-256 dengan RSA-2048 terhadap string yang akan ditandatangani.
- Jika verifikasi benar, maka konsumsilah pesan tersebut.
Versi Dokumen
Tabel berikut digunakan untuk menunjukkan versi dokumen ini:
No | Tanggal | Versi | Keterangan | Halaman |
---|
1 | 10 Mei 2023 | 1.2.2 | - Menghapus TOKEN AKSES B2B dalam Pembuatan Signature Digital
| |
2 | 26 April 2023 | 1.1.1 | - Memperbarui detail layanan dan API
- Menghapus bagian Kode Tanggapan Umum
| |
3 | 4 November 2022 | 1.1.0 | Rilis Awal | Semua yang terkait dengan PayConnect |