Skip to content

Bridging ke Web Service BPJS Menggunakan C# – Part 1

Reading Time: 4 minutes

Pada saat ini, integrasi Sistem Informasi Manajemen Rumah Sakit(SIMRS) dengan web service BPJS sudah umum dilakukan. Aplikasi Medifirst2000 buatan kantor tempat saya bekerja(Jasamedika) pun sudah melakukan integrasi dengan web service BPJS. Pada tulisan ini, saya akan berbagi kodingan untuk melakukan bridging dengan web service BPJS. Kodingan bridging ini saya buat menggunakan bahasa C# dan editor Visual Studio 2019 Preview. Pada tulisan ini saya hanya akan memberi contoh untuk mendapatkan data peserta BPJS menggunakan nomor kartu BPJS. Menurut saya ini sudah cukup untuk memberikan contoh bagaimana untuk melakukan get data dari web service BPJS. Pada part 2, nanti saya akan memberi contoh untuk melakukan insert SEP pada web service BPJS.

Kodingan Lengkap Bridging ke Web Service BPJS Menggunakan C#

Buat project baru dengan nama “BridgingBPJS”, kemudian tambahkan class pada project tersebut, namai class tersebut dengan nama “Bridging”. Kemudian masukan kodingan berikut ke dalam class Bridging.

Pada umumnya, untuk melakukan pemanggilan pada web service, diperlukan informasi tambahan yang harus dimasukkan pada HTTP Header berupa variabel dan nilainya. Variabel dan nilainya tersebut diperlukan untuk proses autentikasi. Variabel-variabel itu adalah X-cons-id, X-timestamp, dan X-signature. Untuk keterangan masing-masing variabel dan nilanya kalian bisa lihat di bagian Help pada katalog resminya di sini atau kalian bisa lihat pada screenshot di bawah.

Screenshot ini saya ambil dari katalog resmi bpjs pada bagian helpnya.

Penjelasan Kodingan

Pada contoh kodingan ini saya menggunakan consumer ID dan secret key milik salah satu pelanggan perusahaan tempat saya bekerja.

Method Main

Pada method main, di baris pertama, dilakukan pemanggilan constructor class Bridging untuk membuat object dari class Bridging. Pada saat pemanggilan constructor, disertakan juga parameter consumer ID, secret key(Consumer Secret), dan base URL web service. Parameter tersebut digunakan untuk menginisialisasi properties di class Bridging. Di baris kedua, dilakukan pemanggilan method CekDataPesertaByNoKartu dengan memasukan parameter nomor kartu BPJS. Di baris ketiga, data peserta yang disimpan pada variabel data, di tampilkan ke console.

Method CekDataPesertaByNoKartu

Pada saat pemanggilan method CekDataPesertaByNoKartu. Di dalam method tersebut, dilakukan pembuatan object dari class WebClient dengan memanggil method CreateWebClient. Class WebClient memiliki method-method yang bisa digunakan untuk keperluan pemanggilan web service. Ketika object class WebClient sudah dibuat, kemudian dilakukan pemanggilan method DownloadString dengan menyertakan parameter URL web service BPJS yang akan dipanggil. Pada contoh ini URL yang akan dipanggil adalah URL untuk mengecek data kepesertaan BPJS menggunakan nomor kartu. Berikut adalah URL lengkapnya.

Method CreateWebClient

Pada method CreateWebClient, di baris pertama, dilakukan pembuatan object dari class WebClient yang nantinya akan dikirim ke method CekDataPesertaByNoKartu yang memanggilnya. Di baris kedua, dilakukan pembuatan time stamp dengan memanggil method GetTimeStamp milik class Bridging. Pada baris berikutnya dilakukan inisialisasi pada property Headers milik object WebClient. Untuk property cHeaders[“X-cons-id”] diisi menggunakan nilai dari property ConsID milik class Bridging. Untuk property Headers[“X-timestamp”] diisi menggunakan variabel timeStamps yang sebelumnya diisi menggunakan time stamp hasil pemanggilan method GetTimeStamp milik class Bridging. Untuk property client.Headers[“X-signature”] diisi dengan signature hasil dari pemanggilan GetSignature. Pada pemanggilan method GetSignature dimasukkan dua parameter, yaitu parameter consumer ID, secret key dan time stamp. Untuk property Headers[“Content-Type”] diisi dengan string “application/json” yang artinya data balikan yang akan dikirim oleh web service adalah data berformat json.

Method GetSignature

Pada method GetSignature. Pertama, dibuat dulu object hash dari class HMACSHA256 dengan memanggil constructornya. Pada saat pemanggilan constructor dimasukkan juga parameter secret key. Kemudian dilakukan pembuatan signature dengan memanggil method ComputeHash dengan menyertakan variabel string gabungan dari consumer ID ditambah string “&” dan ditambah string time stamp. Karena hasil dari pemanggilan method ComputeHash adalah byte array, sedangkan tipe balikan GetSignature adalah string, maka perlu dilakukan konversi ke string seperti yang dilakukan pada baris kode berikutnya.

Tampilan Program

Tampilan program bridging ke web Service BPJS menggunakan C#

Pada part 2 nanti, saya akan memberikan contoh kodingan bridging ke web service BPJS untuk melakukan insert SEP. Mudah-mudahan penjelasan saya di part 1 ini bisa difahami. Jika ada yang ingin ditanyakan, ayo kita diskusi di kolom komentar atau kalian bisa hubungi saya melalu WhatsApp. Terima kasih.

Bagikan artikel

Published inPemrograman

10 Comments

  1. Ia Ia

    It’s really useful for programmer and other too..
    Hope U’ll always sharing like this. 👍👍👍

    • admin admin

      Heu euh ke ku urang disering deui nu lainnya. Matakan kunjungi terus blog urg, dukung terus supaya urg terus berkarya.

  2. OM OM

    Bah mantap kali kang bro, ngebantu bgt kykx ni buat pra programmer 👍

    • admin admin

      Kalau untuk om, ngebantu tidak om?

      • OM OM

        Bantu bkin nambah kerutan di jidat kang bro 😁

        • admin admin

          Ditanyakan saja om yang tidak mengerti apa?

          • OM OM

            Semuanya wkwkwkw😂

          • admin admin

            Sini om main ke rumah, belajar bareng.

  3. OM OM

    Busett jauh yak…

    • admin admin

      Tuntutlah ilmu sampai ke negara sunda om

Tinggalkan Balasan

WhatsApp chat