Ojire Payment Gateway
  1. Otentikasi API
Ojire Payment Gateway
  • Registrasi SNAP di OJIRE Payment Gateway
  • Otentikasi API
    • Public Key dan Private Key
    • Bearer Token
    • Signature
  • Auth
    • Get Token API
      POST
  • Virtual Account
    • Create VA
      POST
    • Update VA
      PUT
    • Inquiry VA
      POST
    • Delete VA
      DELETE
    • Callback VA
      POST
  • QRIS
    • Generate QR MPM
      POST
  • Payment Link
    • Create Payment Link
      POST
    • Inquiry Payment Link
      POST
    • Method Payment Link
      POST
  • Account
  1. Otentikasi API

Signature

Mekanisme keamanan Tanda Tangan untuk API Pembayaran menawarkan dua pendekatan berbeda. Pertama, memanfaatkan fungsi kriptografi HMAC_512 simetris, di mana token akses merupakan bagian integral dari proses. Sebagai alternatif, fungsi kriptografi SHA256withRSA asimetris dapat digunakan, berfungsi secara independen dari token akses.
Disarankan bagi klien untuk mengadopsi fungsi kriptografi HMAC_512 simetris bersama dengan token akses saat membuat tanda tangan untuk API Metode Pembayaran. Metode ini memastikan pendekatan yang kuat dan aman.
Sebaliknya, Notify Payment API akan secara eksklusif memanfaatkan fungsi kriptografi SHA256withRSA asimetris, memastikan tindakan keamanan spesifik dan disesuaikan yang diterapkan oleh OJIRE.
Penting untuk dicatat bahwa spesifikasi ini selaras dengan dokumen SNAP API Pembayaran yang disediakan oleh Bank Indonesia, yang dapat diakses di sini.
SNAP API OJIRE Payment Gateway bergantung pada penggunaan kunci API untuk otentikasi permintaan, sebuah aspek penting yang memerlukan perhatian khusus karena berbagai fitur keamanannya. Memastikan keamanan maksimal dari kunci API ini adalah hal yang terpenting.
Dalam proses transaksi yang melibatkan API Duitku, mitra kami wajib memberikan Kunci API sebagai kredensial yang ditentukan, yang disediakan oleh Duitku. Kunci ini berfungsi sebagai alat untuk mengautentikasi transaksi melalui metode autentikasi pembawa, menggunakan header -H "Authorization: Bearer ". Penting untuk diperhatikan bahwa semua permintaan API harus dilakukan melalui HTTPS untuk menjamin saluran komunikasi yang aman. Permintaan yang dilakukan melalui HTTP tidak akan berhasil.
Selain itu, segala upaya untuk mengakses API tanpa autentikasi yang tepat akan mengakibatkan kegagalan, hal ini menekankan pentingnya mematuhi protokol autentikasi yang ada.
Kerja sama Anda dalam mengikuti langkah-langkah keamanan ini sangat kami hargai, karena hal ini memastikan lingkungan yang kuat dan aman untuk transaksi API.

Symmetric#

Formula:
stringToSign = HttpMethod + “:” + Endpoint + “:” + AccessToken + “:” + LowerCase(HexEncode(SHA-256(Minify(RequestBody)))) + “:” + Timestamp

hash = HMAC_SHA512(stringToSign, secretKey)

signature = Base64(hash)
Penjelasan:
Buatlah sebuah variabel stringToSign.
HttpMethod adalah string nama metode yang sedang digunakan. Bisa saja POST, PUT, atau DELETE.
Endpoint adalah relative URL atau full path URL yang mana tanpa host atau domainnya.
AccessToken adalah nilai token yang Anda dapatkan dari API Get Token.
RequestBody adalah payload yang ingin Anda kirim.
Timestamp menggunakan ISO-8601.
secretKey adalah rahasia klien atau kunci API proyek.
Hash stringToSign menggunakan HMAC_SHA512 cryptographic dan secret key (nama lain saat ini adalah API key). Kemudian, encode dengan Base64.
Masukkan nilainya ke X-SIGNATURE.

Asymmetric#

Formula:
stringToSign = ClientKey + “|” + Timestamp
hash = SHA256withRSA(stringToSign,privateKey)
signature = Base64(hash)
Penjelasan:
Buatlah sebuah variabel stringToSign.
ClientKey adalah ID Project.
Timestamp menggunakan ISO-8601.
privateKey adalah kunci RSA yang Anda buat. Lihat Public Key dan Private Key untuk melihat cara menghasilkannya.
Hash stringToSign menggunakan SHA256withRSA cryptographic dan secret key (nama lain saat ini adalah API key). Kemudian, encode dengan Base64.
Masukkan nilainya ke X-SIGNATURE.
Previous
Bearer Token
Next
Get Token API