Integrasi API

Melalui kelas ini, kamu diajak untuk:

  • Mengenal API untuk QRIS.
  • Mengintegrasikan platform kita dengan API QRIS.

API QRIS

Application Programming Interface adalah peranti yang jamak dipakai dalam membangun software sebagai penghubung data antar-platform. QRIS menyediakan API untuk memastikan fitur-fitur kemudahan dapat terintegrasi dengan mudah ke seluruh merchant pengguna.

Penerapan QRIS di Dalam Platform

Dalam proses transaksi QRIS, ada perpindahan dana dari pembeli ke penjual. Proses itu tidak hanya soal perpindahan dana, tapi juga terdapat pelbagai proses dari penerbitan QRIS code, hingga pelaporan dan pelacakan transaksi. Berikut berbagai fitur yang dapat dilakukan lewat OPEN API:

  • Menampilkan Total Transaksi belanja pada Aplikasi POS (Kasir).
  • Menampilkan Total Transaksi belanja pada Aplikasi e-commerce.
  • Menampilkan Total Transaksi pada Aplikasi pembayaran tagihan rutin.

Pendaftaran

Memiliki NMID tidak otomatis dapat mengakses OPEN API QRIS. Agar tidak disalahgunakan, fitur-fitur yang memudahkan dari OPEN API QRIS memiliki proses pendaftaran tambahan berupa legalitas dan verifikasi. Berikut proses-prosesnya.


OPEN API QRIS ditujukan untuk Perusahaan atau Lembaga yang berbadan hukum serta tujuan penggunaan jelas

Harus memiliki SIUP atau NIB, Akte Pendirian, NPWP perusahaan untuk badan hukum, NPWP pribadi untuk non badan hukum terdaftar dan KTP Penanggung Jawab.

Memiliki NMID dari InterActive QRIS, bukan NMID selain dari InterActive seperti QR dari layanan keuangan.

Menggunakan platform terdaftar.

CREATE INVOICE

Fitur API pertama adalah menampilkan nominal transaksi lewat QRIS code. Untuk memunculkannya, pastikan database aplikasi dapat menampung berbagai data dengan penamaan berikut: Konten QRIS (qris_content), tanggal generate (qris_request_date), dan Invoice ID (qris_invoiceid)

Tipe request dalam OPEN API adalah GET.

{
    "status": "failed",
    "data": "invalid amount"
}

Untuk parameternya, bisa dilihat di bagan berikut

Contoh penerbitan QR Code sukses akan menampilkan kode di bawah ini:

{
    "status": "success",
    "data": {
        "qris_content": "00020101021226680016ID.CO.TELKOM.WWW011893600898025599662702150001952559966270303UMI51440014ID.CO.QRIS.WWW0215ID10200211817450303UMI520457325303360540825578.005502015802ID5916InterActive Corp6013KOTA SURABAYA61056013662130509413255111630439B7",
        "qris_request_date": "2020-08-07 11:13:42",
        "qris_invoiceid": "413255111",
        "qris_nmid": "ID1020021181745"
    }
}

Dalam Response di atas Anda akan mendapatkan Response Konten QRIS (qris_content) yang dapat dimanfaatkan untuk menampilkan QR Code sesuai dengan library yang digunakan pada Bahasa Pemrograman yang digunakan. Invoice ID adalah data yang berbentuk Integer

Batas waktu kadaluarsa (expired) 60 menit (dalam WIB atau GMT+7) semenjak QRIS ditampilkan, Anda dapat memanfaatkan (qris_request_date) untuk acuan menghitung expired. Saat Expired maka QRIS akan gagal saat di-scan oleh pengguna.

{
    "status": "failed",
    "data": {
        "qris_status": "invalid amount / invalid apikey / invalid mID / transcation number is empty / what we do for you?"
    }
}

CHECK INVOICE

Setelah medium transaksi dicek lewat proses di atas, pengguna QRIS juga mendapat akses status transaksinya. Respons tersebut berdasarkan data transaksi yang terekam di sistem QRIS, apakah gagal atau berhasil.

Tipe request dalam OPEN API adalah GET seperti susunan kode di bawah ini.

{
    "status": "failed, Invoice ID is empty",
    "data": []
}

Untuk mendapatkan status invoice, bisa gunakan parameter di bagan berikut

Transaksi sukses akan menampilkan data seperti ini:

{
    "status": "success",
    "data": {
        "qris_status": "paid"
    }
}

Untuk transaksi yang tidak diselesaikan, maka API akan menampilkan data seperti berikut:

 {
    "status": "failed",
    "data": {
        "qris_status": "unpaid"
    }
}

Selamat, Anda telah menyelesaikan pelajaran ini
Klik untuk menyelesaikan